springboot连接数据库的三种方式

本文详细介绍了Spring Boot连接MySQL数据库的三种方式:1) 使用JdbcTemplate集成,展示了配置、DAO接口实现及测试;2) 与JPA集成,包括Entity注解、JpaRepository接口的使用及测试;3) 集成MyBatis,配置mapper目录、编写Mapper接口和XML文件,并进行测试。每种方式都提供了完整的代码示例。
摘要由CSDN通过智能技术生成

转载自原链接
使用数据库是开发应用的基本基础,那么,使用Spring Boot如何连接数据库呢?
前提,需要知道如何建一个Spring Boot项目,可参照:https://www.jianshu.com/p/d6e6c84cd190
一、准备工作:
1、建一个简单的数据库,名为springboot_db,在其下建一个表,名为t_author,脚本如下:
在这里插入图片描述
2、添加配置文件,可用使用yaml配置,即application.yml(与application.properties配置文件,没什么太大的区别)连接池的配置如下:

spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/springboot_db?useUnicode=true&characterEncoding=UTF-8&useSSL=false
driverClassName: com.mysql.jdbc.Driver
username: root
password: root
type: com.alibaba.druid.pool.DruidDataSource
3、需要建立与数据库对应的POJO类,代码如下:

public class Author {
private Long id;
private String realName;
private String nickName;

// SET和GET方法略

}
二、方式一:与JdbcTemplate集成
通过JdbcTemplate来访问数据库,Spring boot提供了如下的starter来支撑:

org.springframework.boot spring-boot-starter-jdbc 再引入Junit测试Starter: org.springframework.boot spring-boot-starter-test test DAO接口:

package com.guxf.dao;

import java.util.List;

import com.guxf.domain.Author;

public interface AuthorDao {

int add(Author author);

int update(Author author);

int delete(Long id);

Author findAuthor(Long id);

List<Author> findAuthorList();

}
实现Dao接口代码(此处只写Add,其他方法略):

package com.guxf.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Repository;

import com.guxf.dao.AuthorDao;
import com.guxf.domain.Author;

@Repository
public class AuthorDaoJdbcTemplateImpl implements AuthorDao{

@Autowired
private NamedParameterJdbcTemplate jdbcTemplate;

@Override
p
  • 5
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值