最初SSM框架指的是spring、springMVC、mybatis。后面出现了springboot,它是在spring的基础上做了优化,使用的是注解,而不用去写XML配置文件,由于springboot更加简化,一般项目使用springboot来当启动类。SSM指:spring、springboot、mybatis
spring:
Spring反转管理整个项目中各个类之间的依赖关系(将new对象的权利交给Spring来管理),从而为各层之间的代码进行解耦合,用AOP(面向切面编程)的思想对项目的日志和事务进行处理,不仅能够提高效率,还可以增强代码的健壮性(在不惊动连接点原代码的情况下,就能给其增强功能)。但是Spring的导入依赖、创建各种配置文件都显得比较繁琐复杂,为了能把更多的精力放在逻辑代码上,同时又可以提高开发速度,可以整合springboot来简化开发
springboot:
如果直接使用Spring原生的SpringMvc框架来写程序,项目依赖的坐标需要在pom.xml中手动的添加,还要定义配置类ServletConfig和SprinMvcConfig,分别去配置web3.0和SpringMvc,然后设置相应的映射路径,才可以发请求。而SpringBoot可以通过插件spring-boot-maven-plugin的package将项目打成jar包,通过这个jar包来快速启动程序,不需要安装一系列的工具(如IDEA、tomcat等),就能直接运行程序。此外,SpringBoot程序通过起步依赖(starter)来简化了原始方式中的依赖配置,它还提供了许多辅助功能(如内置服务器tomcat等)。使用SpringBoot开发项目不再需要手动的添加项目所依赖的坐标,在创建项目时直接根据实际需求去勾选相关依赖即可,并且web配置类和SpringMvc的核心配置类都不需要手工的去写了,这极大的提高了开发人员的速度
springboot的优点:
能快速创建独立运行的Spring项目,还能整合其他主流的框架一起使用
使用嵌套式的Servlet容器,应用无需再打成WAR包
实现starters自动依赖与版本控制
有大量的自动配置来简化开发,提高开发人员的效率
无需再配置XML,无代码生成,开箱即用
生产环境的运行时应用监控
注:基于idea开发的SpringBoot程序需要确保联网且能够加载到程序框架结构。
mybatis:
MyBatis框架是用于开发持久层(dao)的技术。它解决了直接使用JDBC而产生过多硬编码导致系统灵活性不强的问题,且与JDBC相比,MyBatis免去了许多繁琐的操作。
要使用java代码来操作不同的关系型数据库,就需要遵循一套JDBC规范--JDBC是JavaEE的规范之一,也是一个接口。如果直接使用JDBC接口去操作数据库,不仅需要花费大量的时间与精力去处理加载操作数据库所需要的环境,还要与操作的数据库建立连接,且数据库连接成功后还需要创建statement对象去执行相应的sql语句等一系列的过程。
但MyBatis框架完全规避了上面所提及到的种种问题。它是对JDBC的封装,它免除了JDBC中一系列繁琐的操作,使开发者只需要专注于statement(sql语句)本身即可。