/dfjinxin-fast

Primary LanguageJavaOtherNOASSERTION

项目说明

  • dfjinxin-fast是一个轻量级的,前后端分离的Java快速开发平台,能快速开发项目并交付
  • 支持MySQL、Oracle、SQL Server、PostgreSQL等主流数据库

具有如下特点

  • 友好的代码结构及注释,便于阅读及二次开发
  • 实现前后端分离,通过token进行数据交互,前端再也不用关注后端技术
  • 灵活的权限控制,可控制到页面或按钮,满足绝大部分的权限需求
  • 页面交互使用Vue2.x,极大的提高了开发效率
  • 完善的代码生成机制,可在线生成entity、xml、dao、service、vue、sql代码,减少70%以上的开发任务
  • 引入quartz定时任务,可动态完成任务的添加、修改、删除、暂停、恢复及日志查看等功能
  • 引入API模板,根据token作为登录令牌,极大的方便了APP接口开发
  • 引入Hibernate Validator校验框架,轻松实现后端校验
  • 引入云存储服务,已支持:七牛云、阿里云、腾讯云等
  • 引入swagger文档支持,方便编写API接口文档

项目结构

dfjinxin-fast
├─db  项目SQL语句
│
├─common 公共模块
│  ├─aspect 系统日志
│  ├─exception 异常处理
│  ├─validator 后台校验
│  └─xss XSS过滤
│ 
├─config 配置信息
│ 
├─modules 功能模块
│  ├─app API接口模块(APP调用)
│  ├─job 定时任务模块
│  ├─oss 文件服务模块
│  └─sys 权限模块
│ 
├─dfjinxinApplication 项目启动类
│  
├──resources 
│  ├─mapper SQL对应的XML文件
│  └─static 静态资源


技术选型:

  • 核心框架:Spring Boot 2.1
  • 安全框架:Apache Shiro 1.4
  • 视图框架:Spring MVC 5.0
  • 持久层框架:MyBatis 3.3
  • 定时器:Quartz 2.3
  • 数据库连接池:Druid 1.0
  • 日志管理:SLF4J 1.7、Log4j
  • 页面交互:Vue2.x

后端部署

  • 通过git下载源码
  • idea、eclipse需安装lombok插件,不然会提示找不到entity的get set方法
  • 创建数据库dfjinxin_fast,数据库编码为UTF-8
  • 执行db/mysql.sql文件,初始化数据
  • 修改application-dev.yml,更新MySQL账号和密码
  • Eclipse、IDEA运行dfjinxinApplication.java,则可启动项目
  • Swagger路径:http://localhost:8080/dfjinxin-fast/swagger/index.html

前端部署

  • 本项目是前后端分离的,还需要部署前端,才能运行起来
  • 前端部署完毕,就可以访问项目了,账号:admin,密码:admin

数据返回规范类io.dfjinxin.common.adviceCommonResponseDataAdvice

  • 规范后台返回数据格式,返回数据必须是io.dfjinxin.common.utils.R,如果不按R格式返回,强制把返回的数据赋值R.ok().put(data, 返回数据类)返回, 这样规范数据格式,统一序列化,前台页面js也可以定义全局方法判断返回的code除了正常状态0以外的状态如果为异常、未登录等状态,可以统一做弹窗、跳转
  • 如有特殊情况不能返回R,可以在返回的方法、或者类(如果类中的所有类都不能返回R)中添加定义的annotation(io.dfjinxin.common.annotation.IgnoreResponseAdvice)