柏竹 柏竹
首页
后端
前端
  • 应用推荐
关于
友链
  • 分类
  • 标签
  • 归档

柏竹

奋斗柏竹
首页
后端
前端
  • 应用推荐
关于
友链
  • 分类
  • 标签
  • 归档
  • Java基础

  • JavaWeb

  • 拓展技术

  • 框架技术

  • 数据库

  • 数据结构

  • Spring

  • SpringMVC

  • SpringBoot

    • SpringBoot
    • SpringBoot3基础特性
    • SpringBoot3核心原理
    • 框架整合

      • SpringBoot SpringMVC 整合
      • SpringBoot JDBC 整合
        • JDBC 应用
      • SpringBoot MyBatis 整合
      • SpringBoot tk-MyBatis 整合
      • SpringBoot Shiro 整合
      • SpringBoot Redis 整合
      • SpringBoot MyBatisPlus 整合
      • SpringBoot JSON 整合
      • SpringBoot Thymeleaf 整合
      • 整合WebSocket实现聊天功能
    • SpringBoot部署
  • SpringClound

  • Ruoyi-Vue-Plus

  • 后端
  • SpringBoot
  • 框架整合
Bozhu12
2023-06-10
目录

SpringBoot JDBC 整合

# JDBC 应用

SpringBoot 中默认自动配置有 HikariCP连接池(HikariCP连接池是目前最快的连接池)

  1. 引入依赖 pom.xml文件

    <!--jdbc-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    <!--测试-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
    </dependency>
    <!--mysql-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.46</version>
    </dependency>
    

    连接数据库 mysql的依赖 ,需要添加依赖 和 自行配置版本号。因 该依赖并非是 SpringBoot的相关组件

  2. 在SpringBoot的 全局属性(application.properties文件) 添加参数

    # 连接四大参数
    spring.datasource.url=jdbc:mysql://localhost:3306/库名
    spring.datasource.username=root
    spring.datasource.password=root
    # 可省略,SpringBoot自动推断
    #spring.datasource.driverClassName=com.mysql.jdbc.Driver
    #spring.datasource.hikari.idle-timeout=60000
    #spring.datasource.hikari.maximum-pool-size=30
    #spring.datasource.hikari.minimum-idle=10
    
  3. 创建 User实体类 (指定库中的表列属性信息)

    public class User implements Serializable {
        
        private Long id;
        // 用户名
        private String userName;
        // 密码
        private String password;
        // 姓名
        private String name;
        // 年龄
        private Integer age;
        // 性别,1男性,2女性
        private Integer sex;
        // 出生日期
        private Date birthday;
        
        //省略 get 、 set 和 toString
    }
    

    表列名 和 类属性名 一致,在这一说法的前提它们支持 驼峰命名 和 下划线命名 如: (库列名) user_name -> (类属性名)userName

  4. 创建 JdbcDao操作类

    @Repository
    public class JdbcDao {
        
        @Autowired
        private JdbcTemplate jdbcTemplate;
        
        public List<User> findAll() {
            // BeanPropertyRowMapper : 可将同名的字段赋值给属性 (支持驼峰、下划线)
            return jdbcTemplate.query("select * from tb_user" ,
                    new BeanPropertyRowMapper<>(User.class));
        }
        
    }
    
  5. 测试

    @RunWith(SpringRunner.class)
    @SpringBootTest
    public class JdbcDaoTest extends TestCase {
        
        @Autowired
        private JdbcDao jdbcDao;
        
        @Test
        public void testFindAll() {
            System.out.println("jdbcDao : " + jdbcDao);
            
            for (User user : jdbcDao.findAll()) {
                System.out.println(user);
            }
        }
        
    }
    
#JDBC#SQL

← SpringBoot SpringMVC 整合 SpringBoot MyBatis 整合→

最近更新
01
HTTPS自动续签
10-21
02
博客搭建-简化版(脚本)
10-20
03
ruoyi-vue-plus-部署篇
07-13
更多文章>
Theme by Vdoing | Copyright © 2019-2024 | 桂ICP备2022009417号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式