- 博客(7)
- 收藏
- 关注
原创 JAVA工具类中的静态变量使用Spring容器中的Bean
有很多小伙伴在创建工具类的时候有可能会用到Spring容器中的某些类,但是在工具类中却是静态变量,那么如何把Spring的bean注入到工具类中呢?我们知道,类中的静态变量是随着类加载的时候分配地址的,但是此时Spring 的上下文环境可能还没有被加载,所以不可能为静态变量绑定值,这时再使用这个变量就会出现空指针了。思路一: 既然类加载的时候Spring容器没有初始化完成,那么我们把工具类交给Spring容器管理,并在通过set方法给静态变量赋值。这里要注意set方法不能使用static修饰了。当然
2022-02-23 15:47:24 2196 4
原创 oracle调用java方法
在历史数据迁移中遇到的问题:原数据库中的某些字段使用了des加密,但是在新数据库中要求保存明文,如果不想通过java程序刷表解决问题,就可以使用oracle的调用java方法功能。
2021-07-26 19:41:11 2961
原创 CXF客户端乱码
CXF动态调用客户端乱码在使用CXF与其他系统对接时,发现对方系统响应的汉字乱码,在自己本地测试就没有问题,很奇怪,乱码如下:由于不知道问题所在,只能在CXF动态调用的客户端代码上加IN 和 OUT拦截器,查看请求和响应,代码如下: //获取cxf客户端 JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance(); Client client = clientF
2021-03-01 10:32:07 1198 2
原创 ORA-01453: SET TRANSACTION 必须是事务处理的第一个语句 异常
今天迁移数据中,quartz原来使用mysql,现在切换到了oracle,在操作定时任务时会出现下如下异常信息:13:47:29.117 [http-nio-8080-exec-1] WARN o.s.s.q.LocalDataSourceJobStore - [getConnection,811] - Failed to override connection auto commit/transaction isolation.java.sql.SQLException: ORA-01453: SE
2020-12-23 13:54:52 3829 1
原创 velocity模板大小写转换
今天在使用velocity模板生成sql时,遇到了大小写转换问题,由于数据库是是oracle,为了统一标准,插入字段全是大写,但是插入的值是根据列名得出的,但是列名是大写,插入的数据希望是小写,就出现了大小写转换问题,其实velocity的大小写转换很简单,因为velocity可以直接调用java方法,可以看做传递进来的是一个java对象,那么字符串就可以调用字符串的方法。代码:在模板中往velocityContext中put的键值为: (“businessName”, “DIVISION”)即:v
2020-12-18 11:24:11 4644
原创 mybatis数组越界异常 Error preparing statement
mybatis数组越界异常今天在做数据库迁移时遇到这个问题:Error preparing statement. Cause: java.lang.ArrayIndexOutOfBoundsException: 8 异常 ,数据库是从mysql迁移到oracle,更改了表字段类型及函数外,在测试中发现了这样一个问题,由于系统每次登陆登出时会记录登入者信息,结果在插入日志表中出现了这个问题,报错mybatis数据越界,仔细检查后发现mapper.xml中sql没有问题,但是原来是mysql开启了主键自增,
2020-12-15 14:41:50 6569
原创 db2使用存储load数据
当进行大量数据迁移时,如果只考虑使用数据库的话可以用到load实例,load实例可以快速读取大量数据并插入到目标表中,但是使用也有优缺点优点:由于load实例是用直接将编译好的页数据放到目标表中,效率非常高。如果可以确保数据的完整性建议使用load实例。缺点:load实例只会检测到唯一索引约束,其他的不能检测到,可能会破坏数据的完整性。 方式一: CREATE OR REPLACE PROCE...
2019-10-28 23:46:56 1200
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人