一. liquibase 使用说明
功能概述:通过xml文件规范化维护数据库表结构及初始化数据。
1.配置不同环境下的数据库信息
(1)创建不同环境的数据库。
(2)在resource/liquibase/config/ 文件夹下配置文件dev.properties, local.properties, 分别代表开发环境和本机环境的数据库信息。
2.确定liquibase作用于哪一个环境的数据库。
配置pom.xml文件中的property: db.profile 的值,比如 <db.profile>local</db.profile>代表采用local.properties 对应的数据库。
3.维护数据库表
(1)当前版本所有的库表维护脚本放在liquibase/change_log.rel-1文件夹下
(2)每个库表对应一个xml文件,具体语法参考liquibase官方文档。
(3)若是有新增xml文件,需要将该文件加入到liquibase/change_log.rel-1/script_suite.xml文件中,参考现有方案。
(4)新增/修改脚本后,执行visams-dao项目的install,
(5)执行脚本操作数据库:执行pom的liquibase插件中的update命令
备注:
dev环境不要采用旧的数据库yxq,请重新创建数据库并重新配置dev.properties,因为有修改库某些表的名称以及字段。
二.
mybatis-generator
插件使用说明
功能概述:将数据库表反向生成对应的实体类及基于mybatis的mapper接口和xml映射文件
1.配置从哪个数据库反向生成代码
resource/mybatis-config/generator.properties文件中配置数据库信息,该配置一般配置为开发环境或者是本地环境的数据库信息。
2.配置针对哪些库表反向生成代码
resource/mybatis-config/generatorConfig.xml文件中配置<table >节点,具体语法参考官方文档以及现有实例。
如:
<table tableName="biz_cmf_goods_specs" domainObjectName="business.CmfGoodsSpecs" mapperName="business.CmfGoodsSpecsMapper">
</table>
3.执行反向生成代码操作:
执行pom插件mybatis-generator的命令:mybatis-generator:generate
生成代码包括:实体类、mapper接口、mapper的xml文件
生成的这些文件请不要做任何改动因为每次执行都会覆盖这些自动生成的代码。若是需要额外信息请参考现有方案。
三.关于不允许256位密钥的AES加解密说明
功能概述:当密钥大于128,代码执行时,出现代码会抛出Illegal key size or default parameters or pad block corrupted 等错误。
1.原因:如果密钥大于128, 会抛出java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件.
文件位于${java_home}/jre/lib/security.
2.解决方式:
jdk8 和 java9 之后,$JAVA_HOME/jre/lib/security路径下 的 policy 的文件夹有相应的带限制的jar包 和 不带限制的jar包.
针对JDK1.8.0_151以上版本,请将jre/lib/security/java.security文件中的将#crypto.policy=unlimited 改为 crypto.policy=unlimited其他不变,也不需要其他权限jar
针对JDK1.8.0_151以下版本,请将jre/lib/security/ 下 的 local_policy.jar和US_export_policy.jar替换为官方网站提供了JCE无限制权限策略文件的下载