简单业务逻辑顺序,了解一下?
数据层POJO
1.首先创建POJO对象,进行数据的封装**
class文件
注解:
 package com.xx.pojo;
 
 @Accessors(chain = true)  链式规则
 @Data      lombok
 @TableName("xx_xx_xxx")-->数据库表名
 //实现表与对象的关联
 //如果@TableName("user")中的(user)数据库中的表名称与类名一致(忽略大小写)
 //可以省略大小写
 public class xxxxx extends BasePojo{
 
 @TableId(type = IdType.AUTO)
 //但凡定义pojo实体对象中的属性类型必须使用包装类型.
 private String id;
 *****************
 *****************
 }
2.创建POJO映射文件Mapper
mapper 创建 使用 interface接口
需要继承:BaseMapper<xxxx>
 package com.xx.mapper;
 
 BaseMapper//因为我们用的是Mybatis plus  所以要继承BaseMapper
 <xxxxx>  // 泛型里  查看哪个表就定哪个
 public interface xxxMapper extends BaseMapper<xxxxx> {
 }
 
 //这里不加@mapper注解  是因为在启动类中加了总的  就不需要单独加了
业务层SERVICE
1.创建service接口及实现类
1) 先创建一个 interface接口 service(I)
 package com.xx.service;
 
 public interface xxxService {}
2)再创建 接口的class实现类 class(c)
 package com.xx.service;
 
 @Service
 public class xxxServiceImpl implements xxxService{
 
 @Autowired
     private xxxMapper xxxMapper;
     //这里Service调用的是mapper接口 
 }    
控制层CONTROLLER
1.创建Controller控制类
 package com.xx.controller;
 
 public class xxxController {
 
     @Autowired
     private xxxService xxxService;
     //控制层调用的是service业务层中的接口  xxxService 
 }    
OK 准备工作高兴,接下来开始 实战一下!!!!!!!!!!
通过itemCatId获取商品分类的名称
  //格式化名称
    findItemCatName : function(val,row){
        var name;
        $.ajax({
           type:"post",
       **  url:"/item/cat/queryItemName",
       **  data:{itemCatId:val},
           cache:true,      //缓存
           async:false,     //表示同步   默认的是异步的true
           dataType:"text", //表示返回值参数类型
           success:function(data){//返回商品分类名称
               name = data;
            }
        });
        return name;
 },
1.首先在我们的Controller层中
 package com.xx.controller;
 
 @RestController
 @RequestMapping("/item/cat/")  //请求业务名称
 public class ItemCatController {
 
     @Autowired
     private ItemCatService itemCatService;
 
 
     /**
      * 分析业务: 通过itemCatId获取商品分类的名称
      *  1.url地址: url: "/item/cat/queryItemName"
      *  2.参数: {itemCatId:val}
      *  3.返回值: 商品分类的名称  String(类型)
      */
     @RequestMapping("queryItemName")
     public String findItemCatName(Long itemCatId){
 
      //1.  // 返回什么?返回名  名哪里来?  Service业务层里查啊
       /*
        String name = itemCatService.findItemCatNameById(itemCatId);
        return name;
        */
      //2. // 写习惯了  怎么办呢?   直接搞啊
        return itemCatService.findItemCatNameById(itemCatId);//这里是根据id查明哈
        //下一步怎么做啊?   实现以下接口方法呗   去Service接口中搞一下
     }
 }
2.Service层中
1).首先在接口中定义方法(相当于给实现类定规矩,按照规矩去办事)
 package com.xx.service;
 
 public interface ItemCatService {
 
     //接口一实现(实现的是Controller中的方法哈  哈皮)
             // 下一步写谁啊   当然是实现类啊
         /*
         接口等于给你定了个规矩,规矩==方法
         要遵守这个规矩 也就是怎么去做
         当然就是去实现类中 去搞一下
          */
     String findItemCatNameById(Long itemCatId);
 }
2).实现类中去搞一下
 package com.xx.service;
 
 @Service
 public class ItemCatServiceImpl implements ItemCatService{
 
     @Autowired
     private ItemCatMapper itemCatMapper;
 
 
     //好嘞!这里我们遵守了一下接口中的规矩,也就是说重写了接口中的方法
     @Override
     public String findItemCatNameById(Long itemCatId) {
        //根据id查名   这里有mapper的支持 private ItemCatMapper itemCatMapper;
         /*我们要先查对象,然后通过对象在获取名
         selectById(itemCatId)  这里查对象,查完对象返回的是 对象itemCat
         通过这个对象 然后getName() 获取名
         */
         return itemCatMapper.selectById(itemCatId).getName();
     }
 }
简单的一个业务逻辑 基本OK!!!
业务逻辑顺序不唯一 自身感觉来!
                    
                
                
            
        
浙公网安备 33010602011771号