Java代码生成器多表配置优化,增加自定义实体功能
前言
最近利用零碎的时间对代码生成器做了进一步更新:优化多表配置模块,增加自定义实体功能,美化单表和多表配置的UI界面,修复用户反馈的若干bug,一起看一下吧!
多表配置优化
新版多表配置模块使用了多模块生成模式,每个模块下可以配置不同的方法,并且摒弃了原来的Map参数类型,参数和返回值全部使用entity,虽然牺牲了一定的灵活程度,但总体来说,利大于弊。如果自己做个小项目倒无所谓,倘若多人协作开发,Map满天飞,那种绝望只有经历过的人才懂。新版多表配置界面如下:
使用方法也较为简单,下面是使用示例:
现在数据库中有两个表,teacher和student,teacher和student为一对多的关系,现在我们要根据teacher的name(名字不可重复)查询他手下所有student的id和name:
teacher表:

student表:

对应的配置如下:

关联表信息区域配置表与表之间的关系,查询字段区域添加需要在前台显示的字段,条件字段区域添加where条件中的字段,生成代码后会在前台查询条件区域显示,固定值代表如果where条件中有需要写死的条件,比如代表信息是否被删除的deleteflg,则可以直接配置为固定的值比如0,生成代码后sql中即为deleteflg = 0。
配置完毕,去往主界面生成代码即可:

这里选择了前后端分离主题,导入idea/eclipse,后台结构如下:

前台结构如下:

直接打开login.html运行即可,登录进入主页,多表部分的功能已经生成:

