Java中的SSM框架指的什么?有哪些优点?
Java SSM框架即指Spring+SpringMVC+MyBatis的简称,框架集由Spring、MyBatis两个开源框架整合⽽成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项⽬的框架。
SSM框架教程:⿊马程序员最全SSM框架教程|Spring+SpringMVC+MyBatis全覆盖_SSM整合
相⽐于之前的SSH(Spring+Struts+Hibernate),SSM更加轻量化和灵活,是⽬前业界主流的Java Web开发框架。
Spring
Spring框架是⼀系列应⽤框架的核⼼,是整合其他应⽤框架的基础。也是Spring Boot的基础,Spring框架⾥⾯包含了Spring、SpringMVC、SrpingTest等。
Spring的优点总结:
1、⾮侵⼊式设计
Spring是⼀种⾮侵⼊式(non-invasive)框架,它可以使应⽤程序代码对框架的依赖最⼩化。
2、 ⽅便解耦、简化开发
Spring就是⼀个⼤⼯⼚,可以将所有对象的创建和依赖关系的维护⼯作都交给Spring容器管理,⼤⼤的降低了组件之间的耦合性。
3、⽀持AOP
Spring提供了对AOP的⽀持,它允许将⼀些通⽤任务,如安全、事务、⽇志等进⾏集中式处理,从⽽提⾼了程序的复⽤性。
4、⽀持声明式事务处理
只需要通过配置就可以完成对事务的管理,⽽⽆需⼿动编程。
5、⽅便程序的测试
Spring提供了对Junit4的⽀持,可以通过注解⽅便的测试Spring程序。
6、⽅便集成各种优秀框架
Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts、Hibernate、MyBatis
、Quartz等)的直接⽀持。
7、降低Java EE API的使⽤难度
Spring对Java EE开发中⾮常难⽤的⼀些API(如:JDBC、JavaMail等),都提供了封装,使这些API应⽤难度⼤⼤降低。
Spring MVC
spring ioc注解
SpringMVC有什么优点?SpringMVC是spring框架的⼀个模块,是基于MVC的轻量级Web框架。Spring是⽬前Web开发中的⼀个很重要的SpringMVC有什么优点?
部分。尤其在企业招聘相关开发者的时候,有⼤量的笔试和⾯试题⽬都与springMVC有关。
SpringMVC是⼀个典型教科书式的MVC框架,对于初学者⽽⾔是⾮常好的。其他优点可以概括为:
1、SpringMVC可以⽀持各种试图技术,⽽不仅仅局限于JSP;
2、与Spring框架集成(如IoC容器、AOP等);
3、清晰的⾓⾊分配:前端控制器(dispatcherServlet) , 请求到处理器映射(handler M apping), 处理器适配器(HandlerAdapter), 视图解析器(ViewResolver);
4、⽀持各种请求资源的映射策略;
SpringMVC的主要组件有什么?
(1)前端控制器 DispatcherServlet。接收请求、响应结果,相当于转发器,有了DispatcherServlet 就减少了其它组件之间的耦合度。(2)处理器映射器HandlerMapping。根据请求的URL来查Handler。
(3)处理器适配器HandlerAdapter。在编写Handler的时候要按照HandlerAdapter要求的规则去编写,这样适配器HandlerAdapter才可以正确的去执⾏Handler。
(4)处理器Handler。编写Handler时按照HandlerAdapter的要求去做,这样适配器才可以去正确执⾏Handler。
(5)视图解析器 ViewResolver。进⾏视图的解析,根据视图逻辑名解析成真正的视图(view)。
(6)视图View。View是⼀个接⼝, 它的实现类⽀持不同的视图类型(jsp,freemarker,pdf等等)。
MyBatis
MyBatis是⼀个基于Java的持久层框架,所谓的持久层框架就是专门⽤来将数据进⾏持久化的框架,也就是说将数据存储到数据库中的框架。学习并掌握Mybatis,⾸先就要了解Mybatis的核⼼组件。
Mybatis是半⾃动ORM映射⼯具,可以⾃定义⾼效的SQL语句提升数据库访问的效率。Mybatis是半⾃动的原因是因为我们要在Mapper⽂件中⼿写SQL语句,全⾃动的ORM(如Hibernate)是不需要⼿写SQL的。MyBatis可以⾃定义⾼效的SQL语句提升数据库访问的效率;⽽且MyBatis容易掌握,⽽Hibernate门槛较⾼。所以我们⽤Mybatis代替传统的Hibernate。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。