一、通過對比可以原始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查詢結果對比