写一个简单springboot项目,通过mybatis对mysql数据库进行curd,给出详细代码和注释,给出sql查询语句
时间: 2023-04-04 09:01:03 浏览: 92
好的,我可以回答这个问题。以下是一个简单的Spring Boot项目,使用MyBatis对MySQL数据库进行CRUD操作的示例代码和注释:
1. 首先,我们需要在pom.xml文件中添加以下依赖项:
```xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
```
2. 接下来,我们需要在application.properties文件中配置数据库连接信息:
```properties
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
3. 创建一个实体类User.java,用于映射数据库中的用户表:
```java
public class User {
private Long id;
private String name;
private Integer age;
// 省略getter和setter方法
}
```
4. 创建一个Mapper接口UserMapper.java,用于定义对用户表的CRUD操作:
```java
@Mapper
public interface UserMapper {
@Select("SELECT * FROM user WHERE id = #{id}")
User findById(Long id);
@Insert("INSERT INTO user(name, age) VALUES(#{name}, #{age})")
void insert(User user);
@Update("UPDATE user SET name=#{name}, age=#{age} WHERE id=#{id}")
void update(User user);
@Delete("DELETE FROM user WHERE id=#{id}")
void delete(Long id);
}
```
5. 创建一个Service类UserService.java,用于调用Mapper接口中的方法:
```java
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User findById(Long id) {
return userMapper.findById(id);
}
public void insert(User user) {
userMapper.insert(user);
}
public void update(User user) {
userMapper.update(user);
}
public void delete(Long id) {
userMapper.delete(id);
}
}
```
6. 最后,创建一个Controller类UserController.java,用于处理HTTP请求:
```java
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/{id}")
public User findById(@PathVariable Long id) {
return userService.findById(id);
}
@PostMapping("/")
public void insert(@RequestBody User user) {
userService.insert(user);
}
@PutMapping("/")
public void update(@RequestBody User user) {
userService.update(user);
}
@DeleteMapping("/{id}")
public void delete(@PathVariable Long id) {
userService.delete(id);
}
}
```
以上就是一个简单的Spring Boot项目,使用MyBatis对MySQL数据库进行CRUD操作的示例代码和注释。以下是查询用户表中所有数据的SQL语句:
```sql
SELECT * FROM user;
```