工具内层
Util:工具
Util层就是用来存放工具类的地方,对于一些独立性很高的小功能,或者重复性很高的代码段,可以提取到Uitl层中
数据层
pojo:普通java对象
po:持久层,与数据库中的表相映射的java对象
vo:业务层之间数据传递的对象
pojo:简单无规则的java对象,只有属性+get+set+toString方法
常用注解:
@TableName("表名") //实现对象与表明的映射
@Data //实现get/set/toString方法
@TableId(type = IdType.AUTO) //设定主键自增
@TableField("name") //属性与字段的映射
@TableField(exist = false) //表示当前属性不是数据库的字段,但在项目中必须使用,这样在新增等
//使用bean的时候,mybatis-plus就会忽略这个,不会报错
entity:实体
严格和数据库相对应,数据库中有什么字段,entity包中的类就有什么字段
model:模型
一般里面存在的是实体类的模型,是用来给后端用的
view:视图
一般里面存放的时对实体类表的映射类(视图),使用来给前端使用的
数据访问层
DAO层:主要针对数据表的操作,可以理解为一张数据表,就有一个DAO层与指对应
mapper层:mapper层 = dao层,若使用mybatis框架,则其生成的类名字是mapper,其实就是dao层。
业务层
Service:接口
由于Dao里面存放了对表操作的方法,entity类中存放了映射表的POJO类。
Service的作用就是将Dao和entity类整合起来,进行再次封装,封装成一个方法,我们调用这个方法,就实现了对某个表的增删改查操作。
ServiceIpml:接口实现类
实现Service接口中的方法
控制层
Controller:负责请求转发,接受页面传递过来的参数,根据参数的不同,是调用不同的Service层方法进行操作,操作完成后将返回结果传递给页面。
常用注解
Pojo层
@TableName("user") //实现对象与数据库表名的映射
@Data //自动生成get/set/toString方法
@Accessors(chain = true) //开启链式加载
@TableId(type = IdType.AUTO) //主键自增
@TableField(exist = false) //该属性不存在
Controller层
@RestController //此注解的方法表示一个控制器,返回json
@CrossOrigin //解决跨域问题
@Autowired //完成对象间的依赖关系spring di;相当于底层帮你维护了两个对象间的关系:new
@RequestMapping("路径") //请求路径
@getMapping("") //查询
@PostMapping("") //新增
@PutMapping("") //修改
@DeleteMapping("") //删除
@ResponseBody //将对象转化为json串
@RequestBody //将json串转化为user对象
Service层
@Service
@Autowired
@Transactional //事务开启 ,或者是基于接口的或者是基于类的代理被创建
demo1:判断服务器是否调用成功
package com.jt.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
@Data
@Accessors(chain = true