什么是逆向工程:
        mybatis需要程序员自己编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java、mapper.xml、pojo…),可以让程序员将更多的精力放在繁杂的业务逻辑上。

企业实际开发中,常用的逆向工程方式:由数据库的表生成java代码。

之所以强调单表两个字,是因为Mybatis逆向工程生成的Mapper所进行的操作都是针对单表的,也许你可能会觉得那这就有点鸡肋了,但是在大型项目中,很少有复杂的多表关联查询,所以作用还是很大的。

jeecgframework集成了baomidou提供的mybatisplus,同样也可以通过逆向工程根据数据表生成相关代码。

jeecg_database.properties 以mysql为例:

diver_name=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.*.*:3306/car?useUnicode=true&characterEncoding=UTF-8&useSSL=false
username=root
password=dp@ssord
database_name=car

jeecg_config.properties

#code_generate_project_path
project_path=D:\\SourceProject\\car
#bussi_package[User defined]
bussi_package=org.jeecg.modules.demo #default code path
#source_root_package=src
#webroot_package=WebRoot #maven code path
source_root_package=src.main.java
webroot_package=src.main.webapp #ftl resource url
templatepath=/jeecg/code-template
system_encoding=utf-8 #db Table id [User defined]
db_table_id=id #db convert flag[true/false]
db_filed_convert=true #page Search Field num [User defined]
page_search_filed_num=1
#page_filter_fields
page_filter_fields=update_time,service_id

运行生成器 SysOneGUI.java:

输入包名、对应的实体类名、数据表名、描述。如果表不存在会有提示。

生成完毕:

log:

16:21:01.408 [AWT-EventQueue-0] DEBUG org.jeecgframework.codegenerate.database.DbReadTableUtil - 数据库驱动: com.mysql.jdbc.Driver
......
16:21:02.582 [AWT-EventQueue-0] INFO org.jeecgframework.codegenerate.generate.impl.CodeGenerateOne - ----jeecg----Code----Generation-----[单表模型:t_driver_pay_his]------ 生成完成。。。

按如上配置,生成的文件在 D:\SourceProject\car\src\main\java\org\jeecg\modules\demo\driver下,包括全套的entity、mapper、service、controller,以及前端的vue文件,从而解放了我们很多重复的机械性的工作。目录结构:

常见问题1:生成代码时提示:ERROR :   表 [ t_driver_pay_his ] 在数据库中,不存在 !请确认数据源配置是否配置正确、表名是否填写正确~

明明db里有,配置的db连接也是正确的,却总是提示这个。什么原因?

这里有一个细节,jeecg默认用大写的表名去读取表结构信息,即数据表名得是大写,然后生成器也得填写这个大写的表名才能生成。Linux下安装的MySQL默认是区分表名的大小写,不区分列名的大小写。那怎么才能支持小写的表名生成呢?这要设置数据库不要区分表名的大小写。用ROOT登录服务器,修改mysql配置文件/etc/my.cnf,在[mysqld]下加入一行:lower_case_table_names=1。然后,重启数据库服务:systemctl restart mysqld。

常见问题2:数据库连接配置useSSL参数。

如果生成代码时,有如下提示,则在数据库连接配置上加上useSSL=false即可。

16:08:31.625 [AWT-EventQueue-0] DEBUG org.jeecgframework.codegenerate.database.DbReadTableUtil - 数据库驱动: com.mysql.jdbc.Driver
Thu Dec 05 16:08:31 CST 2019 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

常见问题3:遇到上面问题,我改完配置了,再生成代码时怎么还是不行呀!

这里要注意了,无论是jeecg的code-template还是properties,你都要用maven clean package 重新打包一下项目,然后才会生效。

OVER!

上周日(12月1日)参加三夫香山越野21公里赛。在冷峻的山林激情穿越,成绩还不错。附一张照片,嘿嘿!

☞ Stay Hungry,Stay Foolish. 如果对阁下有帮助,就动动手指,点一下“推荐”哟~

