• SpringBoot项目生成
    springbootcrud

    # 2.1.6版本说明 1. 完善了README关于swagger的部分 2. 修复生成时不包含swagger时,PageWrap类编译报错问题 3. 完善了.gitignore内容 # 2.1.5版本说明 1. 完善分页排序功能,过滤掉了不正确的排序对象 2. 完善了swagger参数 ##### swagger注意事项 在使用swagger测试分页接口时,应注意model参数值,model参数为查询条件,默认情况下,使用mybatis框架时通过ExampleBuilder已自动过滤掉了空值,但在springjpa框架下没有过滤空值,所以使用springjpa时,请注意删除model中的空值参数。 # 2.1.4版本说明 修复数据库连接地址不正确的BUG # 2.1.3版本说明 1. 在此版本之前,mybatis查询时条件为空串也会当作SQL条件来处理,此版本通过修改ExampleBuilder类过滤了空串条件。如果你的确需要将空串作为SQL条件,你可以使用以下代码来完成: ```java <example builder>.buildExamplePack(<condition model>).getCriteria() .andNameEqualTo(""); ``` 2. 去掉数据库连接的serverTimezone参数,防止程序设定与数据库设定的时区不一致导致时间值不正确。 # 2.0更新内容说明 ### 一、删除MyBatisUtil类,新增ExampleBuilder类,可更方便的扩展查询条件 在1.x版本,选用mybatis作为持久层,mybatis example封装类辅助我们实现CRUD时,框架中提供的 **MyBatisUtil** 类只实现了精准查询,而如果需要实现模糊查询或Range操作需要自行构建Example实例,我们在2.0版本优化了此项内容。为此我们在2.0添加了 **ExampleBuilder** 类,她可以帮助我们更容易的在原有条件下新增新的条件。她提供以下内容: ###### i. 提供构建自身实例的静态方法 ```java public static <E,C> ExampleBuilder<E,C> create(Class<E> exampleClass, Class<C> criteriaClass) { return new ExampleBuilder<>(exampleClass, criteriaClass); } ``` 为了让构建ExampleBuilder实例得到更好的维护,我们通过create静态方法来构建,避免重复new操作。 ###### ii. 提供将实体类转为Example类的实例方法 ```java public ExamplePack<E,C> buildExamplePack(Object model) {} ``` 方法接收一个装载条件的实体类,返回Example的包装类 ###### iii. 提供包装Example和Criteria的内部类 ```java public static class ExamplePack<E, C> { private E example; private C criteria; } ``` 通过 **buildExamplePack** 实例方法可获取该内部类实例,进而可获取Example和Criteria实例进行其它操作。 ### 二、增加分页接口,接口增加@RequestBody注解 为了满足前后端分离的需求,2.0版本接口增加了 **@RequestBody** 注解。在1.x版本中我们没有提供分页接口,在2.0版本中我们补充了此项内容,以合理的方式封装了分页参数对象 **PageWrap** ,通过该类,我们可以很方便的实现分页,单/多个字段排序的需求。 ##### core/model/PageWrap.java ```java @Data @ApiModel("分页对象") public class PageWrap<M> { @ApiModelProperty("条件参数") private M model; @ApiModelProperty("目标页") private int page; @ApiModelProperty("一页多少行") private int capacity; @ApiModelProperty("排序参数") private List<SortData> sorts; @Data @ApiModel("排序对象") public static class SortData { @ApiModelProperty("排序字段") private String property; @ApiModelProperty("排序方向(ASC:升序,DESC:降序)") private String direction; } } ``` 可以看到PageWrap中通过泛型定义了条件参数对象和排序内部类,分别用于用于接受查询条件和排序字段/方向。 ### 三、警告消除 在1.x版本中,分页类PageData、Service实现类等均有警告代码。在2.0中,我们尽可能的消除了这些警告。 ### 四、视图层封装发送移步请求的$.request方法 为了可以统一处理ajax请求,在head.html/head.jsp中,我们封装了$.request方法,如下: ##### head.html/head.jsp ```javascript (function () { $.request = function (param) { param.url = basePath + param.url; param.method = param.method || 'POST'; param.data = param.data == null ? null : JSON.stringify(param.data); param.contentType = param.contentType || 'application/json'; $.ajax(param) }; })() ``` # 从1.x升级到2.0 ##### i. 升级操作 - 添加PageWrap类至项目中 - 将2.0中的 PageData 覆盖当前项目中的 PageData - (如使用的是MyBatis & MyBatis Example)保留1.x中的 MyBatisUtil 类,将2.0中的 ExampleBuilder 类拷贝至项目中,接口实现可保持不变 - (如使用了JSP或Thymeleaf)将2.0中head.html/head.jsp中$.request封装部分拷贝至对应位置,原发送接口方式可保持不变,在新的开发任务中使用$.request来处理异步请求。 ##### ii. 原有接口处理 原有接口可保持不变 ##### iii. 新接口的开发 新接口可以通过接口生成2.0版本进行快速开发。

    29次收藏 3900次使用
    2019-09-30 03:00
  • SpringCloud框架搭建
    springcloud

    # 说明 该套模版组完成了springcloud最简单的`消费端->eureka->服务`的过程。适用于对springcloud的初步学习,了解springcloud的基本搭建步骤。 # 使用步骤 1. 在详情页面或模版组页面点击立即生成 2. 配置基础报名、项目名称等,如下图所示 ![1.png](/resources/template/62bea442-7a4a-4efc-9991-e1388dd4df47.png) 3. 点击生成代码 4. 下载 # 启动项目 **1. 将生成好的代码下载到本地后,通过idea打开。然后设置idea在这个工作空间的maven,如下图:** ![2.png](/resources/template/76008d27-78cb-4fb2-8bf9-aa97f08b7805.png) **2. maven设置后,你可以看到项目目录如下图** ![3.png](/resources/template/e31cbc9c-f747-4312-a240-e52ac17b2e30.png) **3. 在idea中运行clean install,如下图** ![4.png](/resources/template/53b97c07-5f3a-4a7e-aaa7-f3d5337e592a.png) **4. 启动注册中心,如下图所示** ![5.png](/resources/template/ca520234-65cd-42e7-a8ae-75d4cf2253d3.png) 启动成功后如下图: ![6.png](/resources/template/ba59cfaf-d356-4170-a643-14e2b5e1d65f.png) **5. 启动示例服务,如下图所示** ![7.png](/resources/template/78a484fa-51dd-4e6e-8a97-3daedda73898.png) **6. 启动API工程** ![8.png](/resources/template/01409798-d317-4f99-8cdc-5d63d30653e5.png) **7. 到这里,注册中心、服务者和消费者(API)都成功启动了,则可以访问API工程的hello接口进行校验,如下图** ![9.png](/resources/template/67536343-0591-4e5c-bfe9-359d544a7dc8.png) > **注意:默认情况下访问路径为 `http://localhost:7000/sample/hello`,如果修改了示例服务名称,该地址也会发生变化。如修改为`demo`,则访问路径应为`/demo/hello`** 到这里就完成了项目的启动,如有不明白的地方可以加入懒猴子CGQQ交流群:`877957236` # 框架说明 - pom.xml(项目根目录)用于设置通用的依赖和包版本管理。 - codes-core工程是项目中的核心工程,用于存放异常、工具类等。 - codes-api工程是web工程,用于提供项目接口。 - codes-eureka工程是注册中心工程。 - codes-sample工程是示例服务工程。 - codes-sample/sample-client工程是服务客户端工程,用于提供给客户端给其他应用调用。 - codes-sample/sample-service工程是服务实现工程,用于提供服务的具体实现。 # 常见问题 **1. 是否包含网关?** > 未包含 **2. 是否适合企业项目研发?** > 具有参考价值,但不适合生成后直接用户企业项目的研发,后期会制作完善版本。

    11次收藏 697次使用
    2019-09-30 00:10
  • 梦亚方舟规范模版
    梦亚方舟

    # 说明 这是为梦亚方舟同学编写的从Controller-Mapper.xml的规范代码模版组,帮助他快速的进行研发,早点下班洗澡吃鸡!!!

    7次收藏 501次使用
    2019-09-29 22:57
  • SpringMVC框架搭建
    框架搭建springmvc

    # 介绍 这是一套SpringMVC框架脚手架,支持以下技术栈: - MyBatis、Hibernate(持久层框架) - log4j2、logback(日志框架) - Swagger(一个可以可视化接口信息的插件) - Lombok(一个可以帮你省略Getter/Setter、Logger对象定义、构造方法等代码的插件) - JSP(动态页面) - JUnit(单元测试) 你可以根据自己的喜好选择技术栈,即刻生成立即可用的Spring MVC框架。代码生成后你可以查看README.md文件,文件里详细的介绍了框架中几个必要文件和说明了各环节的处理方式。 # 简单了解一下框架内置的处理 #### 一、全局异常处理 为了避免接口出错导致无返回或错误页面不友好,框架进行了全局异常捕获,接口出现错误时分为以下两种情况: 1. 当接口返回的是一串JSON时,全局捕获会自动封装一串表示失败的JSON返回。 2. 当接口返回的是一个页面时,全局捕获会自动跳转至error页面(框架中内含error页) #### 二、JUnit单元测试 为了更方便的进行单元测试,框架内含了BaseTest类,测试类只需要继承该类即可实现单元测试。如下 ![1.png](/resources/template/1632c543-9596-4bc4-8644-eee7ff93c9f1.png) #### 三、全局接口返回对象 当接口需要返回一串JSON时,我们通常会为其定义一个全局的对象作为返回数据结构。框架中内含了这个对象,你也可以自行调整,例如把success属性修改为code,增加errorData,修改构造方式等。现有的对象结构如下,提供了两个success和两个failed静态方法: ![2.png](/resources/template/f6f5e855-5f5f-4bce-b6de-e99dc214ff71.png) # 项目启动后你可以看到你选择的技术栈 如果你集成了JSP,那么访问项目根目录,你可以看到以下页面 ![3.png](/resources/template/d3ade3cf-973b-427b-ba14-d2f79a41d694.png) 你也可以通过框架中的README.md文件查看 ![4.png](/resources/template/b181b6bf-af1d-490c-8d52-518e9be083ba.png) # 为了快速的了解本套框架,我添加了示例功能 除了有README.md文件对框架详细的介绍外,我还增加了示例功能来帮助你快速的了解框架,如果你集成了JSP,那么你可以访问`/user/manage`来查看示例功能,示例功能做了一套简单的增删查改业务,如下: ![5.png](/resources/template/f6146020-5dbe-4d07-b68e-118b68eaf01b.png) # 如果你希望集成更多的内容 如果你希望这套框架集成更多的内容,你可以在评论区留言。收到留言后,我会第一时间回复并尽快集成。 # 常见问题 #### 一、更改数据库用户名无效? 在application.properties中,修改username为root,但最终注入的值为电脑用户名。解决方案如下: 1. 修改application.properties中的username为user 2. 修改spring-mybatis.xml中的${username}为${user}即可 由于这不是必然事件,所以模版内容暂不做调整,感谢`耿耿余淮`(QQ昵称)提供的支持! 感谢你的阅读!

    7次收藏 428次使用
    2020-03-08 14:48
  • Dubbo框架搭建
    dubbo

    # 说明 这是一套Dubbo框架模版,完成了`消费者->zookeeper->提供者`的搭建过程。生成好后可直接运行。项目消费者和提供者均基于SpringBoot,配置简单。 # 使用步骤 1. 选择该模版组 2. 点击录入元数据(无需录入数据) 3. 点击生成代码 4. 下载代码 # 项目启动 在项目启动之前,你需要先安装好zookeeper并且启动,具体内容可以参考博文[《Dubbo-ZooKepper的安装和使用》](https://blog.csdn.net/u012627861/article/details/83003334)。 1. 将工程导入idea,导入成功后如下图: ![1.png](/resources/template/aa70ce8f-ff75-47f8-a601-bf2257767773.png) 2. 配置好maven 3. 启动提供者工程,如下图 ![2.png](/resources/template/85eb31e1-88ea-410f-b89a-03f70aa8ff20.png) 4. 启动消费者工程,如下图 ![3.png](/resources/template/d7a2ffed-f88e-45d3-a418-ee9fc13599d7.png) 5. 访问http://localhost:8081/welcome,如下图表示成功 ![4.png](/resources/template/4eae9259-8daf-4969-933b-6fa6cd970f9d.png) 这样就成功的搭建好了一个dubbo框架。框架模版会不断的完善。对网站或模版有任何问题可以加入懒猴子CG的QQ交流群:`877957236`。

    7次收藏 293次使用
    2019-09-30 03:35
  • 企业数据管理系统(研发中)

    # 敬请期待

    1次收藏 27次使用
    2020-06-21 02:22
  • 个人博客系统(研发中)

    # 敬请期待

    1次收藏 12次使用
    2020-06-21 02:23
  • Mybatis Generator
    mybatis generator

    # v1.2.2说明 完善mapper.xml中insertSelective自增主键的处理 # v1.2.1说明 完善了mapper.xml的生成逻辑 --- Mybatis Example是官网推出的一套CRUD构建方案,可以快速完成单表的CRUD操作,为此官网提供了Mybatis Generator来生成这一套内容,在这里懒猴子CG通过简单的几个模版来实现这一套内容。由于笔者时间关系,复合主键暂不支持。

    8次收藏 1901次使用
    2019-09-30 02:19
  • Struts2框架搭建
    框架搭建struts2

    快速搭建Struts2框架,根据你的需求挑选配置项即可快速构建一套即刻可用的Struts2框架。如果你需要使用此套框架,那么你需要安装以下环境: - Java JDK - Maven - Tomcat 代码生成后,导入编辑器即可运行。具体步骤如下: #### 一、生成代码 && 下载代码 ![1.png](/resources/template/0abeca33-b5a4-476d-9437-b7fdeb321d4b.png) #### 二、导入编辑器 && 配置Maven && 添加Tomcat,IDEA编辑器如下 下图为配置Maven ![2.png](/resources/template/f5d80a70-0fa5-4af1-970c-f79094ee9560.png) Maven配置后拉取jar包(mvn clean install),然后配置Tomcat 下图为配置Tomcat ![3.png](/resources/template/8805bef1-2905-4261-91bf-5f13a9779e6f.png) #### 三、访问项目(具体路径查看tomcat) 下图为访问项目根路径的配置说明页面 ![4.png](/resources/template/efb08abb-ff1f-47d1-9353-9200409a57ab.png) 下图为示例功能(用户管理)页面 ![5.png](/resources/template/72a7002b-1920-4d4f-89f8-b6db2f174fbe.png)

    2次收藏 58次使用
    2020-03-04 19:50
  • SpringBoot Maven多模块项目生成

    此模版基于SpringBoot框架将项目合理的拆分为多个maven模块,适用于多个web共用service的站点。模版提供内容如下: 1. 提供可选的持久层框架(可选MyBatis、SpringJPA) 2. 根据你选择的持久层框架提供分页、排序功能的封装 3. 提供完善的API文档处理(可选Swagger-UI、Swagger-Bootstrap-UI) 4. 提供丰富的视图层处理方式(可选Thymeleaf、JSP或不使用任何视图层) 5. 提供可选的jUnit单元测试 6. 提供可选的打包方式(JAR或WAR) 7. 提供可选的配置文件类型(YAML或Properties) 8. 提供基于logback的日志配置 9. 提供可靠的全局异常处理 # 基础接口生成 你可以通过【接口生成】下的模版完成基础接口的代码编写。 # 添加新的WEB工程 我们会提供构建WEB工程的模版,预计在10月5日完成。 # 使用JSP的额外配置 如果视图层使用的是JSP,则很有可能碰到无法访问页面的问题。此时你需要配置Working directory,如下图: 1. 打开启动类的配置 ![0.png](/resources/template/ab89991b-797e-4b40-afd9-461255c8b865.png) 2. 设置Working directory为对应的web工程 ![1.png](/resources/template/7ebf0840-6963-49ce-bc1f-0d12494f7b79.png) # 联系我们 如果你在使用此模版时遇到任何问题,可以加入QQ群877957236进行咨询。

    1次收藏 25次使用
    2020-09-28 19:55

SpringBoot CRUD接口代码生成
12
29

版本号:v2.0.5 | 3900次使用
2020-10-07 11:31
Javaspringbootcrud

    评论

    • 快捷评论:
    • 666
    • 支持一下
    • 请你一定要继续完善
    • 不错,再完善完善就更好了