这两天在研究springboot整合ssm工程,下面小编简单总结一下。
项目结构:
首先,idea开发工具已经集成了springboot,所以我们利用这点优势能够迅速的搭建一个springboot的ssm工程。
一、先搭建一个springboot工程。
1、在idea中新建一个工程,要选择Spring Initializer,这时候选择jdk版本,springboot要求jdk在1.7以上(包括1.7),tomcat在7以上(包括7),点击“next”。
此时,目录结构是这样的,SsmspringbootdemoApplication就是我们的入口文件。
2、此时,最简单的一个springboot的demo已经搭建完成了,我们可以简单测试一下,新建一个类取名为TestController。里面写一个简单的helloWorld。
-
@RestController
-
public
class TestController {
-
@RequestMapping(
"helloWorld")
-
public String testspringboot(){
-
return
"HelloWorld";
-
}
-
}
@RestController注解:标明这是一个控制器,并自动返回json数据。Spring4之后新加入的注解,原来返回json数据需要@Responsebody和@Controller的配合,相当于@Responsebody和@Controller的组合注解。
@RequestMapping注解:作用在处理器方法上时应用到控制器的所有处理器方法上(映射)。
3、启动项目,测试一下,在浏览器中输入http://127.0.0.1:8080/helloWorld。
4、接下来,我们先给idea配上maven,打开setting(快捷键Ctrl+Alt+S)
setting.xml文件中的有用信息如下:
-
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
-
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation=
"http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>D:\MavenRepository</localRepository>
-
<mirrors>
-
<mirror>
-
<id>alimaven
</id>
-
<name>aliyun maven
</name>
-
<url>
-
http://maven.aliyun.com/nexus/content/groups/public/
-
</url>
-
<mirrorOf>central
</mirrorOf>
-
</mirror>
-
</mirrors>
5、添加热部署配置,在pom.xml文件中添加依赖:
-
<dependency>
-
<groupId>org.springframework.boot
</groupId>
-
<artifactId>spring-boot-devtools
</artifactId>
-
<optional>true
</optional>
-
<scope>true
</scope>
-
</dependency>
-
<build>
-
<plugins>
-
<!-- 这是spring boot devtool plugin -->
-
<plugin>
-
<groupId>org.springframework.boot
</groupId>
-
<artifactId>spring-boot-maven-plugin
</artifactId>
-
<configuration>
-
<!--fork : 如果没有该项配置,肯呢个devtools不会起作用,即应用不会restart -->
-
<fork>true
</fork>
-
</configuration>
-
</plugin>
-
</plugins>
-
</build>
我们还需要设置一下,调出setting,勾选上编译里的自动编译选项。
然后 Shift+Ctrl+Alt+/,选择Registry:
ok了,重启一下项目,然后改一下类里面的内容,IDEA就会自动去make了。
二、整合mybatis。
1、将以下依赖项添加到您的pom.xml中,小编这里不是用的springboot自带的mybatis的依赖,而是引入的外部依赖。(Tips:区分是否是springboot自带的依赖,看看spring-boot的位置是在前面还是后面,这里的mybatis在前面,所以不是。不是的时候需要加入版本号)
-
<dependency>
-
<groupId>org.mybatis.spring.boot
</groupId>
-
<artifactId>mybatis-spring-boot-starter
</artifactId>
-
<version>1.2.1
</version>
-
</dependency>
2、配置数据源,在springboot指定的配置文件applicaionProperties中添加数据源的配置。注意,所有的外部配置都是在这个文件中进行配置的。另外,我们还需要配置mybatis的mapper的位置以及别名的配置,如下:
######################################################## ###datasource数据源 ######################################################## spring.datasource.url = jdbc:mysql:///mysql spring.datasource.username = root spring.datasource.password = 123456 spring.datasource.driverClassName = com.mysql.jdbc.Driver ###加载mybatis对应的mapper位置 mybatis.mapper-locations=classpath:mybatis/*.xml ###加载mybatis别名设置 mybatis.type-aliases-package=com.nancy.ssmspringbootdemo.pojo
3、创建数据库,在idea中可自行创建,我们新建数据库mysql,然后建立dog表,如下:
4、创建POJO类Dog:
public class Dog implements Serializable{ private Integer id; private String name; private String age; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } }
5、创建pojo对应的Mapper,DogMapper.xml,如下:
-
<?xml version="1.0" encoding="UTF-8"?>
-
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-
<mapper namespace="com.nancy.ssmspringbootdemo.mapper.DogMapper">
-
<resultMap id="getDog" type="Dog">
-
<result property="name" column="name"/>
-
<result property="age" column="age"/>
-
</resultMap>
-
<select id="getAllDog" resultType="Dog" resultMap="getDog" >
-
SELECT * FROM dog
-
</select>
-
</mapper>
6、创建DogMapper接口:
-
@Mapper
-
public interface DogMapper {
-
public List
<Dog> getAllDog();
-
}
7、创建service层:
-
@Service
-
public class DogServiceImpl implements DogService{
-
@Resource
-
private DogMapper dogMapper;
-
public List
<Dog> getAllDog(){
-
dogMapper.getAllDog();
-
}
-
}
8、创建controller层:
-
@RestController
-
public class DogController {
-
@Resource
-
private DogService dogService;
-
@RequestMapping("/getAllDog")
-
public List
<Dog> getAllDog(){
-
-
List
<Dog> dogs = dogService.getAllDog();
-
return dogs;
-
}
-
}
9、这时候,我们已经编写完了,直接在浏览器中输入地址,如果报错,再重启一下项目即可(目前不知道什么原因),输入地址,可以得到数据库中的信息,如下:
转自:https://blog.csdn.net/NancyWu_LuckyGirl/article/details/80064915