水务局考试系统项目总结
1、项目结构
controller:写接口、request、response请求
enums:枚举,写提示信息、support 层获取参数等
generator:根据数据库表生成后台管理系统的接口
module:各个模块,比如实体类、request、response、serive和mapper(不知道干嘛的)
support:实现接口的业务逻辑处理,session相关的不写在里面
utils:工具类
pom.xml、application-dev.yml:配置文件,pom.xml配置jar包依赖,application-dev.yml配置端口、数据库、路径等等
2、数据处理流程
3、业务逻辑及数据库表结构
前台逻辑:
后台逻辑:
数据库表设计:
4、接触到的新知识
1、MyBatis-Plus
查询(.eq):多个“and”条件就直接eq就行了,“or”没用到过,网上方法试了不行
多表查询(.insql):
自定义sql:1、service文件中加方法,2、impl文件中实现方法传参Mapper层 ,4、Mapper.xml实现具体sql语句,参数由mapper层传入 。截图步骤链接:https://blog.csdn.net/weixin_43120613/article/details/102872278
2、判空!!!对查询出来的对象处理之前先判空。
除了常用判空方法外,这里有一种jdk8新增的判空类
Opational类:of():不能传NULL
ofNullable():可以传NULL
orElse():如果有值则返回该值,否则返回传递给它的参数值
Optional.ofNullable(student).map(obj-
>obj.getAge()).orElse(4);
3、判断两个逗号隔开的无序字符串是否相等
public static boolean isTrue(String a,String b){
//按逗号分隔,存入list
List<String> al = Arrays.asList(a.split(“,"