zoukankan      html  css  js  c++  java
  • 致自己第一次解决业务问题

    #### 目标: 数据库只有前16位码与后16位码字段,客户要求输入32位码作为查询条件 --已完成 ####

    思路: 在Controller层将客户端传过来的32位码参数拆分成前16位和后16位,并且根据数据库前 16位与后16位的字段名为传过来的参数加上前缀一并提交给Service层。 #### 问题:

    因为参数是封装到Map集合中的,所以需要调用map集合中的方法,获取前端传过来的参数,也就是map中的key

    (1) 调用Map的get方法获取到key,拿到key就相当于拿到了value,返回值为一个32位码的字符串

    (2) 调用String类型的subString方法,分两次将前16位和后16位码拆分出来

    (3) 调用map中的put方法,将前16位和后16位码放入map集合--(注意:前16位和后16位的key要跟实体类对应的属性名称一样)

    (4) 将参数传到service层--->Mapper层---->MapperXml文件--->Sql语句根据传过来的参数一一去数据库查,符合条件,返回数据。

    代码:

    /**
     * @Author LiYong
     * @Date 2021/3/17 9:26
     */
    @RestController
    @RequestMapping("dataquery/outcigarstat")
    public class ManualOutCigarController {
    
        @Autowired
        private ManualOutCigarService manualOutCigarService;
    
        @RequestMapping("/getManualOutCigar")
        public Result list(@RequestParam Map<String,Object> params){
            boolean biteCode = params.containsKey("32bitCode");
            //8020751413138523XTYC430301100158
            //8012644524792243 XTYC430301101394
            if (biteCode){
                String code  = (String) params.get("32bitCode");
                String firstLineValue = code.substring(0, 16);
                String secondLineValue = code.substring(16, 32);
                params.put("firstLine",firstLineValue);
                params.put("secondLine",secondLineValue);
            }
            PageUtils page = manualOutCigarService.queryOutCigar(params);
            return Result.ok().putPage(page);
        }
    
    }
  • 相关阅读:
    REST论文原文
    Rest无状态的一点理解(转)
    Kafka入门
    C#中@的用法总结(转)
    反应器(Reactor)用于事件多路分离和分派的体系结构模式
    数据库的脏读、不可重复读、幻读
    面向对象执行过程内存分析
    基于oracle的sql优化
    深入理解Spring中bean的生命周期
    Spring 框架原理
  • 原文地址:https://www.cnblogs.com/yong889/p/14552761.html
Copyright © 2011-2022 走看看