Jpress V3.0 多数据源配置
项目git地址
https://gitee.com/fuhai/jpress
https://gitee.com/fuhai/jpress.git
使用 IntelliJ IDEA 2019.3 x64 工具
import Maven 方式导入
建立自己的moudule
1.采用代码自动生成
在项目 starter
package io.jpress.modulegen
new 一个自己项目相关的class 如:ParkingAddonGenerator
public class ParkingAddonGenerator {
private static StringdbUrl ="jdbc:mysql://db_url:3306/db_name";
private static StringdbUser ="root";
private static StringdbPassword ="root";
private static StringaddonName ="demo";
private static StringdbTables ="table1,table2";
private static StringmodelPackage ="com.xxx.addon.demo.model";
private static StringservicePackage ="com.xxx.addon.demo.service";
public static void main(String[] args) {
AddonGenerator amg = new AddonGenerator
(addonName,dbUrl,dbUser,dbPassword,dbTables,modelPackage,servicePackage);
amg.gen();
}
}
db_url 填写数据库地址如果数据库是本机填写127.0.0.1,外网填写外网的IP或者是域名
db_name 填写数据库名字
StringaddonName 项目名称,最终创建一个moudule,生成文件夹 jpress-addon-demo
StringdbTables 填写数据库表名以逗号隔开
StringmodelPackage 建立一个实体业务的包名,存放数据库实体
StringservicePackage 建立一个数据库业务包名,存放对数据操作的类
然后run 完成后就会生成代码。
把新module 添加到工程内 点击 File -- Project Structure -- Moudules 点击 + 找到项目路径下新生成的module 点击next 选择Maven 一路next 。
添加以下resources,webapp
资源目录选中上面添加的文件,做如下操作
Resources Rootresources 下的文件请到 jpress-addons -- jpress-addon-helloworld 拷贝
在parent 下 pom.xml 加上
<module>jpress-addon-demo</module>
在 starter 下 pom.xml 加上
<dependency>
<groupId>io.jpress</groupId>
<artifactId>jpress-addon-demo</artifactId>
<version>3.0</version>
</dependency>
在run的时候 新项目就会执行
多数据源
在 jboot.properties 配置,就是实际要运行的数据源配置。
如下:
# cookie的加密密钥(建议32位以上)
jboot.web.cookieEncryptKey = jboot_encrypt
# jwt密钥,用于小程序等API通信(建议32位以上)
jboot.web.jwt.secret = jboot_encrypt
# 生产环境配置# 1)不输出 debug 日志# 2)缓存模板,提高性能(通过文件修改html不会实时刷新)# 3)关闭生产模式,把 product 修改为 devjboot.app.mode = product
# 数据库相关配置
jboot.datasource.name=main, db
jboot.datasource.main.type=mysql jboot.datasource.main.url=jdbc:mysql://db_url:3306/db_name?useUnicode=true&useSSL=false&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jboot.datasource.main.user=root
jboot.datasource.main.password=root
jboot.datasource.main.table=table1,table2
jboot.datasource.db.type=mysql
jboot.datasource.db.url=jdbc:mysql://db_url:3306/db_name?useUnicode=true&useSSL=false&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jboot.datasource.db.user=root
jboot.datasource.db.password=root
jboot.datasource.db.table=table1,table2
jboot.datasource.name=main, db
自定义name
如没有多数据源,请用jboot-simple.properties 单数据源默认配置
坑1
报错如下:
Error Failed to load driver class “com.mysql.jdbc.Driver” in either of HikariConfig class loader or Thread context classloader
请将 config.txt
db.driverClassName = “com.mysql.jdbc.Driver”
请替换为↓
db.driverClassName = com.mysql.jdbc.Driver
参考资料: