数据解决方案(SQL方案)

技术选型

在这里插入图片描述

数据源配置

  • Spring boot提供了3种内嵌的数据源对象供开发者选择

    • HiKaiCP:默认内置数据源对象

    • Tomcat提供DataSourse:HikariCP不可用的情况下,且在web环境中,将使用tomcat服务器配置的数据源对象

    • Commons DBCP:Hikari不可用,tomcat数据源也不可用,将使用dbcp数据源

      • 通用配置无法设置具体的数据源配置信息,仅提供基本的连接相关配置,如需配置,在下一级配置中设置具体设定

        设置HiKaiCp

        spring:
         datasource: 
          driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm db
          username: root
          password: root
          hikari:
           maximum-pool-size: 50
        

内置持久化解决方案一JdbcTemplate

  • 使用JdbcTemplate需要导入spring-boot-starter-jdbc

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    
  • dbcTemplate配置

    spring:
     jdbc:
      template:
       query-timeout: -1 #查询超时时间
       max-rows: 500 #最大行数
       fetch-size: -1 #批处理数量
    
    @SpringBootTest
    class Springboot15SqlApplicationTests {
        @Autowired
        private JdbcTemplate jdbcTemplate;
        @Test
        void testJdbc(){
            String sql = "select * from tbl book where id = 1";
            List<Book> query = jdbcTemplate.query(sql, new RowMapper<Book>() {
                @Override
                public Book mapRow(ResultSet rs, int rowNum) throws SOLException {
                    Book temp = new Book();
                    temp.setId(rs.getInt("id"));
                    temp.setName(rs.getString("name"));
                    temp.setType(rs .getString("type"));
                    temp.setDescription(rs.getString("description"));
                    return temp;
                }
            });
            System.out.println(query);
        }
    }
    

内嵌数据库

  • SpringBoot提供了3种内嵌数据库供开发者选择,提高开发测试效率

    • H2
    • HSQL
    • Derby
  • 内嵌数据库(H2)启动方式

    • 导入H2相关坐标

      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-jpa</artifactId>
      </dependency>
      <dependency>
          <groupId>com.h2database</groupId>
          <artifactId>h2</artifactId>
          <scope>runtime</scope>
      </dependency>
      
    • 设置当前项目为web工程,并配置H2管理控制台参数(设置访问数据源)

      server :
       port: 80
      spring:
       h2:
        console:
         path: /h2
         enabled: true
       
       #首次启动由于没有初始化H2,所以需要配置一下初始化过程,后续可注释	
       datasource: 
        url: jdbc:h2:~/test、
        driver-class-name: org.h2.Driver
        username: sa
        password: 123456
      
    • 访问用户名sa,默认密码123456

    • H2数据库控制台仅用于开发阶段,线上项目请务必关闭控制台功能

      server :
       port: 80
      spring:
       h2:
        console:
         path: /h2
         enabled: false
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值