1.Spring Boot
1.1 Spring Boot简介
Spring Boot 是 Spring 快速开发脚手架,通过约定大于配置的方式,快速构建和启动 spring 项目,所以Spring Boot目的是用来简化新Spring应用初始搭建以及开发过程。Spring Boot根据我们项目中所引入的依赖,比如引入了SpringMVC构件,就会判断出是要进行SpringMVC的web开发,就会把springmvc的相关基本配置自动配置好了,不需要我们在xml中配置。 比如配置前端控制器DispatcherServlet、配置视图解析器、配置静态资源访问、处理器映射器、处理器适配器等一系列组件。
1.2 Spring Boot的特征
1.Spring Boot继承了Spring优秀的基因,利用其开发Spring应用,开发工作将变得更为方便快捷。
2.Spring Boot极大地简化了Spring配置和编码。
3.可以创建独立的Spring应用程序,并基于其Maven或Gradle插件,可以创建可执行的JARs和WARs。
4.内嵌Tomcat或Jetty等Servlet容器,简化了软件项目部署。
5.提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置。
6.尽可能自动配置Spring容器。
7.提供准备好的特性,如指标、健康检查和外部化配置。
8.集成度较高,使用过程中不太容易了解底层。
1.3 Spring Boot的核心功能
1.独立运行的Spring项目。
2.内嵌Servlet容器。
3.提供starter简化Maven配置。
4.自动配置Spring。
5.准生产的应用监控。
6.无代码生成和xml配置。
1.4 Spring Boot的优点
1.快速构建项目。
2.对主流开发框架的无配置集成。
3.项目可独立运行,无须外部依赖Servlet容器。
4.提供运行时的应用监控。
5.极大地提高了开发、部署的效率。
6.与云计算的天然集成。
1.5 Spring Boot的缺点
1.版本迭代速度很快,一些模块改动很大。
2.由于不用自己做配置,报错时很难定位。
3.现成的解决方案比较少。
1.6 Spring Boot整合MyBatis
1.在pom.xml里添加相应的starter和依赖包,依赖的版本号version可以根据实际情况进行选择。
<!-- 关键代码 -->
<!-- MyBatis整合starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
<!-- MySQL数据库驱动包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
2.在application.properties(或.yml)添加相关配置。
#application.properties配置实例代码
#数据库连接信息
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name #关联数据库的名字
spring.datasource.uersname=your_uersname #你自己数据库的用户名
spring.datasource.password=your_password #你自己数据库的密码
spring.datasource.driver-class=com.mysql.jdbc.driver
#MyBatis映射文件路径
mybatis.mapper-locations=classpath:com/example/springbootdemo/dao/*.xml
#MyBatis自动扫描实体类的包
mybatis.type-aliases-package=com.example.springbootdemo.domain
#MyBatis配置文件路径(有必要可加)
#mybatis.config-location=classpath:config/mybatis-config.xml
3.MyBatis Mapper注册。
方法一:在待绑定接口dao类上用@Mapper进行注解。
@Mapper
public interface UserDao{
}
方法二:用@Repository注解待绑定接口,并在启动程序上添加@MapperScan指向待绑定接口所在的包。
@MapperScan("com.example.springbootdemo.dao")
public class DemoApplication{
}
2.MyBatis-plus
2.1 MyBatis-plus简介
MyBatisPlus,简称MP,是一个基于MyBatis的增强工具,它简化了MyBatis的开发流程,提供了许多实用的功能,例如自动生成代码、分页插件、性能分析插件等等,旨在简化开发、提高效率。
Mybatis-Plus是一款国人研发的开源框架,官网全中文,可以自行浏览:MybatisPlus官网
2.2 MyBatis-plus的特性
1.无侵入:在MyBatis的基础上只做增强不做改变,不会对现有的工程产生影响。
2.强大的CRUD操作:内置通用Mapper,少量配置即可实现单表CRUD操作。
3.支持Lambda:编写查询条件无需担心字段写错。
4.支持主键自动生成。
5.内置分页插件。
2.3 MyBatisPlus对比MyBatis的优势
1.MyBatisPlus封装了一些常用的操作,可以使用简单的代码实现一些复杂的操作,减少了代码量。
2.MyBatisPlus提供了一些常用的CRUD操作(添加数据(Create)、读取查询数据(Read)、修改数据(Update)、删除数据(Delete)),可以减少一些常规的操作代码。
3.MyBatisPlus提供了一些高级功能,比如:分页、逻辑删除、多表查询、乐观锁等等,这些功能可以大大提高开发效率。
4.MyBatisPlus提供了丰富的插件支持,可以方便地进行二级缓存、性能优化、分页插件等等的集成。
5.MyBatisPlus可以通过配置文件或注解的方式进行配置,开发者可以根据需要选择合适的配置方式。
2.4 MyBatisPlus项目创建
项目搭建以及BeseMapper方法演示详情:MyBatisPlus