您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關SpringBoot 中怎么利用JdbcTemplate操作數據庫,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、準備數據庫
數據庫1:PiaoDB
數據庫2:PiaoDB2
二、添加依賴、配置
1、首先編輯 pom.xml 文件,添加相關依賴。
<!-- spring-jdbc --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!-- 數據庫驅動依賴 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- 數據庫連接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.9</version> </dependency>
注意:這里不要引入 Mybatis 的J ar 包,Mybatis 有自動裝配的數據源,需要排除。
2、編寫配置
# 數據源1 spring.datasource.one.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.one.url=jdbc:mysql://localhost:3306/PiaoDB?useUnicode=swater&characterEncoding=UTF-8 spring.datasource.one.username=root spring.datasource.one.password=root # 數據源2 spring.datasource.two.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.two.url=jdbc:mysql://localhost:3306/PiaoDB2?useUnicode=swater&characterEncoding=UTF-8 spring.datasource.two.username=root spring.datasource.two.password=root
三、編寫配置類
1、配置數據源
創建 DataSourceConfig 配置數據源,根據 application.properties 中的配置生成兩個數據源:dsOne 和 dsTwo 作為 Bean 的名字加入到 Bean 容器里面。通過@ConfigurationProperties 注解配置文件來創建不同的 DataSource 對象。
@Configuration public class DataSourceConfig { @Bean @ConfigurationProperties("spring.datasource.one") DataSource dsOne() { return DruidDataSourceBuilder.create().build(); } @Bean @ConfigurationProperties("spring.datasource.two") DataSource dsTwo() { return DruidDataSourceBuilder.create().build(); } }
2、配置 JdbcTemplate
創建 JdbcTemplate 兩個不同的實例,配置不同的數據源。通過 @Qualifier 注解注入不同的數據源。
@Configuration public class JdbcTemplateConfig { @Bean JdbcTemplate jdbcTemplateOne(@Qualifier("dsOne") DataSource dataSource) { return new JdbcTemplate(dataSource); } @Bean JdbcTemplate jdbcTemplateTwo(@Qualifier("dsTwo") DataSource dataSource) { return new JdbcTemplate(dataSource); } }
四、編寫代碼
1、創建實體類
@Data @Accessors(chain = true) public class Demo { private Integer id; private String name; private Integer num; private Date createTime; }
2、編寫Controller
@RestController @RequestMapping("/demo") public class DemoController { @Resource(name = "jdbcTemplateOne") JdbcTemplate jdbcTemplateOne; @Resource(name = "jdbcTemplateTwo") JdbcTemplate jdbcTemplateTwo; @RequestMapping("") public void test(){ List<Demo> demo1 = jdbcTemplateOne.query("SELECT * FROM t_demo", new BeanPropertyRowMapper<>(Demo.class)); List<Demo> demo2 = jdbcTemplateTwo.query("SELECT * FROM t_demo", new BeanPropertyRowMapper<>(Demo.class)); System.out.println("數據庫1:" + demo1); System.out.println("數據庫2:" + demo2); } }
如果想使用 @Autowired 注入需要配合 @Qualifier() 使用,例子如下:
@RestController @RequestMapping("/demo") public class DemoController { @Autowired @Qualifier("jdbcTemplateTwo") JdbcTemplate jdbcTemplateTwo; }
五、驗證結果
我們請求接口:http://127.0.0.1:8086/demo
上述就是小編為大家分享的SpringBoot 中怎么利用JdbcTemplate操作數據庫了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。