后台平台总结
Survive by day and develop by night.
talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.
happy for hardess to solve denpendies.
目录
概述
需求:
1.基本访问传值
2.SQL warpper封装
3.写mapper文件
4. 拼凑SQL等。CRUDPS,
5. log 部署打印
设计思路
实现思路分析
1.基本访问传值
基本访问方式不同:
四五种,其中get 方式可以使用路径变量使用。
1.基本传值:HttpServletRequest req
2.框架层:
单个基本变量用:@RequestParam(name = “column”, required = false) String sortColumn:
集合对象变量:@RequestBody List companyIds,
单个类对象: @RequestBody @Valid MembersAssessmentConfigDto dto
多个集合对象:@RequestBody Map<String, PsDeptCostDto> map
3.复杂组合传值用:
@RequestBody MembersAssessmentConfigDto dto,
@RequestParam(name = “column”, required = false) String sortColumn,
@RequestParam(name = “order”, defaultValue = “ASC”, required = false) String sortType,
HttpServletRequest req
)
2.SQL warpper封装
private QueryWrapper<EmpInfResLev> generateQueryWrapper(EmpInfResLev empInfResLevEntity, HttpServletRequest req,String sortColumn,boolean isAsc) {
// 使用QueryWrapper实现单表的组合查询条件自动拼接,String类型默认为模糊查询
String workingLevel = empInfResLevEntity.getWorkingLevel();
empInfResLevEntity.setWorkingLevel(null);
QueryWrapper<EmpInfResLev> queryWrapper = QueryGenerator.initQueryWrapper(empInfResLevEntity, req.getParameterMap()).orderBy(true,isAsc,sortColumn);
if(StringUtils.isNotEmpty(workingLevel)){
queryWrapper.eq("working_level",workingLevel);
}
queryWrapper.eq(!StringUtils.isEmpty(empInfResLevEntity.getPostLevel()),"post_level", empInfResLevEntity.getPostLevel());
// log.info("------------配装列表查询的条件------------------");
// 自定义高级查询
Map paramMap = req.getParameterMap();
return queryWrapper;
}
3.3.写mapper文件
传值,基本占位符,集合传参
4.拼凑SQL等。CRUDPS,
使用传值逻辑等使用debug 和查看SQL解决。
5.log 部署打印。
在这个过程一般在数据存储和,存储到mysql中,或者进行其他逻辑判断等。
拓展实现
性能参数测试:
参考资料和推荐阅读
暂无
欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!~