/Java-Scaffold

这是java后端开发项目的脚手架,:ghost:采用SpringBoot,集成了一些常用的组件。:jack_o_lantern:

Primary LanguageCSS

💾序言

  • 项目的基础框架:后端是SpringBoot,前端是layui,恳求各位大佬一个starfork吧!也希望收到指点,与帮助:heart_eyes:!!
  • 目前集成了如下组件(完善中~):
  1. MybatisPlus:根据表,自动生成代码,简单的sql语句不用写,不过复杂的多表查询还是要自己动手的。
  2. Druid数据源:安全可靠,还有可视化界面。
  3. Redis缓存:需要在本地开启redis
  4. Shiro安全框架:更轻量,更简单。
  5. Swagger接口文档:自动生成接口文档,有可视化界面。
  6. Async异步任务
  7. mail邮件任务
  8. Scheduling定时任务

📑项目结构

com
    └─daq
        └─springboot
            │  SpringbootApplication.java  #启动类
            │
            ├─config
            │      AutoCode.java        #MybatisPlus自动生成代码的类
            │      DruidConfig.java     #Druid数据源配置文件
            │      RedisConfig.java     #redis序列化配置模板
            │      ShiroConfig.java     #shiro配置文件
            │      SwaggerConfig.java   #Swagger配置文件
            │
            ├─notes     #笔记,记录一些配置的过程
            │      druid.md
            │      jedis.md
            │      JSR303.md
            │      mail.md
            │      mybatis-plus.md
            │      Shiro.md
            │      Swagger.md
            ├─realm  #shiro的认证和授权规则
            │      AccountRealm.java          
            │
            └─utils  #工具类
                    SendMailUtil.java #发送邮件的工具类

在这里插入图片描述

📔使用方法

  • 将项目导入IDEA,用sql文件建好数据库。 :gift_heart:
  • 🎄数据源修改:
  1. applicatiion-dev.yml中找到数据源配置,修改你的数据库名,以及用户名和密码。
  2. DruidConfig中的用户名和密码是后台管理界面的登录账号和密码。
  • 📠自动生成代码修改:
  1. AutoCode中修改生成代码的作者名字。
  2. 更改数据源。
  3. 配置代码生成路径。以及父包的名称。
  4. 在策略配置中,设置要映射的表名,可以一次填写多个,根据表名生成相应的代码。
  • 📜redis模板
  1. 这个可以直接使用
  • 📑Shiro登录认证配置
  1. ShiroConfig中设置与数据库对应的权限。
  2. 设置登录页面
  • 🏇Swagger配置
  1. 通过apiInfo()属性配置文档信息
  2. 配置docket以配置Swagger具体参数
  • 🎂异步任务
  1. SpringbootApplication类上加@EnableAsync注解,开启异步任务
  2. 然后有异步任务需要的业务层方法上加上 @Async注解就实现了异步任务
  • 🍧定时任务
  1. SpringbootApplication类上加@EnableScheduling注解,开启定时任务。
  2. 在业务层的方法上加上@Scheduled注解,在注解中写cron表达式即可。cron表达式怎么写?,百度即可,也有cron表达式在线生成工具。
  • 📭邮件任务
  1. 将QQ邮箱的 POP3/SMTP 服务开启,获取到邮箱秘钥
  2. yml配置文件中加入 用户名邮箱秘钥,服务器地址(有默认值) 以及加密的配置。
  3. 将方法封装在工具类中,使用的时候调用MailUtil的方法,写入消息和发送方。

☎️联系我

  • 如果有想要加入的童鞋,我们可以一起把这个脚手架做得更好,方便以后开发,提出你想要集成或者你觉得有意思的组件吧。欢迎Q我2829025551