如何用Jfinal連接多個(gè)數(shù)據(jù)庫(kù)
ActiveRecordPlugin可以支持多個(gè)數(shù)據(jù)庫(kù),多個(gè)語言,我們只需要添加多個(gè)ActiveRecordPlugin,分別配置即可。
Jfinal連接多個(gè)數(shù)據(jù)庫(kù)
1. 添加mssql-jdbc-7.4.1.jar和mysql-connector-java-8.0.12.jar分別用于連接sqlserver及mysql數(shù)據(jù)庫(kù)。
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc --> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>7.4.1.jre8</version> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.12</version> </dependency>
2. 添加數(shù)據(jù)庫(kù)配置文件
datasource.properties:
driver = com.microsoft.sqlserver.jdbc.SQLServerDriver jdbcUrl = jdbc:sqlserver://localhost;Database=test user = sa password = 123456 devMode = true jdbcUrl2 = jdbc:mysql://localhost/test?characterEncoding=utf-8&useSSL=false&serverTimezone=GMT user2 = root password2 =123456 devMode2 =true
3. 配置configPlugin
public void configPlugin(Plugins me) { // 連接sqlserver數(shù)據(jù)庫(kù) C3p0Plugin c3p0Plugin = new C3p0Plugin(getProperty("jdbcUrl"), getProperty("user"), getProperty("password"), getProperty("driver")); me.add(c3p0Plugin); // 給數(shù)據(jù)源添加別名sqlserver ActiveRecordPlugin arp = new ActiveRecordPlugin("sqlserver",c3p0Plugin); // 添加sqlserver方言 SqlServer方言在jfinal2.0以上才引入 arp.setDialect(new SqlServerDialect()); me.add(arp); // 連接mysql數(shù)據(jù)庫(kù) C3p0Plugin c3p0Plugin2 = new C3p0Plugin(getProperty("jdbcUrl2"), getProperty("user2"), getProperty("password2")); me.add(c3p0Plugin2); // 給數(shù)據(jù)源添加別名mysql ActiveRecordPlugin arp2 = new ActiveRecordPlugin("mysql",c3p0Plugin2); // 添加mysql方言 arp2.setDialect(new MysqlDialect()); me.add(arp2); }
JFinal 的方言僅用于 Model 的 save()、update()、delete()等等由框架生成 sql 的方法,而開發(fā)者自由傳入的 sql 框架并不會(huì)干預(yù),這通常是在使用 find()、query()、paginate() 之類需要傳入 sql 的方法。
JFinal 默認(rèn)方言為mysql的,如果不配置方言用Model中的方法會(huì)出莫名其妙的問題。
ActiveRecordPlugin提供了MysqlDialect、SqlServerDialect、OracleDialect、Sqlite3Dialect、AnsiSqlDialect實(shí)現(xiàn)類,來支持mysql、sqlserver、oracle、sqlite3、ANSI等數(shù)據(jù)庫(kù)的支持。
4. 使用
// 查詢sqlserver的test表 List<Record> rs = Db.use("sqlserver").find("select * from test"); // 查詢mysql的test表 List<Record> rs1 = Db.use("mysql").find("select * from test");
以上就是如何用Jfinal連接多個(gè)數(shù)據(jù)庫(kù)的詳細(xì)內(nèi)容,更多關(guān)于Jfinal連接多個(gè)數(shù)據(jù)庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- JFINAL+Ajax傳參 array 數(shù)組方法 獲取request中數(shù)組操作
- JavaWeb如何實(shí)現(xiàn)統(tǒng)一查詢接口(jfinal)
- JFinal使用ajaxfileupload實(shí)現(xiàn)圖片上傳及預(yù)覽
- JFinal實(shí)現(xiàn)偽靜態(tài)的方法
- JFinal極速開發(fā)框架使用筆記分享
- jfinal與bootstrap的登出實(shí)戰(zhàn)詳解
- java 中JFinal getModel方法和數(shù)據(jù)庫(kù)使用出現(xiàn)問題解決辦法
- Bootstrap+jfinal退出系統(tǒng)彈出確認(rèn)框的實(shí)現(xiàn)方法
- Bootstrap+jfinal實(shí)現(xiàn)省市級(jí)聯(lián)下拉菜單
- jfinal與bootstrap的登錄跳轉(zhuǎn)實(shí)戰(zhàn)演習(xí)
- jfinal添加jcaptcha驗(yàn)證碼實(shí)現(xiàn)方法
- JFinal 調(diào)用存儲(chǔ)過程的步驟
相關(guān)文章
在本地用idea連接虛擬機(jī)上的hbase集群的實(shí)現(xiàn)代碼
這篇文章主要介紹了在本地用idea連接虛擬機(jī)上的hbase集群的實(shí)現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10Java11中基于嵌套關(guān)系的訪問控制優(yōu)化詳解
Java(和其他語言)通過內(nèi)部類支持嵌套類,要使其正常工作,需要編譯器執(zhí)行一些技巧,下面這篇文章主要給大家介紹了關(guān)于Java11中基于嵌套關(guān)系的訪問控制優(yōu)化的相關(guān)資料,需要的朋友可以參考下2022-01-01構(gòu)建springboot自動(dòng)生成mapper文件和dao接口項(xiàng)目的步驟和配置方法
這篇文章主要介紹了構(gòu)建springboot自動(dòng)生成mapper文件和dao接口項(xiàng)目的步驟和配置方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05SpringBoot高版本修改為低版本時(shí)測(cè)試類報(bào)錯(cuò)的解決方案
這篇文章主要介紹了SpringBoot高版本修改為低版本時(shí)測(cè)試類報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09spring注解如何為bean指定InitMethod和DestroyMethod
這篇文章主要介紹了spring注解如何為bean指定InitMethod和DestroyMethod,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11springboot 整合 nacos 配置實(shí)現(xiàn)多個(gè)環(huán)境不同配置
本文介紹了Nacos配置中心的優(yōu)勢(shì),包括與Apollo的性能對(duì)比,Nacos服務(wù)端的安裝與配置,以及如何在SpringBoot項(xiàng)目中集成Nacos進(jìn)行多環(huán)境配置,提供了詳細(xì)的步驟,包括下載、安裝、配置中心的創(chuàng)建和項(xiàng)目集成,旨在幫助開發(fā)者更好地使用Nacos進(jìn)行項(xiàng)目配置管理2024-09-09Java中Scanner類與BufferReader類的不同點(diǎn)(非常詳細(xì))
這篇文章主要介紹了Java中Scanner類與BufferReader類的不同點(diǎn)(非常詳細(xì))的相關(guān)資料,需要的朋友可以參考下2016-08-08Spring Data JPA的Audit功能審計(jì)數(shù)據(jù)庫(kù)的變更
數(shù)據(jù)庫(kù)審計(jì)是指當(dāng)數(shù)據(jù)庫(kù)有記錄變更時(shí),可以記錄數(shù)據(jù)庫(kù)的變更時(shí)間和變更人等,這樣以后出問題回溯問責(zé)也比較方便,本文討論Spring Data JPA審計(jì)數(shù)據(jù)庫(kù)變更問題,感興趣的朋友一起看看吧2021-06-06