mirror of
https://github.com/moshowgame/SpringBootCodeGenerator.git
synced 2026-03-22 07:28:25 +08:00
Optimization for UI of html,New MybatisPlus Mod,Fix AuthorName and PackageName issue
This commit is contained in:
@@ -16,6 +16,7 @@ SpringBootCodeGenerator
|
|||||||
<tr><td>CSDN博客</td> <td>http://blog.csdn.net/moshowgame</td></tr>
|
<tr><td>CSDN博客</td> <td>http://blog.csdn.net/moshowgame</td></tr>
|
||||||
<tr><td></td> <td></td></tr>
|
<tr><td></td> <td></td></tr>
|
||||||
<tr><td>更新日期</td> <td>更新内容</td></tr>
|
<tr><td>更新日期</td> <td>更新内容</td></tr>
|
||||||
|
<tr><td>20181212<td>首页UI优化,新增MybatisPlus模块(感谢@三叔同事的建议),修复作者名和包名获取失败问题(感谢@Yanch1994的反馈)。</td></tr>
|
||||||
<tr><td>20181122<td>优化正则表达式点号的处理,优化处理字段类型,对number类型增加int,long,BigDecimal的区分判断(感谢@lshz0088的指导)。</td></tr>
|
<tr><td>20181122<td>优化正则表达式点号的处理,优化处理字段类型,对number类型增加int,long,BigDecimal的区分判断(感谢@lshz0088的指导)。</td></tr>
|
||||||
<tr><td>20181108<td>修复非字段描述"KEY FK_xxxx (xxxx)"导致生成KEY字段情况(感谢@tornadoorz反馈)。</td></tr>
|
<tr><td>20181108<td>修复非字段描述"KEY FK_xxxx (xxxx)"导致生成KEY字段情况(感谢@tornadoorz反馈)。</td></tr>
|
||||||
<tr><td>20181018<td>支持double(x,x)的类型,以及comment里面包含一些特殊字符的处理(感谢@tanwubo的反馈)。</td></tr>
|
<tr><td>20181018<td>支持double(x,x)的类型,以及comment里面包含一些特殊字符的处理(感谢@tanwubo的反馈)。</td></tr>
|
||||||
|
|||||||
@@ -36,6 +36,10 @@
|
|||||||
<orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
|
<orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.2.Final" level="project" />
|
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.2.Final" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.4" level="project" />
|
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.4" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.openjfx:javafx.base:11.0.0-SNAPSHOT" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.openjfx:javafx.base:linux:11.0.0-SNAPSHOT" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.openjfx:javafx.base:mac:11.0.0-SNAPSHOT" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.openjfx:javafx.base:win:11.0.0-SNAPSHOT" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.0.8.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.0.8.RELEASE" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.0.8.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.0.8.RELEASE" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.0.8.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.0.8.RELEASE" level="project" />
|
||||||
@@ -48,9 +52,8 @@
|
|||||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.0.4.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.0.4.RELEASE" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.0.4.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.0.4.RELEASE" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.springframework:springloaded:1.2.8.RELEASE" level="project" />
|
<orderEntry type="library" name="Maven: org.springframework:springloaded:1.2.8.RELEASE" level="project" />
|
||||||
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:4.1.8" level="project" />
|
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:4.1.12" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.2" level="project" />
|
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.2" level="project" />
|
||||||
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.46" level="project" />
|
|
||||||
<orderEntry type="library" name="Maven: com.alibaba:druid:1.1.3" level="project" />
|
<orderEntry type="library" name="Maven: com.alibaba:druid:1.1.3" level="project" />
|
||||||
<orderEntry type="library" name="Maven: log4j:log4j:1.2.16" level="project" />
|
<orderEntry type="library" name="Maven: log4j:log4j:1.2.16" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 50 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 26 KiB |
@@ -13,7 +13,6 @@ import org.springframework.stereotype.Controller;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -60,27 +59,32 @@ public class IndexController {
|
|||||||
// result
|
// result
|
||||||
Map<String, String> result = new HashMap<String, String>();
|
Map<String, String> result = new HashMap<String, String>();
|
||||||
|
|
||||||
|
//UI
|
||||||
|
result.put("swaggerui", freemarkerTool.processString("xxl-code-generator/swagger-ui.ftl", params));
|
||||||
|
result.put("elementui", freemarkerTool.processString("xxl-code-generator/element-ui.ftl", params));
|
||||||
|
result.put("bootstrap", freemarkerTool.processString("xxl-code-generator/bootstrap.ftl", params));
|
||||||
|
|
||||||
|
//mybatis old
|
||||||
result.put("controller", freemarkerTool.processString("xxl-code-generator/controller.ftl", params));
|
result.put("controller", freemarkerTool.processString("xxl-code-generator/controller.ftl", params));
|
||||||
result.put("service", freemarkerTool.processString("xxl-code-generator/service.ftl", params));
|
result.put("service", freemarkerTool.processString("xxl-code-generator/service.ftl", params));
|
||||||
result.put("service_impl", freemarkerTool.processString("xxl-code-generator/service_impl.ftl", params));
|
result.put("service_impl", freemarkerTool.processString("xxl-code-generator/service_impl.ftl", params));
|
||||||
result.put("dao", freemarkerTool.processString("xxl-code-generator/dao.ftl", params));
|
result.put("dao", freemarkerTool.processString("xxl-code-generator/dao.ftl", params));
|
||||||
result.put("mybatis", freemarkerTool.processString("xxl-code-generator/mybatis.ftl", params));
|
result.put("mybatis", freemarkerTool.processString("xxl-code-generator/mybatis.ftl", params));
|
||||||
result.put("model", freemarkerTool.processString("xxl-code-generator/model.ftl", params));
|
result.put("model", freemarkerTool.processString("xxl-code-generator/model.ftl", params));
|
||||||
|
//jpa
|
||||||
result.put("entity", freemarkerTool.processString("xxl-code-generator/entity.ftl", params));
|
result.put("entity", freemarkerTool.processString("xxl-code-generator/entity.ftl", params));
|
||||||
result.put("swaggerui", freemarkerTool.processString("xxl-code-generator/swagger-ui.ftl", params));
|
|
||||||
result.put("repository", freemarkerTool.processString("xxl-code-generator/repository.ftl", params));
|
result.put("repository", freemarkerTool.processString("xxl-code-generator/repository.ftl", params));
|
||||||
result.put("jpacontroller", freemarkerTool.processString("xxl-code-generator/jpacontroller.ftl", params));
|
result.put("jpacontroller", freemarkerTool.processString("xxl-code-generator/jpacontroller.ftl", params));
|
||||||
|
//jdbc template
|
||||||
result.put("jtdao", freemarkerTool.processString("xxl-code-generator/jtdao.ftl", params));
|
result.put("jtdao", freemarkerTool.processString("xxl-code-generator/jtdao.ftl", params));
|
||||||
result.put("jtdaoimpl", freemarkerTool.processString("xxl-code-generator/jtdaoimpl.ftl", params));
|
result.put("jtdaoimpl", freemarkerTool.processString("xxl-code-generator/jtdaoimpl.ftl", params));
|
||||||
|
//beetsql
|
||||||
result.put("beetlmd", freemarkerTool.processString("xxl-code-generator/beetlmd.ftl", params));
|
result.put("beetlmd", freemarkerTool.processString("xxl-code-generator/beetlmd.ftl", params));
|
||||||
result.put("beetlentity", freemarkerTool.processString("xxl-code-generator/beetlentity.ftl", params));
|
result.put("beetlentity", freemarkerTool.processString("xxl-code-generator/beetlentity.ftl", params));
|
||||||
result.put("beetlcontroller", freemarkerTool.processString("xxl-code-generator/beetlcontroller.ftl", params));
|
result.put("beetlcontroller", freemarkerTool.processString("xxl-code-generator/beetlcontroller.ftl", params));
|
||||||
|
//mybatis plus
|
||||||
result.put("elementui", freemarkerTool.processString("xxl-code-generator/element-ui.ftl", params));
|
result.put("pluscontroller", freemarkerTool.processString("xxl-code-generator/pluscontroller.ftl", params));
|
||||||
result.put("bootstrap", freemarkerTool.processString("xxl-code-generator/bootstrap.ftl", params));
|
result.put("plusmapper", freemarkerTool.processString("xxl-code-generator/plusmapper.ftl", params));
|
||||||
|
|
||||||
// 计算,生成代码行数
|
// 计算,生成代码行数
|
||||||
int lineNum = 0;
|
int lineNum = 0;
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ tomcat:
|
|||||||
uri-encoding: UTF-8
|
uri-encoding: UTF-8
|
||||||
max-threads: 10
|
max-threads: 10
|
||||||
background-processor-delay: 30
|
background-processor-delay: 30
|
||||||
|
basedir: ${user.home}/tomcat/
|
||||||
spring:
|
spring:
|
||||||
banner:
|
banner:
|
||||||
charset: UTF-8
|
charset: UTF-8
|
||||||
|
|||||||
@@ -33,12 +33,13 @@ $(function () {
|
|||||||
$('#btnGenCode').click(function () {
|
$('#btnGenCode').click(function () {
|
||||||
|
|
||||||
var tableSql = ddlSqlArea.getValue();
|
var tableSql = ddlSqlArea.getValue();
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: 'POST',
|
type: 'POST',
|
||||||
url: base_url + "/genCode",
|
url: base_url + "/genCode",
|
||||||
data: {
|
data: {
|
||||||
"tableSql": tableSql
|
"tableSql": tableSql,
|
||||||
|
"packageName":$("#packageName").val(),
|
||||||
|
"authorName":$("#authorName").val()
|
||||||
},
|
},
|
||||||
dataType: "json",
|
dataType: "json",
|
||||||
success: function (data) {
|
success: function (data) {
|
||||||
@@ -54,9 +55,6 @@ $(function () {
|
|||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
codeData = data.data;
|
|
||||||
genCodeArea.setValue(codeData.swaggerui);
|
|
||||||
genCodeArea.setSize('auto', 'auto');
|
|
||||||
} else {
|
} else {
|
||||||
layer.open({
|
layer.open({
|
||||||
icon: '2',
|
icon: '2',
|
||||||
@@ -171,5 +169,17 @@ $(function () {
|
|||||||
genCodeArea.setSize('auto', 'auto');
|
genCodeArea.setSize('auto', 'auto');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
$('#pluscontroller').click(function () {
|
||||||
|
if(!$.isEmptyObject(codeData)) {
|
||||||
|
genCodeArea.setValue(codeData.pluscontroller);
|
||||||
|
genCodeArea.setSize('auto', 'auto');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$('#plusmapper').click(function () {
|
||||||
|
if(!$.isEmptyObject(codeData)) {
|
||||||
|
genCodeArea.setValue(codeData.plusmapper);
|
||||||
|
genCodeArea.setSize('auto', 'auto');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
<!-- Ionicons -->
|
<!-- Ionicons -->
|
||||||
<link href="//cdn.staticfile.org/ionicons/4.1.2/css/ionicons.min.css" rel="stylesheet">
|
<link href="//cdn.staticfile.org/ionicons/4.1.2/css/ionicons.min.css" rel="stylesheet">
|
||||||
|
|
||||||
<link href="//cdn.staticfile.org/codemirror/5.38.0/codemirror.min.css" rel="stylesheet">
|
<link href="//cdn.staticfile.org/codemirror/5.42.0/codemirror.min.css" rel="stylesheet">
|
||||||
|
|
||||||
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
||||||
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
||||||
@@ -37,11 +37,11 @@
|
|||||||
<script src="//cdn.staticfile.org/fastclick/1.0.6/fastclick.min.js"></script>
|
<script src="//cdn.staticfile.org/fastclick/1.0.6/fastclick.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/jQuery-slimScroll/1.3.8/jquery.slimscroll.min.js"></script>
|
<script src="//cdn.staticfile.org/jQuery-slimScroll/1.3.8/jquery.slimscroll.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/layer/2.3/layer.js"></script>
|
<script src="//cdn.staticfile.org/layer/2.3/layer.js"></script>
|
||||||
<script src="//cdn.staticfile.org/codemirror/5.38.0/codemirror.min.js"></script>
|
<script src="//cdn.staticfile.org/codemirror/5.42.0/codemirror.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/codemirror/5.38.0/addon/display/placeholder.min.js"></script>
|
<script src="//cdn.staticfile.org/codemirror/5.42.0/addon/display/placeholder.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/codemirror/5.38.0/mode/clike/clike.min.js"></script>
|
<script src="//cdn.staticfile.org/codemirror/5.42.0/mode/clike/clike.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/codemirror/5.38.0/mode/sql/sql.min.js"></script>
|
<script src="//cdn.staticfile.org/codemirror/5.42.0/mode/sql/sql.min.js"></script>
|
||||||
<script src="//cdn.staticfile.org/codemirror/5.38.0/mode/xml/xml.min.js"></script>
|
<script src="//cdn.staticfile.org/codemirror/5.42.0/mode/xml/xml.min.js"></script>
|
||||||
</#macro>
|
</#macro>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
<body style="background-color: #e9ecef">
|
<body style="background-color: #e9ecef">
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<nav class="navbar navbar-dark bg-primary">
|
<nav class="navbar navbar-dark bg-primary btn-lg">
|
||||||
<a class="navbar-brand" href="http://www.bejson.com">BeJSON在线工具站</a>
|
<a class="navbar-brand" href="http://www.bejson.com">BeJSON在线工具站</a>
|
||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
<li class="nav-item active">
|
<li class="nav-item active">
|
||||||
@@ -29,20 +29,21 @@
|
|||||||
<!-- Main jumbotron for a primary marketing message or call to action -->
|
<!-- Main jumbotron for a primary marketing message or call to action -->
|
||||||
<div class="jumbotron">
|
<div class="jumbotron">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>Spring Boot Code Generator!</h1>
|
<h2>Spring Boot Code Generator!</h2>
|
||||||
|
<p class="lead">
|
||||||
基于<code>SpringBoot2</code>+<code>Freemarker</code>的代码生成器,用<code>DDL SQL</code>语句生成<code>JPA</code>/<code>JdbcTemplate</code>/<code>Mybatis</code>/<code>BeetlSQL</code>相关代码,支持<code>mysql</code>/<code>oracle</code>/<code>pgsql</code>三大数据库。以<code>释放双手</code>为目的,各大模板也在陆续补充和优化。欢迎大家多多提交模板和交流想法,如果发现有SQL语句不能识别,请<a href="https://github.com/moshowgame/SpringBootCodeGenerator/issues">留言</a>给我分析,谢谢!
|
基于<code>SpringBoot2</code>+<code>Freemarker</code>的代码生成器,用<code>DDL SQL</code>语句生成<code>JPA</code>/<code>JdbcTemplate</code>/<code>Mybatis</code>/<code>BeetlSQL</code>相关代码,支持<code>mysql</code>/<code>oracle</code>/<code>pgsql</code>三大数据库。以<code>释放双手</code>为目的,各大模板也在陆续补充和优化。欢迎大家多多提交模板和交流想法,如果发现有SQL语句不能识别,请<a href="https://github.com/moshowgame/SpringBootCodeGenerator/issues">留言</a>给我分析,谢谢!
|
||||||
</p>
|
</p>
|
||||||
<div class="input-group mb-3">
|
<div class="input-group mb-3">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text">作者名称</span>
|
<span class="input-group-text">作者名称</span>
|
||||||
</div>
|
</div>
|
||||||
<input type="text" class="form-control" id="authorName" placeholder="大狼狗">
|
<input type="text" class="form-control" id="authorName" name="authorName" placeholder="大狼狗">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group-prepend">
|
||||||
<span class="input-group-text">包名路径</span>
|
<span class="input-group-text">包名路径</span>
|
||||||
</div>
|
</div>
|
||||||
<input type="text" class="form-control" id="packageName" placeholder="com.softdev.system">
|
<input type="text" class="form-control" id="packageName" name="packageName" placeholder="com.softdev.system">
|
||||||
</div>
|
</div>
|
||||||
<textarea id="ddlSqlArea" placeholder="请输入表结构信息..." class="form-control" style="height: 250px;">
|
<textarea id="ddlSqlArea" placeholder="请输入表结构信息..." class="form-control btn-lg" style="height: 250px;">
|
||||||
CREATE TABLE `userinfo` (
|
CREATE TABLE `userinfo` (
|
||||||
`user_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
|
`user_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
|
||||||
`username` varchar(255) NOT NULL COMMENT '用户名',
|
`username` varchar(255) NOT NULL COMMENT '用户名',
|
||||||
@@ -50,73 +51,104 @@ CREATE TABLE `userinfo` (
|
|||||||
PRIMARY KEY (`user_id`)
|
PRIMARY KEY (`user_id`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息'
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息'
|
||||||
</textarea><br>
|
</textarea><br>
|
||||||
<p><button class="btn btn-primary btn-lg" id="btnGenCode" role="button">开始生成 »</button></p>
|
<p><button class="btn btn-primary btn-lg disabled" id="btnGenCode" role="button">开始生成 »</button></p>
|
||||||
<hr>
|
<hr>
|
||||||
<!-- Example row of columns -->
|
<!-- Example row of columns -->
|
||||||
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
|
<div class="row" style="margin-top: 10px;">
|
||||||
<div class="input-group">
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group">
|
||||||
<div class="input-group-text" id="btnGroupAddon">jdbcTemplate</div>
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">通用实体</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="model">entity(set/get)</button>
|
||||||
|
<button type="button" class="btn btn-default" id="beetlentity">entity(lombok)</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group" aria-label="First group">
|
<div class="btn-toolbar col-md-7" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<button type="button" class="btn btn-default" id="jtdaoimpl">daoimpl</button>
|
<div class="input-group">
|
||||||
<button type="button" class="btn btn-default" id="jtdao">dao</button>
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">Mybatis</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="mybatis">mybatis</button>
|
||||||
|
<button type="button" class="btn btn-default" id="dao">dao</button>
|
||||||
|
<button type="button" class="btn btn-default" id="service">service</button>
|
||||||
|
<button type="button" class="btn btn-default" id="service_impl">service_impl</button>
|
||||||
|
<button type="button" class="btn btn-default" id="controller">controller</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
|
<!-- Example row of columns -->
|
||||||
<div class="input-group">
|
<div class="row" style="margin-top: 10px;">
|
||||||
<div class="input-group-prepend">
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<div class="input-group-text" id="btnGroupAddon">BeetlSQL</div>
|
<div class="input-group">
|
||||||
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">MybatisPlus</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="plusmapper">mapper</button>
|
||||||
|
<button type="button" class="btn btn-default" id="pluscontroller">controller</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group" aria-label="First group">
|
|
||||||
<button type="button" class="btn btn-default" id="beetlentity">entity(lombok)</button>
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<button type="button" class="btn btn-default" id="beetlmd">beetlmd</button>
|
<div class="input-group">
|
||||||
<button type="button" class="btn btn-default" id="beetlcontroller">beetlcontroller</button>
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">UI</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="swaggerui">swagger-ui</button>
|
||||||
|
<button type="button" class="btn btn-default" id="element-ui">element-ui</button>
|
||||||
|
<button type="button" class="btn btn-default" id="bootstrap">bootstrap-ui</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
|
|
||||||
<div class="input-group">
|
<div class="row" style="margin-top: 10px;">
|
||||||
<div class="input-group-prepend">
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<div class="input-group-text" id="btnGroupAddon">UI</div>
|
<div class="input-group">
|
||||||
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">BeetlSQL</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="beetlmd">beetlmd</button>
|
||||||
|
<button type="button" class="btn btn-default" id="beetlcontroller">beetlcontroller</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group" aria-label="First group">
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<button type="button" class="btn btn-default" id="swaggerui">swagger-ui</button>
|
<div class="input-group">
|
||||||
<button type="button" class="btn btn-default" id="element-ui">element-ui</button>
|
<div class="input-group-prepend">
|
||||||
<button type="button" class="btn btn-default" id="bootstrap">bootstrap</button>
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">JPA</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
|
<button type="button" class="btn btn-default" id="entity">jpa-entity</button>
|
||||||
|
<button type="button" class="btn btn-default" id="repository">repository</button>
|
||||||
|
<button type="button" class="btn btn-default" id="jpacontroller">controller</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
|
<div class="row" style="margin-top: 10px;">
|
||||||
<div class="input-group">
|
<div class="btn-toolbar col-md-5" role="toolbar" aria-label="Toolbar with button groups">
|
||||||
<div class="input-group-prepend">
|
<div class="input-group">
|
||||||
<div class="input-group-text" id="btnGroupAddon">JPA</div>
|
<div class="input-group-prepend">
|
||||||
|
<div class="btn btn-secondary disabled" id="btnGroupAddon">JdbcTemplate</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="btn-group" role="group" aria-label="First group">
|
||||||
<div class="btn-group mr-2" role="group" aria-label="First group">
|
<button type="button" class="btn btn-default" id="jtdaoimpl">daoimpl</button>
|
||||||
<button type="button" class="btn btn-default" id="entity">entity</button>
|
<button type="button" class="btn btn-default" id="jtdao">dao</button>
|
||||||
<button type="button" class="btn btn-default" id="repository">repository</button>
|
|
||||||
<button type="button" class="btn btn-default" id="jpacontroller">controller</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
|
|
||||||
<div class="input-group">
|
|
||||||
<div class="input-group-prepend">
|
|
||||||
<div class="input-group-text" id="btnGroupAddon">Mybatis</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-group mr-2" role="group" aria-label="First group">
|
|
||||||
<button type="button" class="btn btn-default" id="model">model(set/get)</button>
|
|
||||||
<button type="button" class="btn btn-default" id="mybatis">mybatis</button>
|
|
||||||
<button type="button" class="btn btn-default" id="dao">dao</button>
|
|
||||||
<button type="button" class="btn btn-default" id="service">service</button>
|
|
||||||
<button type="button" class="btn btn-default" id="service_impl">service_impl</button>
|
|
||||||
<button type="button" class="btn btn-default" id="controller">controller</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
<textarea id="genCodeArea" class="form-control" ></textarea>
|
<textarea id="genCodeArea" class="form-control btn-lg" ></textarea>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -126,7 +158,7 @@ CREATE TABLE `userinfo` (
|
|||||||
<footer>
|
<footer>
|
||||||
<footer class="bd-footer text-muted" role="contentinfo">
|
<footer class="bd-footer text-muted" role="contentinfo">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<strong>Copyright © 2018-${.now?string('yyyy')}
|
<strong>Copyright © ${.now?string('yyyy')}-2022
|
||||||
<p><a href="https://github.com/moshowgame/SpringBootCodeGenerator">SpringBootCodeGenerator</a>由<a href="https://blog.csdn.net/moshowgame" target="_blank">@Moshow/大狼狗/郑锴</a> 开发维护. 由 <a href="https://www.bejson.com">BeJson三叔 </a> 提供在线版本。</p>
|
<p><a href="https://github.com/moshowgame/SpringBootCodeGenerator">SpringBootCodeGenerator</a>由<a href="https://blog.csdn.net/moshowgame" target="_blank">@Moshow/大狼狗/郑锴</a> 开发维护. 由 <a href="https://www.bejson.com">BeJson三叔 </a> 提供在线版本。</p>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
|
package ${packageName}.controller;
|
||||||
|
|
||||||
|
import ${packageName}.entity.${classInfo.className};
|
||||||
|
import ${packageName}.repository.${classInfo.className}Repository;
|
||||||
import org.springframework.data.domain.Example;
|
import org.springframework.data.domain.Example;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|||||||
@@ -0,0 +1,75 @@
|
|||||||
|
package ${packageName}.controller;
|
||||||
|
|
||||||
|
import ${packageName}.entity.${classInfo.className};
|
||||||
|
import ${packageName}.mapper.${classInfo.className}Mapper;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ${classInfo.classComment}
|
||||||
|
* @author ${authorName} ${.now?string('yyyy-MM-dd')}
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/${classInfo.className?uncap_first}")
|
||||||
|
public class ${classInfo.className}Controller {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ${classInfo.className}Mapper ${classInfo.className?uncap_first}Mapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增或编辑
|
||||||
|
*/
|
||||||
|
@PostMapping("/save")
|
||||||
|
public Object save(${classInfo.className} ${classInfo.className?uncap_first}){
|
||||||
|
return ${classInfo.className?uncap_first}Mapper.insert(${classInfo.className?uncap_first});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除
|
||||||
|
*/
|
||||||
|
@GetMapping("/delete")
|
||||||
|
public Object delete(int id){
|
||||||
|
${classInfo.className} ${classInfo.className?uncap_first} = ${classInfo.className?uncap_first}Mapper.selectOne(new QueryWrapper<${classInfo.className}>().eq("id",id))
|
||||||
|
if(${classInfo.className?uncap_first}!=null){
|
||||||
|
return ApiReturnUtil.success(${classInfo.className?uncap_first});
|
||||||
|
}else{
|
||||||
|
return ApiReturnUtil.error("没有找到该对象");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询
|
||||||
|
*/
|
||||||
|
@GetMapping("/find")
|
||||||
|
public Object find(int id){
|
||||||
|
${classInfo.className} ${classInfo.className?uncap_first} = ${classInfo.className?uncap_first}Mapper.selectOne(new QueryWrapper<${classInfo.className}>().eq("id",id))
|
||||||
|
if(${classInfo.className?uncap_first}!=null){
|
||||||
|
return ApiReturnUtil.success(${classInfo.className?uncap_first});
|
||||||
|
}else{
|
||||||
|
return ApiReturnUtil.error("没有找到该对象");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分页查询
|
||||||
|
*/
|
||||||
|
@PostMapping("/list")
|
||||||
|
public Object list(${classInfo.className} ${classInfo.className?uncap_first},
|
||||||
|
@RequestParam(required = false, defaultValue = "0") int pageNumber,
|
||||||
|
@RequestParam(required = false, defaultValue = "10") int pageSize) {
|
||||||
|
//分页构造器
|
||||||
|
Page<${classInfo.className}> page = new Page<${classInfo.className}>(pageNumber,pageSize);
|
||||||
|
//条件构造器
|
||||||
|
QueryWrapper<${classInfo.className}> queryWrapperw = new QueryWrapper<${classInfo.className}>(${classInfo.className?uncap_first});
|
||||||
|
//执行分页
|
||||||
|
IPage<${classInfo.className}> pageList = certPersonMapper.selectPage(page, queryWrapperw);
|
||||||
|
//返回结果
|
||||||
|
return ApiReturnUtil.success(pageList);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package ${packageName}.mapper;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ${classInfo.classComment}
|
||||||
|
* @author ${authorName} ${.now?string('yyyy-MM-dd')}
|
||||||
|
*/
|
||||||
|
@Repository
|
||||||
|
public interface ${classInfo.className}Mapper extends BaseMapper<${classInfo.className}> {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,3 +1,6 @@
|
|||||||
|
package ${packageName}.mapper;
|
||||||
|
import ${packageName}.entity.${classInfo.className};
|
||||||
|
|
||||||
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
|
<#if classInfo.fieldList?exists && classInfo.fieldList?size gt 0>
|
||||||
<#list classInfo.fieldList as fieldItem >
|
<#list classInfo.fieldList as fieldItem >
|
||||||
<#if fieldItem.fieldClass == "Date">
|
<#if fieldItem.fieldClass == "Date">
|
||||||
@@ -5,7 +8,6 @@
|
|||||||
</#if>
|
</#if>
|
||||||
</#list>
|
</#list>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import org.springframework.data.jpa.repository.Query;
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
|||||||
Reference in New Issue
Block a user