关于dao,service,web之间的关系

102 阅读2分钟

项目分为七个包:

com.lexed.controller

连接web页面操作

9dd7819d-1c79-41fa-ba2e-6fb2a473397e.png

这里我们例举BaseController.java

838c6e8b-c36c-4190-b07c-47cf745687b1.png

4ba9fdec-d1d8-4e1c-8dc4-7f87a77a2e93.png

通过对service的方法addBrand的调用,结果返回给自定义变量i

从而显示到控制台上

com.lexed.dao

这个是架构师写好的框架接口,我们将在com.lexed.dao.impl这个包中具体实现它们

dao包中是连接着数据库的操作

3a5566e0-08ff-4344-9ec3-d370bc5fa0bc.png

这里我们例举BrandDao.java

1b4075bf-d42f-4af4-a8a4-89baae6cda44.png

这是一个接口,由架构师定义,我们将会在下面的BrandDaoImpl.java中将addBrand(Brand brand)完善

com.lexed.dao.impl

我们将在这里实现上述com.lexed.dao.impl的接口

dao包中是连接着数据库的操作,在这个项目中,我们主要实现了对数据库的查询和插入

3a5566e0-08ff-4344-9ec3-d370bc5fa0bc.png

这里我们例举BrandDaoImpl.java

ce183f70-6c15-4882-9057-e5c8cd7a5730.png

我们从BrandDao.java中得到需要实现的方法addBrand(Brand brand)

上面说到dao中的方法是连接数据库的,所以我们定义sql语句,通过调用utils包中DBUtils.java中的方法update,插入tb_brand表中的新数据

将值返回给service

com.lexed.service

这个是架构师写好的框架接口,我们将在com.lexed.service.impl这个包中具体实现它们

service包中是连接数据库和web页面之间的脚本

ebc6a0e5-a6ea-4413-8c07-c88c2516ba17.png 这里我们例举BrandService.java

2918e0fa-06c9-40eb-a926-05ac922fd0f7.png

这是一个接口,由架构师定义,我们将会在下面的BrandServicempl.java中将addBrand(Brand brand)完善

com.lexed.service.impl

我们将在这里实现上述 com.lexed.service的接口

service包中是连接数据库和web页面之间的脚本,在这里,我们将dao包中的结果返回到controller包中

4e2ddadb-9397-4050-9cc2-42b35463fe33.png

这里我们例举BrandServiceImpl.java

2918e0fa-06c9-40eb-a926-05ac922fd0f7.png

我们从BrandDaoImpl中的addBrand(Brand brand)方法中获得了返回值

再将其返回给BaseController.java中,传给web页面

com.lexed.utils

我们在这里存入已经写好功能的类,用以在其他脚本中直接调用方法

4a565cee-e8e5-43bd-a8ea-0117da4bd969.png

com.lexed.pojo

我们在这里存入数据库的实体类,用来存取数据库中的数据

总结

我们容dao包中连接数据库,通过utils包中的脚本中已有的方法对数据库进行增删改查数据

dao包中的脚本会将操作的结果返回给“中间层”service包

service包再将结果返回给controller包,从而显示到web层