写点什么

PassJava 开源 (三):快速生成前后端代码

作者:悟空聊架构
  • 2021 年 12 月 22 日
  • 本文字数:1600 字

    阅读完需:约 5 分钟

作者简介:悟空,8 年一线互联网开发和架构经验,用故事讲解分布式、架构设计、Java 核心技术。《JVM 性能优化实战》专栏作者,开源了《Spring Cloud 实战 PassJava》项目,公众号:悟空聊架构。本文已收录至 www.passjava.cn


PassJava (佳必过) 项目全套学习教程连载中。


文档在线地址:www.passjava.cn

快速生成前后端代码

1.下载代码生成器框架

git clone https://gitee.com/renrenio/renren-generator.git
复制代码

2.添加人人开源后端代码

PassJava 项目


拷贝文件夹 renren-fast 到 PassJava 根目录


POM 文件 添加依赖


<module>renren-generator</module>
复制代码

3.修改 renren-generator 服务的配置文件

(1)修改数据库链接 src/main/resources/application-dev.yml


  • 修改数据库连接为自己的 mysql 数据库连接

  • 数据库名改为要生成代码的服务,如 passjava_qms 数据库


  url: jdbc:mysql://129.211.188.xxx:3306/passjava_qms?useUnicode=true&characterEncoding=UTF-8&useSSL=false  username: root  password: root
复制代码


(2)修改属性配置文件 src/main/resources/generator.properties


# 以question微服务为例mainPath=com.jackson0714package=com.jackson0714.passjavamoduleName=questionauthor=jackson0714email=jackson0585@163.comtablePrefix=qms_
复制代码


(3)修改 controller 模板文件


src/main/resources/template/Controller.java.vm


删除引入的包,后面再引入


import org.apache.shiro.authz.annotation.RequiresPermissions;
复制代码


注释 RequiresPermissions 注解,后面再引入


@RequiresPermissions("${moduleName}:${pathName}:list")
复制代码

4.启动代码生成器服务


浏览器打开 localhost,可以看到数据库 qms 的两张表已经显示在后台了


5.生成代码

  • 生成代码




  • 拷贝 main 文件夹到 question 模块 src 目录

  • 删除前端代码 passjava-question\src\main\resources\src 目录

  • 代码结构



生成的代码包含 controller,dao 层,实体类,接口实现类,mapper 映射文件

6.添加 common 模块

因为自动生成的代码引用了一些工具类,而我们的项目中没有,所以需要加个 common 模块添加一些工具类



  • 添加 passjava-common

  • New Module: 选择 Maven



Name: passjava-common


7.question 模块添加 common 模块依赖

pom 文件添加依赖


<dependency>    <groupId>com.jackson0714.passjava</groupId>    <artifactId>passjava-common</artifactId>    <version>0.0.1-SNAPSHOT</version></dependency>
复制代码

8.common 模块添加依赖

  • MyBatis-Plus


  <!--mybatis-plus DAO层工具 https://mp.baomidou.com/-->  <dependency>      <groupId>com.baomidou</groupId>      <artifactId>mybatis-plus</artifactId>      <version>3.2.0</version>  </dependency>
复制代码


  • lombok 依赖


  <!--lombok 不需要写getter,setter方法了-->  <dependency>    <groupId>org.projectlombok</groupId>      <artifactId>lombok</artifactId>      <version>1.18.12</version>  </dependency>
复制代码


  • httpcore 依赖


  <!--httpcore 依赖-->  <dependency>      <groupId>org.apache.httpcomponents</groupId>      <artifactId>httpcore</artifactId>      <version>4.4.12</version>  </dependency>
复制代码


  • commons-lang 依赖


  <!--commons-lang 依赖 -->  <dependency>      <groupId>commons-lang</groupId>      <artifactId>commons-lang</artifactId>      <version>2.6</version>  </dependency>
复制代码


  • servlet 依赖


  <!--  导入servlet-api 依赖  -->  <dependency>      <groupId>javax.servlet</groupId>      <artifactId>servlet-api</artifactId>      <version>2.5</version>      <scope>provided</scope>  </dependency>
复制代码

9.common 模块添加工具类

  • 添加包 com.jackson0714.common.utils

  • 从 renren-fast 项目 copy 文件

  • Constans.javaPageUtils.javaQuery.javaR.javaRRException.java

  • 添加包com.jackson0714.common.xss

  • 从 renren-fast 项目 copy 文件

  • HTMLFilter.javaSQLFilter.java



公众号


发布于: 2 小时前阅读数: 4
用户头像

用故事、大白话讲解Java、分布式、架构设计 2018.05.06 加入

公众号:「悟空聊架构」 【个人博客】www.passjava.cn 【开源项目】基于 SpringCloud 的一套面试刷题系统 【Github】https://github.com/Jackson0714/PassJava-Platform

评论

发布
暂无评论
PassJava 开源 (三):快速生成前后端代码