repository和service 中写写有啥不一样?

来源:5-2 买家商品-service

am1262099042

2018-10-17

1 repository中写方法

http://img.mukewang.com/szimg/5bc7089f0001b39513780559.jpg


2 service 中写方法

http://img.mukewang.com/szimg/5bc708bf0001651010440661.jpg

能不能把1中的方法写在2中?,repository和service 中写写有啥不一样?


写回答

2回答

烟光云影

2018-10-17

repository是继承JPA的  service是你需要用的方法的接口。,

0
1
am1262099042
非常感谢!
2018-10-18
共1条回复

小草1434

2018-10-19

Repository 是数据访问对象的接口,在spring data jpa中可以直接继承JpaRepository,此时不需要写实现方类,该层相当于经典代码层中的Dao层(一般有对应的实现类),该方法相当于Mybatis中的Mapper(通常实现类采用xml配置和注解两种方式),或者JDBC中的Dao


Service 是服务层接口,在项目中通常情况下都会有对应的实现类以实现业务逻辑,通常该接口起到承上(controller)启下(repository)的作用,而且该层的实现类也是代码量和业务复杂度较高的。


如果是对于单个数据表或者单个对象的数据操作,Service和Repository 会极为相似,而且Service的实现类也只是简单的调用Repository申明或者父类已有的方法。但是对于多个数据表或者业务特殊的单个数据表的操作,通常Service会业务实现,多个对象组装,对象转换【pojo->dto,dto->pojo,pojo1的列表属性嵌套pojo2的对象列表】,特殊业务所需的字符串拼接,调用第三方类库的方法,数据库事务【包括分布式事务】,逻辑事务等

3
0

Spring Boot双版本(1.5/2.1) 打造企业级微信点餐系统

从0到1开发中小型企业级Java应用,并学会迭代重构技巧

6410 学习 · 5247 问题

查看课程