pom.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>com.example</groupId>
<artifactId>springboot_mybatis</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
application.properties:
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
pojo:
@Data
public class Users {
private int id;
private String username;
private String password;
}
controller:
import com.example.pojo.Users;
import com.example.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/findByName")
public String findByName(String username){
Users byName = null;
try {
byName = userService.findByName(username);
} catch (Exception e) {
e.printStackTrace();
}
return byName==null?"1111":byName.toString();
}
@RequestMapping("/insertUser")
public int insertUser(String username, String password) {
int i = 0;
try {
i = userService.insertUser(username, password);
} catch (Exception e) {
e.printStackTrace();
}
return i;
}
}
service:
public interface UserService {
public Users findByName(String username) throws Exception;
public int insertUser(String username,String password) throws Exception;
}
service.impl:
@Service
@Slf4j
@Transactional
public class UserServiceImpl implements UserService{
@Autowired
private UserMapper userMapper;
@Override
@Transactional(readOnly = true)
public Users findByName(String username) throws Exception{
Users byName = userMapper.findByName(username);
return byName;
}
@Override
public int insertUser(String username, String password) throws Exception{
int i = userMapper.insertUser(username, password);
int a = 1/0;
i = userMapper.insertUser(username, password);
return i;
}
}
mapper:
@Repository
@Mapper
public interface UserMapper {
@Select("Select * from users where username = #{username}")
public Users findByName(@Param("username") String username);
@Insert("insert into users(username,password) values (#{username},#{password})")
public int insertUser(@Param("username") String username,@Param("password") String password);
}