一、通過對比可以原始SSM搭建流程,spring boot省去了大量的配置,極大提高了開發者的效率。原始SSM框架搭建流程見博客:
https://www.cnblogs.com/No2-explorer/p/10993868.html
二、下面開展springboot的快速入門之旅吧!
1、創建數據庫和em_info(示例員工信息表格)
DROP TABLE IF EXISTS `em_info`;
CREATE TABLE `em_info` (
`em_id` INT(50) NOT NULL AUTO_INCREMENT COMMENT '員工ID',
`em_name` VARCHAR(100) NOT NULL COMMENT '員工姓名',
`em_sex` VARCHAR(30) NOT NULL COMMENT '性別',
`em_birthday` DATE NOT NULL COMMENT '出生日期',
`em_hiredate` DATE NOT NULL COMMENT '入職日期',
`em_salary` DOUBLE NOT NULL COMMENT '工資',
PRIMARY KEY (`em_id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8mb4;
INSERT INTO `em_info` VALUES (NULL,'小李飛刀','男','1999-2-8','2019-6-6','9999');
2、通過spring Initializr創建springboot



選擇web、Template Engines、SQL的選項見上圖右側
配置完成后,生成下圖相關文件

3、sources包下默認配置文件application.properties,可以根據個人喜好刪除application.properties后,更改application.yml配置文件

編寫yml配置:(主要是數據庫相關配置)
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://192.168.232.128:3306/ssm
username: root
password: root
4、
分別創建controller、service、mapper三層架構,編寫相關接口和實現類,pojo類。如下圖:

4.1controller層
/**
* Em_infoController class
*
* @author fzj
* @date 2019/6/9
*/
@RestController //@RestContller返回json格式不能用於頁面提取數據,如果需要返回數據給頁面則使用@Controller注釋
@RequestMapping("/em_info")
public class Em_infoController {
@Autowired
private IEm_infoService em_infoService;
@RequestMapping("/findAll.do")
public List<Em_info> findAll() throws Exception{
List<Em_info> em_infoList = em_infoService.findAll();
return em_infoList;
}
}
4.2、Service層沒有業務邏輯,直接接口和實現類調用方法即可。
public interface IEm_infoService {
List<Em_info> findAll() throws Exception;
}
service實現類
@Service
public class Em_infoServiceImpl implements IEm_infoService{
@Autowired
private IEm_infoMapper em_infoMapper;
@Override
public List<Em_info> findAll() throws Exception {
return em_infoMapper.findAll();
}
}
4.3、mapper層接口
public interface IEm_infoMapper {
@Select("select * from em_info")
List<Em_info> findAll() throws Exception;
}
4.4、Pojo類:
package com.fzj.springboot_ssm.pojo;
import org.springframework.context.annotation.Bean;
import java.util.Date;
/**
* Em_info class
*
* @author fzj
* @date 2019/6/9
*/
public class Em_info {
private Integer em_id;
private String em_name;
private String em_sex;
private Date em_birthday;
private Date em_hiredate;
private Double em_salary;
public Integer getEm_id() {
return em_id;
}
public void setEm_id(Integer em_id) {
this.em_id = em_id;
}
public String getEm_name() {
return em_name;
}
public void setEm_name(String em_name) {
this.em_name = em_name;
}
public String getEm_sex() {
return em_sex;
}
public void setEm_sex(String em_sex) {
this.em_sex = em_sex;
}
public Date getEm_birthday() {
return em_birthday;
}
public void setEm_birthday(Date em_birthday) {
this.em_birthday = em_birthday;
}
public Date getEm_hiredate() {
return em_hiredate;
}
public void setEm_hiredate(Date em_hiredate) {
this.em_hiredate = em_hiredate;
}
public Double getEm_salary() {
return em_salary;
}
public void setEm_salary(Double em_salary) {
this.em_salary = em_salary;
}
@Override
public String toString() {
return "Em_info{" +
"em_id=" + em_id +
", em_name='" + em_name + '\'' +
", em_sex='" + em_sex + '\'' +
", em_birthday=" + em_birthday +
", em_hiredate=" + em_hiredate +
", em_salary=" + em_salary +
'}';
}
}
5、最后一把尤其關鍵,需要在springbooot啟動類添加注解,否則springboot掃描不到mapper包

6、到此,項目已經配置完成!
點擊IDEA綠色小三角形,運行項目,瀏覽器輸入訪問路徑http://localhost:8080/em_info/findAll.do

7、
頁面就顯示json格式返回結果:

Sqlyog查詢結果對比