jeecg代码生成器配置及常见问题的更多相关文章

  1. windows 下配置 Nginx 常见问题(转)

    windows 下配置 Nginx 常见问题 因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我 ...

  2. Mysql基本配置以及常见问题

    以下是MYSQL的基本配置以及常见问题的解决方式 1.获取客户端 https://dev.mysql.com/downloads/ 有两种方式获取到MYSQL,一种是通过MySQL Community ...

  3. OpenCV3.2.0+VS2017环境配置与常见问题(巨细坑爹版)

    目录 安装 常见问题 题外话:首先,配环境一定要有耐心... 本博客是本小白第一次装OpenCV成功后第一时间整理发布.用的是刚下载好的OpenCV3.2.0版,用x64编译器Debug运行(当然Re ...

  4. centos6配置网络常见问题

    1. 启用网卡 查看网卡模块: lsmod 移除网卡:modprobe -r e1000 装载网卡: modprobe e1000 2. 配置网络 vim /etc/sysconfig/network ...

  5. PCL配置即常见问题

    1    下载 把与VS版本对应PCL的AllInOne包下载下来.要下对安装包,需要了解安装包的命名的含义,以下面的一个AllInOne包的名字为例. PCL-1.8.0-AllInOne-msvc ...

  6. WAMP(Windows、Apache、MySQL、php)安装配置过程常见问题

    WAMP(Windows.Apache.MySQL.php)安装配置过程 可以参考该网友的总结(总结的不错,鼓掌!!): http://www.cnblogs.com/pharen/archive/2 ...

  7. Rabbit MQ安装配置及常见问题

    Window安装 1:RabbitMQ安装 1.1:安装Erlang:http://www.erlang.org/ 1.2:安装RabbitMQ:http://www.rabbitmq.com/dow ...

  8. XCode中Architecturs配置及常见问题

    http://lanvige.github.io/2014/03/19/architecturs-in-xcode/ XCode 5.1升级后因arm64和CocoaPods的原因,痛了一天,终于解决 ...

  9. oracle精简客户端安装配置及常见问题

    有关Instant client 安装步骤 1.首先在官网下载两个安装包instant/sqlplus,对相关文件进行解压缩,存放本地路径 官网地址:http://www.oracle.com/tec ...

随机推荐

  1. 首次自动化测试,使用selenium+scapy

    痛苦而艰难 才写出这一点点,这是个登陆测试 main # -*- coding: utf-8 -*- from selenium import webdriver import login_tst i ...

  2. Centos7.2 下DNS+NamedManager高可用部署方案完整记录

    Centos7.2 下DNS+NamedManager高可用部署方案完整记录 之前说到了NamedManager单机版的配置,下面说下DNS+NamedManager双机高可用的配置方案: 1)机器环 ...

  3. Python深入之python内存管理机制(重点)

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:醍醐三叶   关于python的存储问题, (1)由于python中 ...

  4. NETCore Bootstrap Admin 通用后台管理权限 [3]: 精简版任务调度模块

    前言 NETCore 里说到任务调度,大家首先想到的应该是大名鼎鼎的 QuartzNET 与 Hangfire,然而本篇介绍的却都不是,而是 Bootstrap Admin(以下简称 BA)通用后台权 ...

  5. Appium之WebView自动化

    WebView的测试:主要作用在混合(Hybrid)的应用 * 一部分是原生界面和代码,而另一部分是内嵌网页 * 比如微信.支付宝 * 内嵌了一个浏览器内核,由浏览器内核实现的 安卓应用中的内嵌的展示 ...

  6. 使用 defineProperty 劫持数据属性的改变

    使用defineProperty劫持数据属性的变化 例子一:有一个全局变量a,有一个全局函数b,实现一个`bindData`,执行后,a的任何赋值都会触发b的执行 // var a = 1;a = 1 ...

  7. python 中 and or

    在Python 中,and 和 or 执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值:而是,返回它们实际进行比较的值之一. 一.and: 在布尔上下文中从左到右演算表达式的值,如果布尔上下 ...

  8. 解压小游戏之打砖块(C#+unity)

    z这个小游戏很简洁,很简单,非常适合一个人玩,特别减压

  9. SpringBoot IoC启动流程、初始化过程及Bean生命周期各个阶段的作用

    目录 SpringBoot IoC启动流程.初始化过程及Bean生命周期各个阶段的作用 简述 首先明确IoC容器是啥 准备-SpringApplication的实例化 启动-SpringApplica ...

  10. 高性能mysql——高性能索引策略

    <高性能MySQL>读书笔记 一. 索引的优点 1. 索引可以让服务器快速定位到表的指定位置,大大减少了服务器需要扫描的数量: 2. 最常见的B-Tree索引按照顺序存储数据,可以用来做o ...