zoukankan      html  css  js  c++  java
  • Spring Boot使用SQL数据库

    一、自动配置

    在生产环境中,可以使用DataSource池进行自动配置。

    如果你使用spring-boot-starter-jdbc或spring-boot-starter-data-jpa 'starter POMs',你将会自动获取对tomcat-jdbc的依赖。

    通过spring-boot-starter-jdbc快速配置数据源,需要引入的maven依赖:

    <!--spring-boot-starter-jdbc自动配置-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jdbc</artifactId>
      <version>2.2.0.RELEASE</version>
    </dependency>
    <!--数据库驱动-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.18</version>
    </dependency>

    DataSource配置通过外部配置文件的spring.datasource.*属性控制。示例中,你可能会在application.properties中声明下面的片段:

    #数据库配置
    spring.datasource.url=jdbc:mysql://localhost:port/test
    spring.datasource.username=root
    spring.datasource.password=***
    spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver

    测试代码:

    @Autowired
        private DataSource dataSource;
    
        @Test
        void springDataSourceTest() {
            try {
                Connection connection = dataSource.getConnection();
                Statement statement = connection.createStatement();
                ResultSet resultSet = statement.executeQuery("select * from article1");
                while(resultSet.next()){
                    JSONObject rsJson = new JSONObject();
                    ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
                    for (int i = 0; i < resultSetMetaData.getColumnCount(); i++) {
                        String field = resultSetMetaData.getColumnLabel(i+1);
                        rsJson.put(field.toLowerCase(), resultSet.getObject(field));
                    }
                    System.out.println(rsJson);
                }
                statement.close();
                connection.close();
            } catch (Exception exception) {
                exception.printStackTrace();
            }
        }

    二、使用JdbcTemplate

    Spring的JdbcTemplate是被自动配置的,可以beans中通过@Autowire直接注入它们。

     测试代码:

    @Autowired
        private JdbcTemplate jdbcTemplate;
    
        @Test
        void springJdbcTemplateTest() {
            String sql = "select * from article1";
            List<Map<String, Object>> resultList = jdbcTemplate.queryForList(sql);
            System.out.println(resultList);
        }
  • 相关阅读:
    联系我们
    RCMTM _百度百科
    DotNetCore跨平台~Dockerfile的解释
    DotNetCore跨平台~服务总线_事件总线的重新设计
    DotNetCore跨平台~问题~NETCoreAPP, Version=v1.0' compatible with one of the target runtimes: 'win10-x64
    DotNetCore跨平台~EFCore连接Mysql的方式
    何时可以开启透明数据加密(TDE)?
    通信系统概论---传输介质
    struts2.x中因变量命名错误不被注入到值栈的问题
    【面向代码】学习 Deep Learning(三)Convolution Neural Network(CNN)
  • 原文地址:https://www.cnblogs.com/anthea/p/12836732.html
Copyright © 2011-2022 走看看