Springboot整合ssm
SpringMvc和Mybatis简介
SpringMvc注解介绍
@Controller @Service @Repository //分别用于controller层,service层和mapper层。用来实例化类,存入spring容器中
@Autowired //从spring容器中取出对象
@RequestMapping //映射请求路径,相当于@webservlet
@ResponseBody //响应数据给客户端,相当关于response.getwriter().write()
Mybatis简介
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。
Mybatis是一个优秀的持久层的框架,它对jdbc的操作数据库过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理如加载驱动,创建Connection,创建statement,结果集封装等操作。
yml简介
1.yml介绍
①. SpringBoot支持两种格式的配置文件properties和yml格式。
②. YML文件格式是Spring Boot支持的一种JSON文件格式,相较于传统的Properties配置文件,YML文件以数据为核心,是一种更为直观且容易被电脑识别的数据序列化格式。
③. application.yml配置文件的工作原理和application.properties是一样的,只不过yaml格式配置文件看起来更简洁一些。
④. application.yml文件使用 “key:(空格)value”格式配置属性,使用缩进控制层级关系。
2.yml和properties
以配置spring数据源为例:
① properties配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/db
spring.datasource.username=root
spring.datasource.password=root
spring.datasource出现多次,代码看起来很臃肿
② yml配置
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver //:后面一定要加一个空格
url: jdbc:mysql://localhost:3306/db
username: root
password: root
相比properties配置,yml就显得简洁很多。
3.yml扩展
yml文件还支持复杂数据类型,例如数组和集合。
# 1.数组或单列集合类型
person:
hobby:
- play
- read
- sleep
# 或者
person:
hobby:
play,
read,
sleep
# 或者如下方式,推荐使用该方式,[]也可以省略
person:
hobby: [play,read,sleep]
# 2.map集合
person:
map:
k1: v1
k2: v2
# 或者使用行内方式
person:
map: {k1: v1,k2: v2}
工程搭建
主要有一下几个步骤:
1.导入依赖(mybatis,jdbc,mysql)
2.yml中加入数据源配置
3.编写mapper接口和方法
4.编写controller和方法
5.启动类上添加包扫描注解@MapperScan(“com.hp.mapper”)
导入相关依赖
在pom.xml中导入,导入成功后的pom.xml如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--继承的父项目的信息-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--当前项目的信息-->
<groupId>com.yz</groupId>
<artifactId>day14-springboot-ssm</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>day14-springboot-ssm</name>
<description>Demo project for Spring Boot</description>
<!--jdk版本-->
<properties>
<java.version>1.8</java.version>
</properties>
<!--jar包的依赖坐标-->
<dependencies>
<!--jdbc驱动,包含hikariCP-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!--web启动器,继承了spring和springmvc-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--mybatis-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
<!--测试环境-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<!--这里的build我删了-->
</project>
yml配置文件
这样我们的工程就搭建好了,spring数据源也配置成功了,接下来就可以对你的MySQL数据库进行操作了。
关于Springboot整合ssm的相关只是就介绍到这里了,如有其他问题,请各位大佬多多指点