5SpringBoot与数据访问

Posted 百里登风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5SpringBoot与数据访问相关的知识,希望对你有一定的参考价值。

 

 

 

 

 

新建一个工程项目

 

 

 

 

 

 

 

 

 

 

 开启本地的mysql数据库

 

 

 

 

 配置mysql连接信息

 

 

 

编写测试类

 

 

package com.atguigu.springboot06jdbc;

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;

@SpringBootTest
class SpringBoot06JdbcApplicationTests {

    @Autowired
    DataSource dataSource;

    @Test
    void contextLoads() throws SQLException {
        System.out.println(dataSource.getClass());
        Connection connection =dataSource.getConnection();
        System.out.println(connection);
        connection.close();
    }

}

 

 

运行测试类,打印连接信息

 

 

 

添加一个建表语句的sql文件

 

 

/*
Navicat MySQL Data Transfer

Source Server         : 本地
Source Server Version : 50528
Source Host           : 127.0.0.1:3306
Source Database       : restful_crud

Target Server Type    : MYSQL
Target Server Version : 50528
File Encoding         : 65001

Date: 2018-03-05 10:41:40
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `departmentName` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

 

 

修改配置文件

 

 

执行住程序

 

 

 

建表成功

 

 

 

操作数据库

 

 

package com.atguigu.springboot06jdbc.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

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

@Controller
public class HelloController {
     @Autowired
    JdbcTemplate jdbcTemplate;

     @ResponseBody
    @RequestMapping("/query")
    public Map<String,Object> map(){
         List<Map<String,Object>> list = jdbcTemplate.queryForList("select * from department");
         return list.get(0);
     }
}

 

 

 

插入一条数据到表中

 

 

重新运行主程序,这个时候表会被再创建一次,因此我们需要再次插入数据,然后访问地址   http://localhost:8081/query

 

整合druid数据源

首先引入依赖

 <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.8</version>
        </dependency>

 

 

修改配置文件,切换数据源

 

 

 

 

运行测试程序,可以看到切换到druid

 

 

 

 

 

 

 

 

     

 

以上是关于5SpringBoot与数据访问的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot系列5SpringBoot整合RabbitMQ

5SpringBoot+MyBaits+Maven+Idea+pagehelper分页插件

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

如何在片段中访问 SQLite 数据到 ListView

如何将 SQLite 数据库与片段结合起来?

从片段访问父活动的数据