5.7 Liquibase:与具体数据库独立的追踪、管理和应用数据库Scheme变化的工具。-mybatis-generator将数据库表反向生成对应的实体类及基于mybatis的mapper接口和xml映射文件(类似代码生成器)
一. 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无限制权限策略文件的下载
5.7 Liquibase:与具体数据库独立的追踪、管理和应用数据库Scheme变化的工具。-mybatis-generator将数据库表反向生成对应的实体类及基于mybatis的mapper接口和xml映射文件(类似代码生成器)的更多相关文章
- 精尽MyBatis源码分析 - MyBatis初始化(二)之加载Mapper接口与XML映射文件
该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...
- mybatis 详解(六)------通过mapper接口加载映射文件
通过 mapper 接口加载映射文件,这对于后面 ssm三大框架 的整合是非常重要的.那么什么是通过 mapper 接口加载映射文件呢? 我们首先看以前的做法,在全局配置文件 mybatis-conf ...
- MyBatis 逆向工程——根据数据表自动生成model、xml映射文件、mapper接口
MyBatis Generator(MBG)的使用 MBG可以根据数据表生成对应的model.xml映射文件.mapper接口,只是简单的生成,还需要根据需求修改. 1.下载jar包 https:// ...
- 解决 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 以及MyBatis批量加载xml映射文件的方式
错误 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 的出现,意味着项目需要xml文件来 ...
- Mybatis学习--Mapper.xml映射文件
简介 Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心. 映射文件中有很多属性,常用的就是parameterType(输入类型 ...
- Mybatis中的Mapper.xml映射文件sql查询接收多个参数
我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQL,在dao层定义的接口中定义的参数传到xml文件中之后,在查询之前mybatis会对其进行动态解析,通常使用#{}接收 ...
- Mapper.xml映射文件
查询订单关联查询用户: 使用resultType,ordersCustom可以通过继承orders获得其属性,再添加我们需要的用户字段. 使用resultMap,orders表中通过封装user对象来 ...
- Ibatis学习总结4--SQL Map XML 映射文件扩展
SQL Map XML 映射文件除了上文提到的属性还有一些其他重要的属性,下文将详细介绍这些属性. 缓存 Mapped Statement 结果集 通过在查询 statement 中指定 cacheM ...
- MyBatis 的 XML 映射文件使用说明
简介 文档参考地址:http://www.mybatis.org/mybatis-3/zh/index.html MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器 ...
随机推荐
- CF176E Archaeology(set用法提示)
题目大意: 给一棵树,每次激活或熄灭一个点,每次问这些点都联通起来所需的最小总边权 分析: 若根据dfs序给所有点排序,为$v1,v2,v3....vk$,那么答案就是$(dis(v1,v2)+dis ...
- 1 Web 知识基础
一.什么是跨域访问举个栗子:在A网站中,我们希望使用Ajax来获得B网站中的特定内容.如果A网站与B网站不在同一个域中,那么就出现了跨域访问问题.你可以理解为两个域名之间不能跨过域名来发送请求或者请求 ...
- Atcoder Code Festival 2017 qual C 10.22 D题题解
[题意概述] 给出一个只有小写字母的序列,问最少把序列分成几段可以满足每一段可以通过变换成为回文串.变换指的是交换子序列中的字母的位置. [题解] 我们把a~z分别设为2^0~2^25,每个子序列满足 ...
- PAT 1114 Family Property
This time, you are supposed to help us collect the data for family-owned property. Given each person ...
- vim学习3-查找替换
一.字符的替换及撤销(Undo操作) 1.替换和撤销(Undo)命令 替换和Undo命令都是针对普通模式下的操作 命令 说明 r+<待替换字母> 将游标所在字母替换为指定字母 R 连续替换 ...
- 【Codeforces 349B】Color the Fence
[链接] 我是链接,点我呀:) [题意] 让你组成一个只由1~9组成的数字 每个数字需要的paint数字给定. 让你组成一个最大的数字,且所有数字的paint的总和不超过v. [题解] 先求出a中的最 ...
- nyoj_42_一笔画问题_201403181935
一笔画问题 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下 ...
- Spring MVC-视图解析器(View Resolverr)-XML视图解析器(Xml View Resolver)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_xmlviewresolver.htm 说明:示例基于Spring MVC 4.1 ...
- Spring MVC-处理程序映射(Handler Mapping)-Bean名称Url处理程序映射(Bean Name Url Handler Mapping)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_beannameurlhandlermapping.htm 说明:示例基于Spri ...
- MRO 方法解释顺序
MRO是用在多重继承中的.考虑这种情况,整个环境中父类是两个 P1,P2 子类是两个 C1,C2 而 孙子类是G1. 我们知道 G1会从 P1,P2,C1,C2中继承属性,但是如果有多个属性重名,那么 ...