一. 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映射文件(类似代码生成器)的更多相关文章

  1. 精尽MyBatis源码分析 - MyBatis初始化(二)之加载Mapper接口与XML映射文件

    该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...

  2. mybatis 详解(六)------通过mapper接口加载映射文件

    通过 mapper 接口加载映射文件,这对于后面 ssm三大框架 的整合是非常重要的.那么什么是通过 mapper 接口加载映射文件呢? 我们首先看以前的做法,在全局配置文件 mybatis-conf ...

  3. MyBatis 逆向工程——根据数据表自动生成model、xml映射文件、mapper接口

    MyBatis Generator(MBG)的使用 MBG可以根据数据表生成对应的model.xml映射文件.mapper接口,只是简单的生成,还需要根据需求修改. 1.下载jar包 https:// ...

  4. 解决 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 以及MyBatis批量加载xml映射文件的方式

    错误 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 的出现,意味着项目需要xml文件来 ...

  5. Mybatis学习--Mapper.xml映射文件

    简介 Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心. 映射文件中有很多属性,常用的就是parameterType(输入类型 ...

  6. Mybatis中的Mapper.xml映射文件sql查询接收多个参数

    ​ 我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQL,在dao层定义的接口中定义的参数传到xml文件中之后,在查询之前mybatis会对其进行动态解析,通常使用#{}接收 ...

  7. Mapper.xml映射文件

    查询订单关联查询用户: 使用resultType,ordersCustom可以通过继承orders获得其属性,再添加我们需要的用户字段. 使用resultMap,orders表中通过封装user对象来 ...

  8. Ibatis学习总结4--SQL Map XML 映射文件扩展

    SQL Map XML 映射文件除了上文提到的属性还有一些其他重要的属性,下文将详细介绍这些属性. 缓存 Mapped Statement 结果集 通过在查询 statement 中指定 cacheM ...

  9. MyBatis 的 XML 映射文件使用说明

    简介 文档参考地址:http://www.mybatis.org/mybatis-3/zh/index.html MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器 ...

随机推荐

  1. 关于JS闭包的一点理解

    通常来讲,闭包通常是指函数内部可以访问到外部作用域的一个过程. 一.广义的定义:任何函数都产生了闭包. 二.狭义的定义:函数内部能访问到其他变量函数的作用域. 我们来看个例子 var a = 10; ...

  2. Codeforces 912D - Fishes

    传送门:http://codeforces.com/contest/912/problem/D 本题是一个概率问题——求数学期望. 在一个n×m的方格中,有k个“*”.每个格子里可能有0~1个“*”. ...

  3. Java Web学习总结(23)——Distributed Configuration Management Platform(分布式配置管理平台)

    专注于各种 分布式系统配置管理 的通用组件/通用平台, 提供统一的配置管理服务. 主要目标: 部署极其简单:同一个上线包,无须改动配置,即可在 多个环境中(RD/QA/PRODUCTION) 上线 部 ...

  4. RAID级别简介

    独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(RAID, Redundant Array of Inexpensive ...

  5. 洛谷 P1378 油滴扩展

    P1378 油滴扩展 题目描述 在一个长方形框子里,最多有N(0≤N≤6)个相异的点,在其中任何一个点上放一个很小的油滴,那么这个油滴会一直扩展,直到接触到其他油滴或者框子的边界.必须等一个油滴扩展完 ...

  6. EasyUI 在textbox里面输入数据敲回车后查询和普通在textbox输入数据敲回车的区别

    EasyUI实现回车键触发事件 $('#id').textbox('textbox').keydown(function (e) { if (e.keyCode == 13) { alert('ent ...

  7. LA 4850 贪心

    感谢SF巨和WH巨的指导.. 首先,YY得到一个结论,罚值最大的最小值必定是按照截止时间排序得到的.然后,选一个任务插到其他位置,必定产生罚值最大值更大的情况,但有可能产生两个罚值最大情况和更小的情况 ...

  8. Android实战简易教程-第二十四枪(基于Baas的用户表查询功能实现!)

    接着上一篇,我们注冊了几个用户,用户表例如以下: 以下我们用ListView将表中数据显示出来吧. 首先看一下main.xml: <RelativeLayout xmlns:android=&q ...

  9. 【Allwinner ClassA20类库分析】4.GPIO类的使用

        从本节起,開始使用ClassA20类库完毕操作外设的功能,请先在https://github.com/tjCFeng/ClassA20下载ClassA20类库. 封装的目的就是简化操作,试想一 ...

  10. 学习笔记——WCF

    学了一下WCF,发现怎么跟Web Service这么像! 这个WCF究竟干嘛的? 一查,原来: "Windows Communication Foundation (WCF) 是由微软发展的 ...