总体就是这样,但我感觉多表模块其实较为鸡肋,实际开发中的sql比这个要复杂的多,所以日后想增加一个自定义sql模块,灵活生成。
自定义实体
这个功能没什么好说的,根据配置就可以生成对应的实体,如下:
杂谈
接下来换换脑子,我想随便聊聊,入行三年有余,从编程小白成长到现在,一路也算充满波折,记得当年刚学Java,大冷天抱着电脑调试cmd窗口,打印出一个杨辉三角内心都充满成就感。
基础学完,开始学习Web框架,相信很多朋友接触的首款Web框架便是SSH,我也不例外,虽然现在已经过时,但却不可否认它为互联网开发所带来的贡献,当初学完感觉自己已然无敌,自信满满,但后来随着学习的不断深入,才发现自己的渺小,Java的知识体系实在是太庞大了,让我顿感无力,并且新技术层出不穷,实在无法面面俱到。学的越多,懂得越少,那时候我了解到这才是真理,但也因此激起了我对知识的渴望,相信我,每天坚持学习,随着时间的流逝,学习会成为一种习惯,会成为你生活中的一部分。
基础永远是最重要的,它会决定你的上限。JDK中的JUC包需要我们对其有个较深入的了解,例如synchronized的原理,锁升级过程,ReentrantLock和synchronized的使用场景,CAS算法,AQS队列等。JVM同样重要,只有了解了JVM的内存结构和运行机制才可能具备性能调优的能力,推荐阅读经典书籍《深入理解Java虚拟机》,这样当我们遇到服务器CPU占用过高,程序卡顿,卡死,响应慢的问题时可以利用堆栈信息和垃圾回收日志迅速定位问题代码,制定相应的解决方案,否则可能会束手无策。
干这一行本来就是一个不断学习,自我提升的过程,放松了,别人就会赶超,时间久了就会被淘汰,弱肉强食,适者生存,这是亘古不变的生存法则。
成功大多源于兴趣使然,如果对编程没有兴趣,入行会让你痛苦、迷茫,无法前进,哪怕只有一点点兴趣,都能让你有一个好的发展,兴趣是最好的老师。
如果有富裕的时间,推荐学习一下Golang,以后可能会派上大用场!
结语
最后,生活不易,且行且珍惜,希望我们都能快乐度过每一天,收获属于自己的小美好!
喜欢的朋友可以关注公众号 螺旋编程极客 获取 代码生成器 和 第一时间内容更新
Java代码生成器多表配置优化,增加自定义实体功能的更多相关文章
- JPA使用nativequery多表关联查询返回自定义实体类
本文为JPA的学习采坑,如有问题欢迎指正. JPA官方推荐的多表关联查询使用不便,接触的有些项目可能会使用JPA 做简单查询,Mybaits做复杂查询.所以想要寻找一种好用的解决方案. JPA多表关联 ...
- 使用Java语言开发微信公众平台(八)——自定义菜单功能
随着上一篇文章的结束,我们已经实现了所有消息的类型的回复功能.今天,我们来学习更加高大上,也更加重要的自定义菜单功能. 一.了解自定义菜单 自定义菜单是微信公众平台最常用也是最重要的功能之一.根据微信 ...
- 仿EXCEL插件,智表ZCELL产品V1.6 版本发布,增加自定义事件功能
详细请移步 智表(ZCELL)官网www.zcell.net 更新说明 这次更新主要应用户要求,主要解决了单元格值变化时事件的支持,并新增了按单元格名操作的相关API,欢迎大家体验使用. 本次版本更 ...
- 为JQuery EasyUI 表单组件增加“焦点切换”功能
1.背景说明 在使用 JQuery EasyUI 各表单组件时,实际客户端页面元素是由 JQuery EasyUI 生成的,元素的焦点切换,虽然 Tab 键可以正常用,但顺序控制属性 tabinde ...
- mysql增加自定义函数功能
mysql默认是不能自定义函数的 当create function时 This function has none of DETERMINISTIC, NO SQL, or READS SQL DAT ...
- JAVA Spring 简单的配置和操作 ( 创建实体类, 配置XML文件, 调试 )
< 1 > 实体类 Person package java_spring.modle; /** * 一个实体类( Person ) */ public class Person { pri ...
- 梦想CAD控件自定义实体实现
一.增加自定义实体对象 调用DrawCustomEntity函数,绘制一个自定义实体对象. 下面代码绘制一个自定义实体,C#代码实现如下: private void DrawMlineCommand( ...
- CAD控件:COM接口实现自定义实体
1. 实现步骤: 3 1. 实现步骤: 参考例子 :Src\MxDraw5.2\samples\ie\iedemoTest.htm 1) 增加自定义实体对象 调用DrawCustomEntity函数, ...
- CAD控件使用教程 自定义实体的实现
自定义实体的实现 1 . 自定义实体... 3 1.1 说明... 3 1.2 类的类型信息... 3 1.3 worldDraw.. 4 1.4 ...
随机推荐
- Linux 平台 安装 Composer
1.检查是否安装 composer --version 2.下载安装 php -r "copy('https://install.phpcomposer.com/installer', 'c ...
- 网站假死 重启NGINX无效 必须重启PHP 原因分析
一.错误提示说明: Nginx 502 Bad Gateway:请求的PHP-CGI已经执行,但是由于某种原因(一般是读取资源的问题)没有执行完毕而导致PHP-CGI进程终止. Nginx 504 G ...
- 详解PHP反序列化中的字符逃逸
首发先知社区,https://xz.aliyun.com/t/6718/ PHP 反序列化字符逃逸 下述所有测试均在 php 7.1.13 nts 下完成 先说几个特性,PHP 在反序列化时,对类中不 ...
- Linux 常用到的命令
1.按照文件所有属用户和名字查询 find -user mpsp -name \*.bin 2.根据string 字符串查找内容 more +/string test.txt 3.查找文件尾部 后20 ...
- 从零开始学习docker之docker的安装
一.Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 OverlayFS 类的 Union FS 等技术,对进程 ...
- python 进阶篇 python 的值传递
值传递和引用传递 值传递,通常就是拷贝参数的值,然后传递给函数里的新变量,这样,原变量和新变量之间互相独立,互不影响. 引用传递,通常是指把参数的引用传给新的变量,这样,原变量和新变量就会指向同一块内 ...
- 技术周刊 · 0202 年了,你还不学一下 WASM 么?
蒲公英 · JELLY技术周刊 Vol.04 「蒲公英」期刊全新升级--JELLY技术周刊!深度挖掘业界热点动态,来自团队大咖的专业点评,带你深入了解团队研究的技术方向. 登高远眺 天高地迥,觉宇宙之 ...
- python学习11函数
'''''''''函数:1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用2.语法:def 函数名([参数]): 函数体[return 返回值]3.函数名 ...
- 2019-2020-1 20199325《Linux内核原理与分析》第一周作业
1.显示一句话welcome !/bin/bash script4-1.sht var1="welcome to use Shell script" echo $var1 pwd ...
- opencv-8-图像核与蒙板操作
opencv-8-图像核与蒙板操作 opencvc++qt 开始之前 在准备开始的时候, 我大概列了一个opencv 章节列表, 按照章节进行写, 写到某些部分的时候再具体调整章节内容, 完成了之后, ...