Spring框架本地数据库连接配置教程 (spring 连接本地数据库配置文件)

随着数据存储和处理成为越来越重要的一项任务,许多程序员都在探索如何在程序中使用数据库。Spring框架是一个强大的工具,可以帮助程序员实现本地数据库连接。在本文中,我们将提供一个Spring框架本地数据库连接配置的教程,让程序员能够快速开始使用数据库。

之一步:安装数据库

需要在本地安装一个数据库。这可以是MySQL、Oracle、PostgreSQL、SQLite等。我们选择一个已经安装好的MySQL数据库,如果还没有安装,可以根据自己的系统去安装一个适合的版本。

第二步:创建数据库和表

在MySQL数据库中,可以使用以下SQL命令来创建一个名为example的数据库:

“`

CREATE DATABASE example;

“`

然后,我们可以创建一个名为person的表:

“`

CREATE TABLE person (

id INT NOT NULL AUTO_INCREMENT,

name VARCHAR(255) NOT NULL,

age INT NOT NULL,

PRIMARY KEY (id)

);

“`

这个表有三个字段:id、name和age。id字段是自增的主键。

第三步:添加依赖项

要在Spring框架中使用MySQL数据库,需要添加相应的依赖项。在Maven项目中,可以在pom.xml文件中添加以下依赖项:

“`

org.springframework

spring-jdbc

5.2.8.RELEASE

mysql

mysql-connector-java

8.0.21

“`

这里,我们添加了org.springframework:spring-jdbc和mysql:mysql-connector-java两个依赖项。这些依赖项将使我们能够在Spring框架中使用JDBC连接MySQL数据库。

第四步:配置数据源

在Spring框架中,数据源是一个对象,它封装了与数据库的连接、数据源和事务的细节。我们需要配置Spring数据源,以便在应用程序中使用它。

可以在src/mn/resources目录下创建一个名为application.properties的文件,添加以下配置:

“`

spring.datasource.url=jdbc:mysql://localhost:3306/example

spring.datasource.username=root

spring.datasource.password=123456

“`

这里,我们配置了一个名为spring.datasource的数据源。它的URL指向我们本地的MySQL数据库,并提供了用户名和密码。根据实际情况,应该将这些值替换为自己的值。

第五步:创建实体类

在Spring框架中,一个实体类通常与一个数据库表相对应。我们需要创建一个名为Person的Java类,它将映射到我们之前创建的person表。

“`

package com.example.demo;

public class Person {

private Long id;

private String name;

private Integer age;

public Person(Long id, String name, Integer age) {

this.id = id;

this.name = name;

this.age = age;

}

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Integer getAge() {

return age;

}

public void setAge(Integer age) {

this.age = age;

}

}

“`

这个实体类有三个字段:id、name和age。它还有一个单独的构造函数和访问器方法来访问这些字段。

第六步:实现数据访问对象

在Spring框架中,可以使用JdbcTemplate来访问数据库。为了访问Person表,我们需要在src/mn/java/com/example/demo目录下创建一个名为PersonDao的Java类。这个类将包含与Person数据表交互的所有代码。

“`

package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.jdbc.core.JdbcTemplate;

import org.springframework.stereotype.Repository;

import java.util.List;

@Repository

public class PersonDao {

private JdbcTemplate jdbcTemplate;

@Autowired

public PersonDao(JdbcTemplate jdbcTemplate) {

this.jdbcTemplate = jdbcTemplate;

}

public List findAll() {

String sql = “SELECT id, name, age FROM person”;

return jdbcTemplate.query(sql, (rs, rowNum) ->

new Person(

rs.getLong(“id”),

rs.getString(“name”),

rs.getInt(“age”)

));

}

public void save(Person person) {

String sql = “INSERT INTO person (name, age) VALUES (?, ?)”;

jdbcTemplate.update(sql, person.getName(), person.getAge());

}

}

“`

在这个类中,我们定义了两个方法:findAll和save。findAll方法返回Person表中的所有行,save方法将一个Person对象插入到表中。这些方法都使用JdbcTemplate对象来执行SQL查询和更新。我们将这个类加上@Repository注解,Spring框架会自动将其注册为数据访问对象。

第七步:实现服务

在Spring框架中,服务(Service)是业务逻辑层,通常用于调用数据访问对象来操作数据库。我们需要在src/mn/java/com/example/demo目录下创建一个名为PersonService的Java类。

“`

package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

import java.util.List;

@Service

public class PersonService {

private final PersonDao personDao;

@Autowired

public PersonService(PersonDao personDao) {

this.personDao = personDao;

}

public List findAll() {

return personDao.findAll();

}

public void save(Person person) {

personDao.save(person);

}

}

“`

在这个类中,我们定义了两个方法:findAll和save。这些方法都是调用PersonDao中相应的方法以实现它们的功能。我们将这个类加上@Service注解,Spring框架会自动将其注册为服务对象。

第八步:实现控制器

在Spring框架中,控制器(Controller)是Web请求的入口点。我们需要在src/mn/java/com/example/demo目录下创建一个名为PersonController的Java类。

“`

package com.example.demo;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController

public class PersonController {

private final PersonService personService;

@Autowired

public PersonController(PersonService personService) {

this.personService = personService;

}

@GetMapping(“/person”)

public List findAll() {

return personService.findAll();

}

@PostMapping(“/person”)

public void save(@RequestBody Person person) {

personService.save(person);

}

}

“`

在这个类中,我们定义了两个方法:findAll和save。这些方法都是使用注解来定义它们的路由(URL)和相应的HTTP方法。findAll方法返回Person表中的所有行,save方法将一个Person对象插入到表中。

第九步:运行应用程序

我们编写了一个完整的Spring框架应用程序,并将其连接到了本地MySQL数据库。现在,我们可以启动应用程序并查看它是否成功连接到数据库。

可以在终端中运行以下命令来启动应用程序:

“`

mvn spring-boot:run

“`

然后,可以在Web浏览器中打开http://localhost:8080/person,它将返回一个空列表。现在,可以使用Postman或任何其他API测试工具来向http://localhost:8080/person发送POST请求,添加一个新的Person对象到数据库中。


数据运维技术 » Spring框架本地数据库连接配置教程 (spring 连接本地数据库配置文件)