SpringBoot整合JDBC

1.  创建一个新的Spring Boot项目或者使用现有的Spring Boot项目作为基础

2.  在项目的pom.xml文件中添加Spring Boot JDBC和MySQL依赖

打开pom.xml文件,添加以下依赖:


    org.springframework.boot
    spring-boot-starter-jdbc



    mysql
    mysql-connector-java

  3.  配置数据库连接

application.propertiesapplication.yml文件中,添加以下的数据库连接配置:

使用application.properties

spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
spring.datasource.username=root
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

使用application.yml

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mydatabase
    username: root
    password: your_password
    driver-class-name: com.mysql.cj.jdbc.Driver

请确保替换urlusernamepassworddriver-class-name与你实际使用的数据库配置一致。

4.  创建数据访问对象(DAO)

创建一个数据访问对象用于操作数据库。以下是一个简单的示例:

@Repository
public class UserDao {

    private final JdbcTemplate jdbcTemplate;

    public UserDao(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

    public void addUser(User user) {
        String sql = "INSERT INTO user (id, username, email) VALUES (?, ?, ?)";
        jdbcTemplate.update(sql, user.getId(), user.getUsername(), user.getEmail());
    }

    public User getUserById(int id) {
        String sql = "SELECT * FROM user WHERE id = ?";
        return jdbcTemplate.queryForObject(sql, new Object[]{id}, (rs, rowNum) ->
                new User(rs.getInt("id"), rs.getString("username"), rs.getString("email"))
        );
    }

    public List getAllUsers() {
        String sql = "SELECT * FROM user";
        return jdbcTemplate.query(sql, (rs, rowNum) ->
                new User(rs.getInt("id"), rs.getString("username"), rs.getString("email"))
        );
    }

    public void updateUser(User user) {
        String sql = "UPDATE user SET username = ?, email = ? WHERE id = ?";
        jdbcTemplate.update(sql, user.getUsername(), user.getEmail(), user.getId());
    }

    public void deleteUser(int id) {
        String sql = "DELETE FROM user WHERE id = ?";
        jdbcTemplate.update(sql, id);
    }

}

在这个例子里,我们使用JdbcTemplate执行数据库操作。JdbcTemplate是Spring提供的一个简单易用的JDBC访问模板。

5. 创建实体类

创建一个代表数据库中表结构的实体类。例如,创建一个User实体类:

public class User {

    private int id;
    private String username;
    private String email;

    // 省略构造函数和getter/setter方法

}

6.使用数据库操作

在你的业务逻辑中使用数据访问对象进行数据库操作。例如,在一个服务类中使用UserDao来执行数据库操作:

@Service
public class UserService {

    private final UserDao userDao;

    public UserService(UserDao userDao) {
        this.userDao = userDao;
    }

    public void addUser(User user) {
        userDao.addUser(user);
    }

    public User getUserById(int id) {
        return userDao.getUserById(id);
    }

    public List getAllUsers() {
        return userDao.getAllUsers();
    }

    public void updateUser(User user) {
        userDao.updateUser(user);
    }

    public void deleteUser(int id) {
        userDao.deleteUser(id);
   }
}

在这个例子中,我们注入了UserDao,并在相应的方法中调用UserDao的方法

你可能感兴趣的:(spring,boot,后端,java)