1.引入依赖
引入数据库驱动、mybatis的starter、druid的starter
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.22</version>
</dependency>
2.配置yaml文件
配置数据库的配置和mybatis的路径
spring:
datasource:
url: jdbc:mysql://121.40.159.55:3308/personal?characterEncoding=UTF-8
username: root
password: 2696
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
mybatis:
# 配置Mapper.xml地址
mapper-locations: classpath:mappers/*.xml
# 配置实体地址
type-aliases-package: com.personaljava.dao
3.编写pojo实体类
这里使用了lombok
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
int id;
String username;
String password;
}
4.编写dao接口
这里使用@Repository注解,注入到spring容器中,后面的serviceimpl类可以使用@Autowired自动注入
@Repository
public interface UserMapper{
User getUserById(int id);
}
5.在resource中编写xml配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.personaljava.dao.UserMapper">
<select id="getUserById" resultType="com.personaljava.pojo.User">
select * from `user` where id = #{id};
</select>
</mapper>
6.编写service接口
public interface UserService {
User getUserById(int id);
}
7.编写serviceimpl类
这里使用@Service注解,注入到spring容器中
@Service
public class UserServiceImpl implements UserService {
@Autowired
UserMapper userMapper;
@Override
public User getUserById(int id) {
return userMapper.getUserById(id);
}
}
8.编写controller类
@Controller
public class LoginController {
@Autowired
UserServiceImpl userService ;
//查找用户
@GetMapping(value = "getUser/{id}")
@ResponseBody
public User get(@PathVariable int id){
return userService.getUserById(id);
}
}
9.在主启动类中添加@MapperScan注解,扫描dao包
@SpringBootApplication
@MapperScan("com.personaljava.dao")
public class PersonalJavaApplication {
public static void main(String[] args) {
SpringApplication.run(PersonalJavaApplication.class, args);
}
}