本项目地址:https://github.com/OceanBBBBbb/ocean-code-generator

项目简介

ocean-code-generator采用(适用):     ,并使用maven构建。
支持自动生成一个业务逻辑增删改查的后端controllerservicedao的代码,
前端列表查询和单条数据的增删改查的vue代码。
这里是后端代码,前端在https://github.com/OceanBBBBbb/ocean-code-generator-fe。
如果你不会前端,也可以通过swagger实现整个流程!

项目结构

  • apply 系统应用模块(系统启动入口)

    • config 配置类信息
    • app 系统应用的业务模块(我在里面自动生成了一个test应用,对应了它的增删改查业务)
    • resources 静态资源
      • config properties配置
      • template 模板文件,其中admin是后端代码模板,front是前端,auto-vue是临时放自动生成的前端代码
    • testfiles 放的是test测试生成的建表语句和其他
    • 其他配置
  • common 公共模块

    • exception 项目统一异常的处理
    • mapper mapstruct的通用mapper
    • swagger2 接口文档配置
    • utils 系统通用工具类
  • generator 系统代码生成模块

    • 一个单独整套的代码生成实现

使用说明

1.配置生成器

项目启动时,jpa将会在所连库自动创建ocean_gen_config表,这是代码生成配置表。 需要先配置这个表的信息。注意这里的前端文件生成路径是绝对路径。 

2.选择生成参数

然后自定义生成参数,哪些展示,展示为什么名,哪些需要支持精确或模糊查询等等。 

3.代码生成

请求生成代码接口,生成代码。

使用建议

新项目
当新建一个项目时,可以直接使用整个工程,再在apply里添加你的业务逻辑,实现快速开发。
只引入自动生成
  当只要引入自动生成时,将generator模块加入到你的项目子模块,将apply下的模版文件
引入到你的工程里,将common中用到的工具类,加入到你的工程中并供generator调用。
这样就实现了将你的工程引入自动代码生成。可以修改模板ftl文件,自定义生成。
演示接口调用步骤和内容

1,/api/genConfig,查看生成器配置;
2,/api/genConfig,配置生成器;
3,/api/generator/tables,查询数据库表;
4,/api/generator/columns,查表字段信息;
5,/api/generator,根据表名和字段配置生成代码。

感谢

需要特别感谢eladmin项目,本生成器,很多内容抽离自该项目。
eladmin是一个非常强大的管理平台开源系统,项目地址:https://github.com/elunez/eladmin

Java代码自动生成,生成前端vue+后端controller、service、dao代码,根据表名自动生成增删改查功能的更多相关文章

  1. Online Coding开发模式 (通过在线配置实现一个表模型的增删改查功能,无需写任何代码)

    JEECG 智能开发平台. 开发模式由代码生成器转变为Online Coding模式                      (通过在线配置实现一个表模型的增删改查功能,无需一行代码,支持用户自定义 ...

  2. Mock.js简易教程,脱离后端独立开发,实现增删改查功能(转)

    在我们的生产实际中,后端的接口往往是较晚才会出来,并且还要写接口文档,于是我们的前端的许多开发都要等到接口给我们才能进行,这样对于我们前端来说显得十分的被动,于是有没有可以制造假数据来模拟后端接口呢, ...

  3. mock.js 的用法 -- 脱离后端独立开发,实现增删改查功能

    在我们的生产实际中,后端的接口往往是较晚才会出来,并且还要写接口文档,于是我们的前端的许多开发都要等到接口给我们才能进行,这样对于我们前端来说显得十分的被动,于是有没有可以制造假数据来模拟后端接口呢, ...

  4. java学习3创建学生属性:学号、姓名、电话 完全实现对象集合的增删改查。(控制台来做)

    首先创建一个student类其中包括get,set与构造函数 /** * */package work2; /** * @author Administrator * */public final c ...

  5. 【java学习】spring mvc 公共dao的实现,定义基本的增删改查

    接口类: package com.blog.db.dao; import com.blog.util.Pagination; import java.util.List; public interfa ...

  6. 动态网站项目(Dynamic Web Project)CRUD(增删改查)功能的实现(mvc(五层架构)+jdbc+servlet+tomcat7.0+jdk1.8),前端使用JSP+JSTL+EL组合

    代码分享链接 https://pan.baidu.com/s/1UM0grvpttHW9idisiqa6rA    提取码:hx7c 图示           项目结构 1.SelectAllUser ...

  7. Vue实现增删改查功能

    简单的表单CURD功能demo <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...

  8. datatables 前端表格插件 增删改查功能

    官方网站:http://datatables.club/example/<!-- DataTables CSS -->css引入的<link rel="stylesheet ...

  9. 后台代码对iBatis配置文件中具体的sql语句的调用实现(被封装的增删改查)

    using IBatisNet.Common.Exceptions; using IBatisNet.DataAccess; using IBatisNet.DataAccess.DaoSession ...

随机推荐

  1. 《疯狂java-突破程序员基本功的16课 》笔记总结

    本人最近读完<疯狂java-突破程序员基本功的16课 >读完后,感觉对java基础又有了新的认识,在这里总结一下:一.数组与内存控制 1.1 数组初始化     java语言的数组是静态的 ...

  2. grunt前端自动构建工具初级使用

    好啦,今天来和大家谈谈grunt 害怕与社会脱轨,所以自己研究了一下,简单说说我梳理完的grunt 首先要知道为什么使用grunt 1.grunt可以检测js.css文件内部是否有错误 2. grun ...

  3. redis之Scan

    scan 相比keys 具备有以下特点:1.复杂度虽然也是 O(n),但是它是通过游标分步进行的,不会阻塞线程;2.提供 limit 参数,可以控制每次返回结果的最大条数,limit 只是一个 hin ...

  4. Kubernetes入门学习--在Ubuntu16.0.4安装配置Minikube

    目 录 一. 安装minikube环境 1.1. 安装前准备 1.2. 安装Lantern 1.2.1. Lantern下载网站 1.2.2. Lantern下载地址 1.2.3. Lantern安装 ...

  5. 在jupyter中调用R

    目录 安装R 关联jupyter notebook 安装R 系统:Ubuntu:16.04 步骤1.添加镜像源 $ sudo echo "deb http://cran.rstudio.co ...

  6. MySQL的基础与安装

    一.数据库概述 1.什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库. 2.数据库的主要特点: ⑴ 实现数据共享        数据共享包含 ...

  7. JavaScript中instanceof的判断依据

    读jquery源码的时候,发现作者为了让创建jquery对象更容易使用了用函数返回对象的方法 jQuery = function( selector, context ) { return new j ...

  8. Okhttp 请求流程梳理

    最近在看 Okhttp 的源码.不得不说源码设计的很巧妙,从中能学到很多.其实网上关于 Okhttp 的文章已经很多了,自己也看了很多.但是俗话说得好,好记性不如烂笔头,当你动手的时候,你会发现你在看 ...

  9. 重新认识MySQL中的COUNT语句

    在数据库的增删改查操作中,使用最频繁的就是查询操作. 而在所有查询操作中,统计数量操作更是经常被用到. 关于数据库中行数统计,无论是MySQL还是Oracle亦或者是SqlServer,都有一个函数可 ...

  10. 替换word中的数据,并给导入word的图片添加水印

    public static void ExportWord(string tempFilePath, string outPath, Dictionary<string, string> ...