Spring Boot设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员再也不须要定义样板化的配置。html
Idea 2017 或 2018,直接安装便可,过低版本webapp模板不一样。java
tomcat8.0 解压缩便可,配置不配置tomcathome均可。mysql
mysql5.6web
maven3.5.0spring
Java安装jdk版本便可。sql
一、点击 New project,选择maven-webapp项目数据库
二、输入groupid和artifactid,随便输入便可。单机nextapache
三、若是没有maven选择便可,选好后单击 next浏览器
四、选择存放目录后,单击 Finish,开始建立项目tomcat
五、第一次根据你的网络不一样所需时间不一样,我第一次建立大概用了10多分钟。成功后以下图能看到web.xml部署描述文件。
一、建立好后结构以下图
src\main\ java com huatu qa controller dao entity service impl Application.java resources application.yml test
二、目录建立完毕选择,源码 Source root;资源 resource,test等资源目录
一、添加 spring-boot-starter-parent
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.1.RELEASE</version> </parent>
二、添加 “spring-boot-starter-web”、“mysql-connector-java”、“org.mybatis.spring.boot”
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency>
配置好后以下图:
一、点击 Run -> Edit Configurations
二、若是第一次配置须要选择“Templates” -> Local
主要设置tomcat位置,选择你的tomcat加压缩目录便可。
三、再次点击 Run -> Edit Configurations,点 + 号,选择里边的 Tomcat server -> local
四、选择 “Deployment” -> + 号,选择 “war exploded”,在开发阶段选择这个支持热部署。
五、保存后设置context
六、返回后确认下端口,以后点击“run”便可启动tomcat
七、运行成功后会自动打开浏览器看到以下图
八、下次再次运行能够直接点击 run -> tomcat
一、 在mysql中建立数据库及表,代表 user_info。字段两个 user_id、user_name。建立好后再增长几条数据
二、在 resources 目录添加 application.yml 配置数据源和映射文件路径
#application.yml spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/aaa?serverTimezone=GMT username: root password: 123456 mybatis: mapper-locations: classpath:dao/**/*Dao.xml
其中:
一、serverTimezone=GMT 是高版本mysql jar须要配置服务器时区
二、com.mysql.cj.jdbc.Driver 为高版本mysql使用的driver
在 entity 目录建立 UserInfo.java 类,内容以下
package com.huatu.qa.entity; public class UserInfo { private String userId; private String userName; 下边是get set方法
在 dao 目录中添加 UserInfoDao.java、UserInfoDao.xml
dao接口
package com.huatu.qa.dao; import com.huatu.qa.entity.UserInfo; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; import java.util.List; @Mapper @Repository public interface UserInfoDao { public List<UserInfo> selectAll(); }
mapper映射文件
<?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.huatu.qa.dao.UserInfoDao"> <resultMap id="AllColumnMap" type="com.huatu.qa.entity.UserInfo"> <result column="user_id" property="userId"/> <result column="user_name" property="userName"/> </resultMap> <select id="selectAll" resultMap="AllColumnMap"> SELECT * FROM user_info </select> </mapper>
修改pom.xml复制mapper映射文件到resource目录
<resources> <resource> <directory>src/main/java/com/huatu/qa</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources>
pom改完后以下,这里有两个选择
一、将mapper直接放到resource目录。mvn编译时会自动将xml复制到运行resource目录。但这样有一个问题就是若是你有多个配置,好比测试配置,生产配置每一个目录里都要有一份mapper文件。
二、就是放到dao或其它目录运行时在经过pom中的resource配置,复制到运行resource目录。以前就是这里忘记配置了,致使找不到mapper文件。
在 service 目录中建立一个接口 IUserInfoService.java
package com.huatu.qa.service; public interface IUserInfoService { Object selectAll(); }
在 service\impl 目录下建立一个实现类 UserInfoService.java
package com.huatu.qa.service.impl; import com.huatu.qa.dao.UserInfoDao; import com.huatu.qa.entity.UserInfo; import com.huatu.qa.service.IUserInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class UserInfoService implements IUserInfoService { @Autowired UserInfoDao userInforDao; @Override public Object selectAll() { List<UserInfo> list = userInforDao.selectAll(); return list; } }
在 controller 目录下建立 UserInfoController.java
package com.huatu.qa.controller; import com.huatu.qa.service.IUserInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @Controller public class UserInfoController { @Autowired IUserInfoService userInfoService; @RequestMapping("/users") @ResponseBody public Object selectAll(){ return userInfoService.selectAll(); } }
在 package 目录 建立 Application.java
package com.huatu.qa; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class Application extends SpringBootServletInitializer { public static void main(String[] args){ SpringApplication.run(Application.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(Application.class); } }
以上都完成后以下图
一、点击 run -> tomcat ,若是以前已经启动tomcat请重启。若是启动两个tomcat会报端口冲突,须要手动找到那个java进程kill掉。
二、浏览器输入接口地址 http://localhost:8080/htqa_war_exploded/users 会看到请求回来的数据
到此使用springboot搭建一个完整ssm项目框架,是否是愈来愈简单。
参考文档:
Springboot快速搭建SSM框架
https://blog.csdn.net/qq1131410679/article/details/79958441
快速搭建一个SSM框架demo
https://www.cnblogs.com/wchxj/p/8017449.html