SSM框架下各个层的解释说明.docx
- 文档编号:8674619
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:9
- 大小:18.73KB
SSM框架下各个层的解释说明.docx
《SSM框架下各个层的解释说明.docx》由会员分享,可在线阅读,更多相关《SSM框架下各个层的解释说明.docx(9页珍藏版)》请在冰豆网上搜索。
SSM框架下各个层的解释说明
Revisedasof23November2020
SSM框架下各个层的解释说明
持久层:
DAO层(mapper)
▪DAO层:
DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,
▪
▪DAO层的设计首先是设计DAO的接口,
▪然后在Spring的配置文件中定义此接口的实现类,
▪然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,
▪DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。
业务层:
Service层
▪Service层:
Service层主要负责业务模块的逻辑应用设计。
▪
▪首先设计接口,再设计其实现的类
▪接着再在Spring的配置文件中配置其实现的关联。
这样我们就可以在应用中调用Service接口来进行业务处理。
▪Service层的业务实现,具体要调用到已定义的DAO层的接口,
▪封装Service层的业务逻辑有利于通用的业务逻辑的独立性和重复利用性,程序显得非常简洁。
表现层:
Controller层(Handler层)
▪Controller层:
Controller层负责具体的业务模块流程的控制,
▪
▪
▪在此层里面要调用Service层的接口来控制业务流程,
▪控制的配置也同样是在Spring的配置文件里面进行,针对具体的业务流程,会有不同的控制器,我们具体的设计过程中可以将流程进行抽象归纳,设计出可以重复利用的子单元流程模块,这样不仅使程序结构变得清晰,也大大减少了代码量。
View层
▪View层此层与控制层结合比较紧密,需要二者结合起来协同工发。
View层主要负责前台jsp页面的表示.
各层联系
▪DAO层,Service层这两个层次都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程中尤其有优势
▪Controller,View层因为耦合度比较高,因而要结合在一起开发,但是也可以看作一个整体独立于前两个层进行开发。
这样,在层与层之前我们只需要知道接口的定义,调用接口即可完成所需要的逻辑单元应用,一切显得非常清晰简单。
▪Service逻辑层设计
▪Service层是建立在DAO层之上的,建立了DAO层后才可以建立Service层,而Service层又是在Controller层之下的,因而Service层应该既调用DAO层的接口,又要提供接口给Controller层的类来进行调用,它刚好处于一个中间层的位置。
每个模型都有一个Service接口,每个接口分别封装各自的业务处理方法。
SSM框架整合说明
整合Dao层
MyBatis配置文件?
▪配置别名:
用于批量扫描Pojo包
▪不需要配置mappers标签,但一定要保证文件与文件同名。
xmlversion=""encoding="UTF-8"
>
DOCTYPEconfigurationPUBLIC"-fromitems
wherelike'%${}%'
∙1
∙2
∙3
∙4
整合service层
▪目标:
让spring管理service接口。
定义service接口
▪一般在包下定义接口eg:
ItemsService
publicinterfaeItemsService{
publicList
}
∙1
∙2
∙3
定义ServiceImpl实现类
▪因为在中已经使用了mapper扫描器,这里可以直接通过注解的方式将itemsMapperCustom自动注入。
publicclassItemsServiceImplimplementsItemsService{
@Autowired
privateItemsMapperCustomitemsMapperCustom;
@Override
publicList
return(itemsQueryVo);
}
}
∙1
∙2
∙3
∙4
∙5
∙6
∙7
∙8
∙9
∙10
在spring容器配置service
▪在此文件中配置service。
∙1
事物控制(不够熟悉)
▪在中使用spring声明式事务控制方法
▪对mybatis操作数据库事物控制,spring使用jdbc的事物控制类是DataSourceTransactionManager
▪因为操作了数据库需要事物控制,所以需要配置数据源
▪定义了切面
xmlns: xsi=""xmlns: mvc="" xmlns: context="" xmlns: aop=""xmlns: tx="" xsi: schemaLocation=" "> --事务管理器对mybatis操作数据库事务控制,spring使用jdbc的事务控制类--> --数据源在dataSource在中已经配置--> --通知--> adviceid="txAdvice"transaction-manager="transactionManager"> attributes> --传播行为--> methodname="save*"propagation="REQUIRED"/> methodname="delete*"propagation="REQUIRED"/> methodname="insert*"propagation="REQUIRED"/> methodname="update*"propagation="REQUIRED"/> methodname="find*"propagation="SUPPORTS"read-only="true"/> methodname="get*"propagation="SUPPORTS"read-only="true"/> methodname="select*"propagation="SUPPORTS"read-only="true"/> attributes> advice> --aop--> config> advisoradvice-ref="txAdvice"pointcut="execution(*"/> config> ∙1 ∙2 ∙3 ∙4 ∙5 ∙6 ∙7 ∙8 ∙9 ∙10 ∙11 ∙12 ∙13 ∙14 ∙15 ∙16 ∙17 ∙18 ∙19 ∙20 ∙21 ∙22 ∙23 ∙24 ∙25 ∙26 ∙27 ∙28 ∙29 ∙30 ∙31 ∙32 ∙33 ∙34 ∙35 ∙36 ∙37 ∙38 ∙39 ∙40 整合springmvc ▪创建文件,配置处理器映射器、适配器、视图解析器 component-scanbase-package=""> component-scan> --使用mvc: annotation-driven加载注解映射器和注解适配器配置--> annotation-driven> annotation-driven> --视图解析器解析jsp解析,默认使用jstl标签,classpath下的得有jstl的包 --> --配置jsp路径的前缀--> --配置jsp路径的后缀--> ∙1 ∙2 ∙3 ∙4 ∙5 ∙6 ∙7 ∙8 ∙9 ∙10 ∙11 ∙12 ∙13 配置前端控制器 ▪在中加入如下内容 ▪contextConfigLocation配置springmvc加载的配置文件(配置处理器映射器、适配器等等) ▪ ▪ ▪如果不配置contextConfigLocation,默认加载的是/WEB-INF/servlet名称() ▪在url-pattern中? ▪ ▪填入*.action,表示访问以.action结尾由DispatcherServlet进行解析 ▪填入/,所有访问的地址都由DispatcherServlet进行解析,对于静态文件的解析需要配置不让DispatcherServlet进行解析,使用此种方式可以实现RESTful风格的url --springmvc前端控制器--> spring/ ∙1 ∙2 ∙3 ∙4 ∙5 ∙6 ∙7 ∙8 ∙9 ∙10 ∙11 ∙12 ∙13 ∙14 ∙15 编写Controller(Handler) @Congtroller @RequestMapping("/items")ction publicModelAndViewqueryItems(HttpServletRequestrequest)throwsException{ List ml
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SSM 框架 各个 解释 说明