1. 程式人生 > >搭建spingboot並且使用通用mapper進行簡單查詢

搭建spingboot並且使用通用mapper進行簡單查詢

1  porm.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>cn.itcast.springboot111602</groupId>
<artifactId>springboot111602</artifactId>
<version>1.0.0-SNAPSHOT</version>


<!-- 所有的springboot的工程都以spring父工程為父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
</parent>

<dependencies>
<!--web啟動器-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!--jdbc的啟動器,預設使用HikariCP連線池-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!--不要忘記資料庫驅動,因為springboot不知道我們使用的什麼資料庫,這裡選擇mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!--mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!-- 通用mapper -->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies>
</project>

2  application.properties

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mybatis
spring.datasource.username=root
spring.datasource.password=123456


# mybatis 別名掃描
mybatis.type-aliases-package=cn.itcast.pojo
# mapper.xml檔案位置,如果沒有對映檔案,請註釋掉
#mybatis.mapper-locations=classpath:mappers/*.xml


因為在啟動器中已經添加了mysql的驅動,因此在配置檔案中無需再配

3  以下按順序分別是 controller service 通用mapper pojo實體類
  
@RestController
@RequestMapping("user")
public class UserController {

@Autowired
private UserService userService;

@GetMapping("{id}")
public User queryUserById(@PathVariable("id")Long id){
return this.userService.queryById(id);
}

}



@Service
public class UserService {

@Autowired
private UserMapper userMapper;

public User queryById(Long id){
return (User) this.userMapper.selectByPrimaryKey(id);
}

@Transactional
public void deleteById(Long id){
this.userMapper.deleteByPrimaryKey(id);
}
}

通用mapper
@Mapper
public interface UserMapper extends tk.mybatis.mapper.common.Mapper {

}


實體類
package cn.itcast.pojo;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

@Table(name = "tb_user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private String userName;

private String password;

private String name;

private Integer age;

private Integer sex;

private Date birthday;

private Date created;

private Date updated;

public Long getId() {
return id;
}

public void setId(Long id) {
this.id = id;
}

public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Integer getAge() {
return age;
}

public void setAge(Integer age) {
this.age = age;
}

public Integer getSex() {
return sex;
}

public void setSex(Integer sex) {
this.sex = sex;
}

public Date getBirthday() {
return birthday;
}

public void setBirthday(Date birthday) {
this.birthday = birthday;
}

public Date getCreated() {
return created;
}

public void setCreated(Date created) {
this.created = created;
}

public Date getUpdated() {
return updated;
}

public void setUpdated(Date updated) {
this.updated = updated;
}

@Override
public String toString() {
return "User{" +
"id=" + id +
", userName='" + userName + '\'' +
", password='" + password + '\'' +
", name='" + name + '\'' +
", age=" + age +
", sex=" + sex +
", birthday=" + birthday +
", created=" + created +
", updated=" + updated +
'}';
}
}