- 浏览: 12566 次
- 性别:
- 来自: 成都
最新评论
-
wfj_god_father:
搞定了,原来是aop没有切入好
多数据源读写分离 -
albrich:
...
多数据源读写分离 -
wfj_god_father:
已经解决。无语,项目中为了对密码进行加密 重写了Annotat ...
druid
文章列表
在现有已经上线的系统上实现多数据源读写分离,避免修改现有代码,使用有jdbc、hibernate和mybatis,折腾了一圈,基本思路都是写方法继承spring的AbstractRoutingDataSource 类,重写其determineCurrentLookupKey方法,用aop来实现数据源的切换,各种debug,determineCurrentLookupKey方法里get数据源都是在aop的set数据源之前执行,无语了,后来发现hibernate和mybatis中使用的session都是在初始化其sessionFactory时已经设置了,根本切换不了数据源, 看来只能定义相应的读写s ...
druid报异常 “sql injection violation, part alway true condition not allow”的解决方案
使用durid连接池组件,执行sql时发现异常如下:Caused by: java.sql.SQLException: sql injection violation, part alway true condition not allow
解决方案:
参数filters: 属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有:
监控统计用的filter:stat 日志用的filter:log4j 防御sql注入的filter:wa ...
在使用Mybatis时,不同的xml配置文件,有的会提示:无效的列类型: 1111
通过观察,如果是参数是Map类型或者Java Object类型,如果Map或者Object里面的属性类型不一致,如有些属性是String类型,有些属性是Integer类型,那么MyBatis解析的时候,就会出现问题,类型无法识别。
当然,如果传入参数不是Map或者Java Object,而是多个参数列表的形式,如果参数类型一致,那么不会出现问题,如果参数类型不一致,如既有String类型,也有Integer类型,那么解析的时候同样会出错。
最后,解决方案,如果有类型不一致的情况,在值后面加上类型:
passW ...
druid监控没有数据
- 博客分类:
- druid
配置好后访问项目,查看监控没有相关统计数据,折腾了一下,网上看到在在datasource中添加
<property name="filters" value="stat,wall" />,重启后 可以了
工作5年,一直碌碌无为,平均每年都跳槽。上次去面试,面试官突然问,你有这门多项目经验,是否有分享博客之类的,只能说没有,平时的积累都是写在便签或者.txt上的。那时就想 我应该有个博客了。一直在做传统项目。现在接触互联网项目,开始看dubbo,druid,redis, zookeeper,到处去找相关新技术学习。是该做点自己觉得骄傲的东西出来了
项目中以前是DBCP,准备用druid,看了一些文章,说把corg.apache.commons.dbcp.BasicDataSource修改为om.alibaba.druid.pool.DruidDataSource就好了。 下了druid-1.0.16.jar,修改后重启报not support oracle driver 1.0 找了一会,折腾半天,后来把ojdbc14.jar换成ojdbc6.jar(我的是oracle10g,用11g的,这点想不通),总算不报not support oracle driver 1.0,但是报com.alibaba.druid.pool.DruidDat ...