jfinal mysql 配置_JFinal Druid 配置

/*** 数据库密码加密,执行如下命令,生成加密密码

* java -cp druid-1.1.14.jar com.alibaba.druid.filter.config.ConfigTools 密码

* 输出:

* privateKey:MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEApEUdEC4QUd7ifzQ2wLdm+E2AN4Kdlze17nDVvwBeFeWmxJDFxOhjALZeG9up22tnEeki8W1jffacDtXoLenKBQIDAQABAk1Bxdnd7nIWTNyM0/4iuFj/eVBGyxdo5/7X/KxrIYeWaszSOLjezQ+AVxaRRdpAEUUuk1Ep+FEJFLl9YCdXTvpOlAiEA9H3aL4I+o3XkDYSblJE997FURhYJPjhrUwVkHc5JcysCIQCsAJUtCNb165jfgZRrHxZ1KXcI4EMIGVUsDn/VXrDfjwIgd9dop3j0MzOKQYYKrNw0v8DQSjpq9XC6SsuNs352SlkCIESBPuje2m671Pk/7NL1YMZtK2G3oDr7i/auF6/ttNh1AiBEH/eyxc3CAeYk9GF+y2Z6SNosw8DSIA0kQMbgSIBZxg==

* publicKey:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKRFHRAuEFHe4n80NsC3ZvhNgDeCnZc3te5w1b8AXhXlpsSQxcTo1YwC2XhvbqdtrZxHpIvFtY332nA7V6C3pygUCAwEAAQ==

* password:RV+gpoUP/tTDk9vytEKxfZfhPQenrG9aCJ5MNa1w1JR5d2Q9mJ5j4TyN9wQc1/7Y0/bsmZSl5BEX3vIxjMEDpxw==

*

* 配置如下*/String mysqlUrl= "jdbc:mysql://10.10.10.10:13306/test_db?useUnicode=true&useSSL=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull";

String mysqlUsername= "root";

String mysqlPassword= "RV+gpoUP/tTDk9vytEKxfZfhPQenrG9aCJ5MNaw1JR5d2Q9mJ15j4TyN9wQc1/7Y0/bsmZSl5BEX3vIxjMEDpxw==";

String mysqlPublicKey= "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKRFHRAuEFHe4n80NsC3ZvhNgDe1CnZc3te5w1b8AXhXlpsSQxcToYwC2XhvbqdtrZxHpIvFtY332nA7V6C3pygUCAwEAAQ==";

String mysqlDriver= "com.mysql.cj.jdbc.Driver";

String mysqlFilters= "config";

DruidPlugin druidMysqlPlugin= newDruidPlugin(mysqlUrl, mysqlUsername, mysqlPassword,mysqlDriver,mysqlFilters);

druidMysqlPlugin.setPublicKey(mysqlPublicKey);

//sql防注入

WallFilter wall = new WallFilter();

wall.setDbType("mysql");

druidMysqlPlugin.addFilter(wall);//最大连接池数量,默认为8

druidMysqlPlugin.setMaxActive(20);//最小连接池数量

druidMysqlPlugin.setMinIdle(1);//初始化时建立物理连接的个数,默认为0

druidMysqlPlugin.setInitialSize(1);//获取连接时最大等待时间,单位毫秒。配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。

druidMysqlPlugin.setMaxWait(60000);//如果连接空闲时间大于等于minEvictableIdleTimeMillis则关闭物理连接。

druidMysqlPlugin.setTimeBetweenEvictionRunsMillis(60000);//连接保持空闲而不被驱逐的最小时间

druidMysqlPlugin.setMinEvictableIdleTimeMillis(300000);//建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。

druidMysqlPlugin.setTestWhileIdle(true);//申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。默认为true

druidMysqlPlugin.setTestOnBorrow(false);//归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。默认为true

druidMysqlPlugin.setTestOnReturn(false);/*//配置removeAbandoned对性能会有一些影响,建议怀疑存在泄漏之后再打开

//当程序存在缺陷时,申请的连接忘记关闭,这时候就存在连接泄漏了。Druid提供了RemoveAbandanded相关配置,用来关闭长时间不使用的连接

druidMysqlPlugin.setRemoveAbandoned(true);

//如果连接超过30分钟未关闭,就会被强行回收

druidMysqlPlugin.setRemoveAbandonedTimeoutMillis(1800);

//关闭abanded连接时输出错误日志

druidMysqlPlugin.setLogAbandoned(true);*/druidMysqlPlugin.start();

ActiveRecordPlugin mysqlArp= new ActiveRecordPlugin("mysql", druidMysqlPlugin);//配置MySQL方言

mysqlArp.setDialect(newMysqlDialect());//是否显示执行的SQL//mysqlArp.setShowSql(true);

mysqlArp.start();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值