SpringBoot配置与使用
1.点击新建Project选择Spring Initializr
2.给包、项目起名字
3.在Web栏选择需要的依赖
4.在SQL栏选择需要的依赖
5.完成创建
static存放静态资源,比如:图片、静态页面等
templates存放动态资源,比如:jsp,thymeleaf
application.properties:springboot配置文件,一般不用这个,一般用application.yml文件代替
6.创建并编写application.yml文件
server:
port: 8089
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/bbbyxxx?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
username: root
password: root
7.可以编写代码测试了
EmpInfo.java
public class EmpInfo {
private Integer empNo;
private String ename;
private String job;
private Integer mgr;
private String hireDate;
private Double sal;
private Double comm;
private Integer deptNo;
public EmpInfo() {
}
public void setEmpNo(Integer empNo) {
this.empNo = empNo;
}
public void setEname(String ename) {
this.ename = ename;
}
public void setJob(String job) {
this.job = job;
}
public void setMgr(Integer mgr) {
this.mgr = mgr;
}
public void setHireDate(String hireDate) {
this.hireDate = hireDate;
}
public void setSal(Double sal) {
this.sal = sal;
}
public void setComm(Double comm) {
this.comm = comm;
}
public void setDeptNo(Integer deptNo) {
this.deptNo = deptNo;
}
public Integer getEmpNo() {
return empNo;
}
public String getEname() {
return ename;
}
public String getJob() {
return job;
}
public Integer getMgr() {
return mgr;
}
public String getHireDate() {
return hireDate;
}
public Double getSal() {
return sal;
}
public Double getComm() {
return comm;
}
public Integer getDeptNo() {
return deptNo;
}
}
EmpMapper.java
@Mapper //告诉ioc容器,产生此接口的代理对象
//@Repository //这块没别的意思,不让后面爆红
public interface EmpMapper {
@Select("SELECT * FROM EMP")
List<EmpInfo> findAllEmp();
@Insert("insert into emp values(null,#{ename},#{job},#{mgr},#{hireDate},#{sal},#{comm},#{deptNo})")
void saveEmp(EmpInfo ei);
}
EmpController.java
@Controller
@RequestMapping("/emp")
public class EmpController {
@Resource
private EmpBiz eb;
@RequestMapping("/findemp")
@ResponseBody //自动动转json字符串
public List<EmpInfo> findAllEmp(){
return eb.findAllEmp();
}
@RequestMapping("/findemp2")
public String findAllEmp2(HttpSession session){
session.setAttribute("EMPLIST",eb.findAllEmp());
return "index";
}
@RequestMapping("/save")
public String saveEmp(EmpInfo ei){
System.out.println(ei);
eb.saveEmp(ei);
return "redirect:/emp/findemp2";
}
}
导入依赖jar包
<dependency>
<groupId>org.springframework.boot</groupId><!--没有引入此动态模板,将会从static(静态资源)中搜索,引入了,则在templaters中搜索-->
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
index.html
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table border="1" width="80%" align="center">
<tr th:each="emp,j:${session.EMPLIST}">
<td th:text="${j.count}">序号</td>
<td th:text="${emp.ename}">姓名</td>
<td th:text="${emp.job}">职位</td>
<td th:text="${emp.mgr}">上司ID</td>
<td th:text="${emp.hireDate}">入职日期</td>
<td th:text="${emp.sal}">工资</td>
<td th:text="${emp.comm}">奖金</td>
<td th:text="${emp.deptNo}">部门编号</td>
</tr>
</table>
</body>
</html>
addr.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="emp/save" method="post">
姓名:<input type="text" name="ename"/><br/>
职位:<input type="text" name="job"/><br/>
上司:<input type="text" name="mgr"/><br/>
入职时间:<input type="date" name="hireDate"/><br/>
工资:<input type="text" name="sal"/><br/>
奖金:<input type="text" name="comm"/><br/>
部门:<input type="text" name="deptNo"/><br/>
<button>注册新员工</button>
</form>
</body>
</html>