本篇文章,主要包含三个部分,介绍、代码生成演示、代码分析(不会很深入)等

三个部分足以让你学会使用,实际生产可能遇到的问题不会在这遇到。

代码生成器的作用在于提高开发效率。但是这个代码生成器仍有其局限性,因为它并不具有多表和级联相关的代码生成。只能针对单一的表而言。这是一个比较大的局限性。

一、介绍

Renren-generator代码生成的思想主要是通过volocity模板并打成zip包的形式。

它的技术栈主要如下:

技术栈所包含的可以说,是我们绝大多数Java程序员比较熟悉的。

所以对于学习来说,成本并不高。特别具有技术栈所包含技术的使用经验的人。

项目结构如下:

二、代码生成演示流程

前提:本地必须要有renren-security这个项目。可以通过git clone的方式或者是下载解压后导入本地。

1.运行renren-generator中的启动类

2.运行成功后,在浏览器输入地址:http://localhost:8082/renren-generator,如下图

3.选择对应的表,比如你新建的表

4.生成对应的zip包

5.将其复制到对应的文件夹下解压

6.代码生成后,所要做的流程是

(1)    将Java代码和对应的xml按照分类放在对应的包下

(2)    前端代码按照分类放在对应的文件夹下

(3)    执行sql脚本

打开goods_menu.sql文件,复制里面的内容,打开本地的数据库客户端工具(sqlyog或navicat),选择对应的数据库执行。

(4)    运行renren-admin(这个renren-admin可以理解为咱们的多租户项目),登录进入系统后台,会发现出现一个商品管理

(5)    为了保险起见,测试对应的新增、修改、删除功能,发现都能正常执行无报错信息,就表示这个流程是OK

三、生成代码分析

(1)sql脚本

(2)entity代码

与MyBatis-Plus一致,刚好我们有使用MyBatis-Plus经验,可以无缝的过度过来,毫无技术成本

(3)dao代码

同(1)所说

(4)service代码

与(1)一样,不同的是增加了一个分页

(5)service实现类代码

与(3)一致

(6)controller代码

生成的controller具有列表展示、添加、删除、单查询、修改等,不需要再手动编写

(7)xml代码

同原来的MyBatis-Plus并无多大的区别

(8)js代码

主要采用的是Vue.js(2.0版本)

(9)HTML代码

主要采用了volocity模板引擎和vue.js

人人开源之代码生成器(renren-generator)的更多相关文章

  1. 人人开源框架使用 renren fast

    参考地址人人开源官网: https://www.renren.io/guide/ 1.介绍 1.1.项目描述 renren-fast 是一个轻量级的 Spring Boot 快速开发平台,能快速开发项 ...

  2. 人人开源之renren-security

    renren-security,从这周开始我将要对其比较详细的研究,之前的研究只不过是比较浅的.正如在这篇文章读读<编写高质量代码:改善Java程序的151条建议>中说过不要重复造轮子. ...

  3. 关于人人开源renren-fast-vue 中npm install各种报错的解决方案

    首先吐槽一下,因为这个问题我整了好几天,把报错信息复制百度,试遍了各种方法,node.js我是卸载了安装,安装了卸载,甚至renren-fast-vue我也删了再下,然后再删,无限循环.然而没有什么软 ...

  4. mybatis自定义代码生成器(Generator)——自动生成model&dao代码

    花了两天的时间研究了下mybatis的generator大体了解了其生成原理以及实现过程.感觉generator做的非常不错,给开发者也留足了空间.看完之后在generator的基础上实现了自定义的生 ...

  5. mybatis代码生成器——MyBatis Generator

    1.maven依赖 a.加入依赖 <!-- mybatis生成工具 --> <dependency> <groupId>org.mybatis.generator& ...

  6. 人人开源分模块,非原生html报错,很难查找问题所在,有vue语法

    <!DOCTYPE html> <html> <head> <title>学生表</title> #parse("sys/head ...

  7. 人人开源打包jar

    先在renren-security执行mvn clean install 再到renren-admin目录下,执行mvn clean package,就可以打成renren-admin.jar 如果想 ...

  8. springboot完整项目,基于人人开源框架

    这是前端和数据库 下载链接只有31天有效,需要的,请联系QQ2319899766 下载链接密码: 9ksz 这个是后端代码 链接只有31天有效时间,链接失效请联系QQ2319899766提供下载链接 ...

  9. MP实战系列(一)之入门框架搭建和使用

    mybatis plus官网:https://github.com/baomidou/mybatis-plus 上面有对应的实际例子,直接导入即可用. mybatis plus官方的怎么介绍,我就不在 ...

随机推荐

  1. http_proxy_module 模块(proxy_pass 指令)

    1. proxy_pass 指令介绍 该指令属于 http_proxy_module, http_proxy_module 模块可以将请求转发到另一台服务器. 在 nginx 反向代理是,会通过 lo ...

  2. Java - 线程基本概念

    [java并发编程实战]-----线程基本概念 线程状态图 说明:线程共包括以下5种状态.1. 新建状态(New)         : 线程对象被创建后,就进入了新建状态.例如,Thread thre ...

  3. docker启动容器报错:IPv4 forwarding is disabled. Networking will not work

    报这个错误会导致宿主机以外的pc 访问不了容器 按照网上的解决办法: 在/usr/lib/sysctl.d/00-system.conf文件后加net.ipv4.ip_forward=1 即可 然后重 ...

  4. webpack-bundle.js原理

    bundle.js 源码 //a.js import { log } from './b.js' log('hello') //b.js export const log = function (m) ...

  5. Vue指令的钩子函数使用方法

    在Vue 中可以把一系列复杂的操作包装为一个指令. 什么是复杂的操作? 我的理解是:复杂逻辑功能的包装.违背数据驱动的 DOM 操作以及对一些 Hack 手段的掩盖等.我们总是期望以操作数据的形式来实 ...

  6. java中字节流与字符流以及字节流多余字节问题

    1.字节流 字节流byte为单位对文件的数据进行写入与读取操作.字节的方式在复制音频图片文件时比较适用,但在对于普通文件的读写上有两大缺陷: 第一,字节流在读取中文字符时,若设定的字节数组长度刚好末尾 ...

  7. linux用户的增加与删除

    sudo useradd xxx 仅仅是添加用户, 不会在home目录添加帐号很简单 Ubuntu中提供了两种方式 图形界面 增加 和 Windows 一样 ,还有一种就是 Linux传统的 增加方法 ...

  8. C# Array类的Sort()方法

    Array类实现了数组中元素的冒泡排序.Sort()方法要求数组中的元素实现IComparable接口.如System.Int32 和System.String实现了IComparable接口,所以下 ...

  9. C#用ckplayer.js播放 MP4格式视频实现 边加载边播放

    MVC设计模式下 在View页面里面使用ckplayer.js 加载视频 ,在MP4格式视频上传之后 我发现某些视频可以边加载边播放 但是有一些又不行,找了下原因是因为视频的元数据信息在第一帧的时候就 ...

  10. 沉淀再出发:spring boot的理解

    沉淀再出发:spring boot的理解 一.前言 关于spring boot,我们肯定听过了很多遍了,其实最本质的东西就是COC(convention over configuration),将各种 ...