Java代码生成器CodeX4J介绍
用代码生成器生成一些固定的或有规律的代码,可以有效的提高工作效率。我写了个开源的,放在了GitHub上,希望能对有需要的朋友有所帮助。
GitHub代码地址https://github.com/jackchengyujia/CodeX4J
GitHub已打包的可运行jar下载地址https://raw.githubusercontent.com/jackchengyujia/CodeX4J/master/releases/codex4j-1.0.jar
先做一下简单介绍:
CodeX4J是一款开源的Java代码生成器,整个软件就一个jar包,双击即可运行,操作非常简单。
CodeX4J根据数据库自动生成基于Maven的SSM项目,包含SSM框架的基本配置和各层基础代码。
其中Mapper和Model是调用MyBatis的官方代码生成器生成,并且自定义了Model注释的生成规则。
无论是IntelliJ IDEA、Eclipse、MyEclipse,只要配置好Maven和Tomcat,都可以打开直接运行。
默认生成的Controller中,除了首页返回页面,其它都返回JSON数据。
所有代码都可以根据实际情况自行修改。
目前的运行环境要求为JDK8+MySQL5。
一图胜千言,下面上图:
一、软件的使用

这个就是从上面的链接下载的jar包。双击运行。

这是软件的初始界面。

根据实际情况填写配置信息,这里以我本地的测试数据库“school”为例,然后点击“一键生成”。

生成完毕会有提示。点击“确定”,然后点击“打开生成文件夹”。

“school”文件夹就是刚生成的项目文件夹。软件默认将数据库名作为项目名。由于当前所在文件夹在每次重新生成时会删除,所以先将“school”文件夹复制到其它地方再打开。
二、测试生成的程序

这里以IDEA为例,展示打开后的项目文件。配置好Maven和Tomcat,直接运行。

看到“Hello,CodeX4J!”的首页界面,说明网站启动成功了。
下面以Teacher表为例做一下增删改查。
先看一下TeacherController的代码,默认生成了增删改查4个方法:

增加数据:

返回的数字1为受影响的行数,这里说明增加成功。
查询数据:

修改数据:

删除数据:

增删改查是否成功可以通过直接查看数据库来验证。
先介绍到这里吧,如果有什么问题,欢迎在评论里留言,或在GitHub的Issues中提出。
Java代码生成器CodeX4J介绍的更多相关文章
- JAVA基本类库介绍
我们曾经讲过,Java已经为编程者编制了许多类,这些类已经经过测试,基本上不存在错误,这些类都是我们编程的基础.如果不利用这些已存在的类,我们的 编程工作将变得异常复杂,所以我们应尽可能多的掌握Jav ...
- Java垃圾回收介绍(译)
在Java中,对象内存空间的分配与回收是由JVM中的垃圾回收进程自动完成的.与C语言不同的是,在Java中开发者不需要专门为垃圾回收写代码.这是使Java流行的众多特征之一,也帮助了程序员写出了更好的 ...
- 告别无止境的增删改查--Java代码生成器
转自:http://www.cnblogs.com/zhuYears/archive/2012/02/29/2373491.html 告别无止境的增删改查--Java代码生成器 有感于马上要做个比较大 ...
- Java Web开发介绍
转自:http://www.cnblogs.com/pythontesting/p/4963021.html Java Web开发介绍 简介 Java很好地支持web开发,在桌面上Eclipse RC ...
- 【转】20个Java 代码生成器
From: http://www.cnblogs.com/skyme/archive/2011/12/22/2297592.html 1.1 CodeSmith 一款人气很旺国外的基于模板的dotne ...
- [译]Java 垃圾回收介绍
说明:这篇文章来翻译来自于Javapapers 的Java Garbage Collection Introduction 在Java中,对象内存空间的分配与回收是由JVM中的垃圾回收进程自动完成的. ...
- Java高新技术 Myeclipse 介绍
Java高新技术 Myeclipse 介绍 知识概述: (1)Myeclipse开发工具介绍 (2)Myeclipse常用开发步骤详解 ...
- [Java并发编程(三)] Java volatile 关键字介绍
[Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...
- java.util.concurrent介绍【转】
java.util.concurrent介绍 java.util.concurrent 包含许多线程安全.测试良好.高性能的并发构建块.不客气地说,创建 java.util.concurrent ...
随机推荐
- Linux基础入门之网络属性配置
Linux基础入门之网络属性配置 摘要 Linux网络属性配置,最根本的就是ip和子网掩码(netmask),子网掩码是用来让本地主机来判断通信目标是否是本地网络内主机的,从而采取不同的通信机制. L ...
- Android Tab与TabHost
这就是Tab,而盛放Tab的容器就是TabHost 如何实现?? 每一个Tab还对应了一个布局,这个就有点好玩了.一个Activity,对应了多个功能布局. ①新建一个Tab项目,注意,不要生成mai ...
- HandlerThread使用
HandlerThread 是一个包含 Looper 的 Thread,我们可以直接使用这个 Looper 创建 Handler. 1.HandlerThread 源码 public class H ...
- 网络测速 php代码
<?php /*=====http://hi.csdn.net/yinyiniao=====*/ $fp=fopen("cs.txt","w"); for ...
- linux socket中tcp的time_wait的快速回收和重用
解决方法: 我们可以通过调整内核参数来调整: vi /etc/sysctl.conf 编辑文件,加入以下内容: net.ipv4.tcp_syncookies = net.ipv4.tcp_tw_re ...
- Java软件编码规范要求
1.一个类对应一个文件,文件名与类名保持一致 虽然一个“.java”源文件可以有多个类(不是内部类),但是不提倡那么写.
- select server
server with select #include<stdio.h> #include<sys/types.h> #include<sys/socket.h> ...
- C#中Array、ArrayList和List三者的区别
1.Array 在C#中最早出现的.在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单. 它的空间大小是固定的,空间不够时也不能再次申请,所以需要事前确定合适的空间大小. 2. ...
- 使用ESP8266连接到Azure
很多同学在问我,ESP8266如何连接到Azure,因为官方只有Spark Fun之类的DevKit(开发套件)出了教程(我只找到了套件的文档). 先上视频:http://v.youku.com/v_ ...
- [EffectiveC++]item04:Make sure the objects are initialized before they're used
28 页 C++规定,对象的成员变量的初始化动作发生在进入构造函数本体之前. 构造函数的一个较佳的写法是,使用所谓的member initialization list替换赋值动作. 29页 但请立下 ...