1.下载guns

gitee地址:https://gitee.com/stylefeng/guns

这里使用的是Guns v5.1

2.配置环境

2.1 导入项目

解压从gitee上下载的guns源码。

点击Import Project

将项目路径导入

后面都是下一步下一步。

项目结构:

2.2 配置数据库

在guns项目下的sql文件导入数据库

运行sql创建数据库与表

表结构:

在resource下配置yml文件,数据库名、账目、密码等。

2.3 配置业务的表

这里只是学习,所以表比较简单

create table tb1_house(
    id int(11) PRIMARY KEY AUTO_INCREMENT comment '编号',
    house_user VARCHAR(50) comment '客房拥有者',
    house_address VARCHAR(200) comment '客房地址',
    house_date datetime comment '租房时间',
    house_desc VARCHAR(500) comment '客房描述'
) comment '客房信息';
  • 表的主键名称最好用id,不然生成的前端模板需要改js。
  • 表的字段最好加上注释,不然需要自己手动在前端页面上添加列的信息。

3.使用guns生成业务代码

3.1 进入项目

启动guns项目,因为guns是springboot项目,所以直接启动main函数即可。

输入http://localhost:8080/ 即可访问。

默认的账号:admin,密码:111111

进入guns后台

3.2 生成代码

设置基础信息


选中需要生成前后端代码的表与对应模板

点击生成,会提示是否生成生成功。
并且在idea中会多出几样东西。

  • cn.stylefeng.guns.modular.house下是生成的后端代码
  • House.sql这是菜单表的代码,需要插入到数据库中。

  • 在webapp下会生成对应的前端js与html(实际是beetlmub)

3.3 配置角色权限

重启项目,并进入项目。

配置权限的权限菜单。


设置当前用户可见的菜单

刷新页面会发现右侧菜单多出一个房屋管理。

3.4 编写业务代码

由于Guns的代码生成器还不能实现100%的智能,所以生成之后还需要对生成的代码做一些完善,如果有除了增删改查以外的业务,还需要手动编写。例如,上面编写的添加和修改里,下单时间默认是text文本框,这里需要手动改为laydate样式的日期框,实体类上也需要加上日期注解处理如下图

<script>
    laydate.render({
        elem: '#houseDate'
    });
</script>

重启项目即可增删改查。


4.guns项目发布

mvn clean package -Dmaven.test.skip=true

在target目录下就有生成的jar文件。

运行jar

nohup java -jar guns-1.0.0.jar &

5.总结

  • 表的主键必须是int支持自增
  • 表的主键名称最好用id,不然生成的前端模板需要改js。
  • 表的字段最好加上注释,不然需要自己手动在前端页面上添加列的信息。

guns初级使用的更多相关文章

  1. 马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)

    马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)目录详情:18_02_ssl协议.openssl及创建私有CA18_03_OpenSSH服务及其相关应用09_01_磁盘及文 ...

  2. Python 正则表达式入门(初级篇)

    Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. 转载请写明出处 引子 首先说 正则表达式是什么? 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达 ...

  3. python 高级之面向对象初级

    python 高级之面向对象初级 本节内容 类的创建 类的构造方法 面向对象之封装 面向对象之继承 面向对象之多态 面向对象之成员 property 1.类的创建 面向对象:对函数进行分类和封装,让开 ...

  4. N皇后问题—初级回溯

    N皇后问题,最基础的回溯问题之一,题意简单N*N的正方形格子上放置N个皇后,任意两个皇后不能出现在同一条直线或者斜线上,求不同N对应的解. 提要:N>13时,数量庞大,初级回溯只能保证在N< ...

  5. python 面向对象初级篇

    Python 面向对象(初级篇) 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发" ...

  6. codefordream 关于js初级训练

    这里的初级训练相对简单,差不多都是以前知识温习. 比如输出“hello world”,直接使用console.log()就行.注释符号,“//”可以注释单行,快捷键 alt+/,"/*   ...

  7. Mysql操作初级

    Mysql操作初级 本节内容 数据库概述 数据库安装 数据库操作 数据表操作 表内容操作 1.数据库概述 数据库管理系统叫做DBMS 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建 ...

  8. python面向对象初级(七)

    概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...

  9. 学习 opencv---(3) ROI 区域图像叠加&初级图像混合

    在这篇文章里,我们一起学习了在OpenCV中如何定义感兴趣区域ROI,如何使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操 ...

随机推荐

  1. simulink创建简单模型

    创建简单模型 您可以使用 Simulink® 对系统建模,然后仿真该系统的动态行为.Simulink 允许您创建模块图,图中的各个连接模块代表系统的各个部分,信号代表这些模块之间的输入/输出关系.Si ...

  2. 微信小程序开发基础

    前言: 微信小程序开入入门,如果你有html+css+javascript的基础,那么你就很快地上手掌握的.下面提供微信小程序官方地址:https://developers.weixin.qq.com ...

  3. c/c++ 模板函数的重载

    模板函数的重载 普通函数可以重载,模板函数也可以重载,但规则复杂 有下面2个函数,名字相同,返回值相同就,参数不同,符合重载. template<typename T> std::stri ...

  4. FPGA设计千兆以太网MAC(2)——以太网协议及设计规划

    上篇该系列博文中通过MDIO接口实现了PHY芯片的状态检测,验证其已处于1000M 全双工工作模式.在设计MAC逻辑之前,要先清楚MAC与PHY之间的接口以及以太网协议细节,这样才能保证网络的兼容性. ...

  5. 修改rpm中的文件重新打包

    1.安装rpmrebuild 和安装rpmbuild rpmrebuild下载链接:https://sourceforge.net/projects/rpmrebuild/files/rpmrebui ...

  6. Linux:Day18(下) Bind9

    子域授权:每个域的名称服务器,都是通过其上级名称服务器在解析库中进行授权. 类似根域授权tld: .com IN NS ns1.com. .com IN NS ns1.com. ns1.com IN ...

  7. Linux:Day17(下) openssl

    Linux Services and Security OpenSSL OpenSSH dns:bind web:http,httpd(apache),php,mariadb(mysql) lamp ...

  8. Luogu P5283 [十二省联考2019]异或粽子

    感觉不是很难的一题,想了0.5h左右(思路歪了,不过想了一个大常数的两只\(\log\)做法233) 然后码+调了1h,除了一个SB的数组开小外基本上也没什么坑点 先讲一个先想到的方法,我们对于这种问 ...

  9. Quick Sort(三向切分的快速排序)(Java)

    //三向切分的快速排序 //这种切分方法对于数组中有大量重复元素的情况有比较大的性能提升 public static void main(String[] args) { Scanner input ...

  10. Java Web的简单项目部署

    目录 项目介绍 安装并配置jdk和tomcat 安装并配置mysql 使用Eclipse导出war包 部署war包到服务器 导出项目的数据库 将项目的数据库导入服务器的数据库中 修改配置 重启Tomc ...