package com.rehome.mqttclienttemperature.controller;
import com.rehome.mqttclienttemperature.datasource.DataSource;
import com.rehome.mqttclienttemperature.dto.ResponseDto;
import com.rehome.mqttclienttemperature.utils.JdbcUtil;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
* 背景
* 现在的数据层的开发,大多会使用如MyBatis或JPA之类的开发工具。这些开发工具给我们的开发过程中带来了极大的便利。
* 但是在一些极端的场景下往往原生的jdbc方式操作数据库更灵活,性能更高。由于部分场景下MyBatis或JPA之类无法满足我的需求,所以我打算自己封装一套查数据库的工具类。
*
* 我们会用到fastjson,druid,mysql所以pom.xml增加依赖如下:
*
*
* com.alibaba
* fastjson
* 1.2.62
*
*
* com.alibaba
* druid
* 1.1.9
*
*
*
* mysql
* mysql-connector-java
*
*
*/
/**
*源码下载
* https://download.csdn.net/download/lxyoucan/85094574
*
* 参考
* https://github.com/freakchick/DBApi
*
*SpringBoot中封装jdbc工具类
* https://blog.csdn.net/lxyoucan/article/details/124042295
*
*
*/
@RestController
public class JdbcDemoController {
public static DataSource ds = new DataSource();
static {
//配置数据源
ds.setId("1");
ds.setName("mysql");
//ds.setUrl("jdbc:mysql://192.168.3.7:3306/appserver?useSSL=false&characterEncoding=UTF-8&serverTimezone=GMT%2B8");
ds.setUrl("jdbc:mysql://192.168.3.7:3306/appserver?useUnicode=true&characterEncoding=utf-8&useSSL=false&autoReconnect=true");
ds.setUsername("root");
ds.setPassword("Skyinno251,");
ds.setDriver("com.mysql.cj.jdbc.Driver");
}
/**
* 查询测试
* @return
*/
//@RequestMapping("/api/list")
public ResponseDto queryList()
{
String sql = "show tables";
ResponseDto responseDto = JdbcUtil.executeSql(ds,sql);
return responseDto;
}
}