一步步教你使用boot读写mysql数据(boot读写mysql)

一步步教你使用Boot读写MySQL数据

如果你是一位开发人员,并且使用Spring Boot来构建应用程序,你经常需要与数据库交互。MySQL是一个流行的关系型数据库管理系统,绝大部分开发人员都会使用它来存储和管理数据。那么,如何使用Spring Boot读写MySQL数据呢?本文将为你提供详细的步骤。

第一步:创建Spring Boot工程

你需要创建一个Spring Boot工程,可以使用Maven或Gradle构建。在pom.xml或build.gradle文件中,添加以下依赖项:

“`xml

org.springframework.boot

spring-boot-starter-data-jpa

mysql

mysql-connector-java


```groovy
// build.gradle
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'mysql:mysql-connector-java'
}

这些依赖项使你能够使用Spring Data JPA来访问MySQL数据库。

第二步:创建实体类

在开始进行数据库操作之前,你需要创建一个实体类来映射数据库中的表。例如,假设你在MySQL数据库中有一个名为“user”的表,它有以下结构:

| Field | Type | Null | Key | Extra |

| ——| —–| —–| —-| ——|

| id | int(11) | NO | PRI | auto_increment |

| name | varchar(255) | YES | | |

| age | int(11) | YES | | |

| address | varchar(255) | YES | | |

那么,你需要创建一个对应的实体类:

“`java

@Entity

@Table(name = “user”)

public class User {

@Id

@GeneratedValue(strategy = GenerationType.IDENTITY)

private Long id;

private String name;

private Integer age;

private String address;

// 省略getter/setter方法

}


这里使用了JPA注解来配置实体类,表明实体类与表“user”相对应,同时指定了id字段是自动增长的主键。

第三步:配置应用程序

接下来,你需要在应用程序中配置JPA和MySQL的连接信息。在application.properties或application.yml中添加以下配置:

```yaml
# application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/test
username: root
password: root
jpa:
hibernate:
ddl-auto: update

在这个配置中,指定了数据库的连接信息,包括URL、用户名和密码。然后,使用JPA的“ddl-auto”属性来控制数据库模式的创建和更新。

第四步:创建数据访问对象

在Spring Boot中,你可以使用Spring Data JPA来定义数据访问对象(DAO)。数据访问对象是一个接口,Spring Data JPA将为你创建实现。在dao包中创建一个UserRepository接口:

“`java

@Repository

public interface UserRepository extends JpaRepository {

List findByName(String name);

List findByAgeGreaterThan(int age);

}


这个接口继承了JpaRepository,其中User是实体类的类名,Long是主键的类型。你还可以在接口中添加一些自定义方法,例如,按名称查找用户和按年龄查找用户。

第五步:测试代码

让我们在JUnit测试中编写一些代码来测试使用Spring Boot读写MySQL数据的功能。在test包中创建一个名为UserRepositoryTest的测试类:

```java
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserRepositoryTest {
@Autowired
private UserRepository userRepository;
@Test
public void testSave() {
User user = new User();
user.setName("张三");
user.setAge(18);
user.setAddress("北京市");
userRepository.save(user);
assertNotNull(user.getId());
}
@Test
public void testFindByName() {
List userList = userRepository.findByName("张三");
assertEquals(userList.size(), 1);
}
@Test
public void testFindByAgeGreaterThan() {
List userList = userRepository.findByAgeGreaterThan(18);
assertEquals(userList.size(), 0);
}
}

这里使用了Spring Boot的自动配置,测试类继承了SpringJUnit4ClassRunner,这样就启用了Spring的应用程序上下文,并且在测试中注入了UserRepository接口。在测试方法中,我们先保存了一个用户,然后使用findByName和findByAgeGreaterThan方法查询用户。

运行测试用例,你应该能看到输出。

至此,你已经学会了使用Spring Boot读写MySQL数据的基本知识,可以在应用程序中使用它来存储和管理数据。祝你好运!


数据运维技术 » 一步步教你使用boot读写mysql数据(boot读写mysql)