springboot是如何操作mysql
时间: 2023-11-16 19:02:40 浏览: 72
Spring Boot 提供了与 MySQL 数据库交互的多种方式,下面是其中的两种方式:
1. 使用 Spring Data JPA
Spring Data JPA 是 Spring Framework 的一个子项目,它提供了一种使用 JPA 技术访问数据存储的方法。JPA 是 Java Persistence API 的缩写,它是 Java EE 规范中的一个 ORM(Object-Relational Mapping)框架,可以将 Java 对象映射到关系型数据库中的表。
使用 Spring Data JPA 操作 MySQL 数据库的步骤如下:
1. 添加依赖
在 pom.xml 文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
```
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=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
3. 创建实体类
创建一个实体类,使用 @Entity 注解标记,并使用 @Id 注解标记主键字段。
```java
@Entity
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
private Integer age;
// 省略 getter 和 setter 方法
}
```
4. 创建 Repository 接口
创建一个继承 JpaRepository 接口的 Repository 接口,用于对实体类进行增删改查操作。
```java
public interface UserRepository extends JpaRepository<User, Long> {
}
```
5. 使用 Repository 接口进行操作
在代码中使用 UserRepository 接口进行数据操作,例如:
```java
@Autowired
private UserRepository userRepository;
public void saveUser(User user) {
userRepository.save(user);
}
public User getUserById(Long id) {
return userRepository.findById(id).orElse(null);
}
```
2. 使用 JDBC
Spring Boot 还提供了使用 JDBC 直接访问 MySQL 数据库的方式。使用 JDBC 操作 MySQL 数据库的步骤如下:
1. 添加依赖
在 pom.xml 文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
```
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=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
3. 使用 JdbcTemplate 进行操作
JdbcTemplate 是 Spring Framework 提供的一个 JDBC 操作工具类,它封装了 JDBC 的操作,简化了 JDBC 的使用。在代码中使用 JdbcTemplate 进行数据操作,例如:
```java
@Autowired
private JdbcTemplate jdbcTemplate;
public void saveUser(User user) {
jdbcTemplate.update("insert into user(name, age) values(?, ?)", user.getName(), user.getAge());
}
public User getUserById(Long id) {
return jdbcTemplate.queryForObject("select * from user where id = ?", new Object[] { id }, new BeanPropertyRowMapper<>(User.class));
}
```
阅读全文