表
CREATE TABLE IF NOT EXISTS user (
`id` INT(10) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NULL DEFAULT NULL ,
`age` INT(2) NOT NULL ,
PRIMARY KEY (id)
)
pom文件
<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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
<groupId>com.yxl</groupId>
<artifactId>spring-boot-02</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>spring-boot-02</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<!--web应用基本环境配置 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 配置MySQL数据库 8.0版本 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
<!-- <scope>test</scope> -->
</dependency>
</dependencies>
<build>
<plugins>
<!-- spring-boot-maven-plugin插件就是打包spring boot应用的 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.4.RELEASE</version>
</plugin>
</plugins>
</build>
</project>
entity/User
package com.yxl.entity;
public class User {
private int id;
private String name;
private int age;
public int getId() { return id; }
public void setId(int id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public int getAge() { return age; }
public void setAge(int age) { this.age = age; }
}
dao/UserDao
package com.yxl.dao;
import java.util.List;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Results;
import com.yxl.entity.User;
@Mapper //1
public interface UserDao {
@Results({ //2
@Result(property = "id", column = "id"), //2
@Result(property = "name", column = "name"),
@Result(property = "age", column = "age")
})
@Select("SELECT * FROM user WHERE age = #{age}") //3
List<User> get(int age);
@Insert("INSERT INTO user(name, age) VALUES (#{name}, #{age})") //3
void insert(User user);
}
service/UserService
package com.yxl.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yxl.dao.UserDao;
import com.yxl.entity.User;
import java.util.List;
@Service //声明成一个spring bean
public class UserService {
@Autowired //连接到UserDao Bean
private UserDao userDao;
public String show() {
return "Hello World!";
}
public List<User> showDao(int age) {
return userDao.get(age);
}
public String insert(String name, int age) { //插入一条记录
User user = new User();
user.setName(name);
user.setAge(age);
userDao.insert(user);
return "Insert ( \""+name+"\", age"+age+") OK!";
}
}
controller/UserController
package com.yxl;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@RequestMapping("/hello")
public String h(){
return "hello";
}
}
src/main/resources/application.properties
server.port=8888
spring.datasource.driver-class-name= com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT&zeroDateTimeBehavior=CONVERT_TO_NULL
spring.datasource.username=root
spring.datasource.password=root
app 启动类
package com.yxl;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan(basePackages = "com.yxl.dao") //扫描该包下的文件
public class App
{
public static void main( String[] args )
{
SpringApplication.run(App.class,args);
}
}
测试
来源:oschina
链接:https://my.oschina.net/u/4157150/blog/3274744