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. Java版 人脸识别SDK demo

    虹软人脸识别SDK之Java版,支持SDK 1.1+,以及当前最新版本2.0,滴滴,抓紧上车! 前言 由于业务需求,最近跟人脸识别杠上了,本以为虹软提供的SDK是那种面向开发语言的,结果是一堆dll· ...

  2. dede首页、列表页调用非缩略图

    在include/extend.func.php末尾添加 function firstimg($str_pic) { $str_sub=substr($str_pic,0,-7).strrchr($s ...

  3. C语言货架02

    第1章 程序设计和C语言  最简单的C语言程序举例 #include<stdio.h> int main() { printf("这是一个C程序\n"); : } C语 ...

  4. Python3 isdigit()方法

    描述 Python isdigit() 方法检测字符串是否只由数字组成. 语法 isdigit()方法语法: str.isdigit() 参数 无. 返回值 如果字符串只包含数字则返回 True 否则 ...

  5. GlusterFS群集存储项目

    最小化安装的centos7.5 内存大于1GB 关闭selinux,防火墙端口放行(port:24007,111)(测试建议关闭firewalld) 一.环境部署 所有软件包离线安装,原因是yum安装 ...

  6. JavaScript调试总结

    一.vs调试 1.设置断点 2.设置浏览模式:一定要设置IE浏览器 3.设置起始页 4.运行 二.谷歌浏览器调试 1.运行项目,进入后F12,找到Sources

  7. firewalld防火墙设置

    CentOS7/RHEL7系统默认的iptables管理工具是firewalld,不再是以往的iptables-services,命令用起来也是不一样了,当然你也可以选择卸载firewalld,安装i ...

  8. 解决RSA加密中,System.Security.Cryptography.CryptographicException: 系统找不到指定的文件

    首先说下环境,win2008R2,iis7.5 遇到这个问题,困扰了我一天,在外国的网站上找到答案,还好有点英文基础.最后算是解决了,不过其中的原理还是没有搞的十分清楚. 先说下解决办法, 打开IIS ...

  9. Git基本原理-hash算法

    一.哈希   哈希是一个系列的加密算法,各个不同的哈希算法虽然加密强度不同,但是有以下几个共同点:  ①不管输入数据的数据量有多大,使用同一个哈希算法,得到的加密结果长度固定  ②哈希算法确定,输入数 ...

  10. Python并发式编程

    目录 进程 线程 GIL(Global Interpreter Lock) 线程的调用方式 直接调用 继承调用 join&Daemon方法 Daemon(True) 同步锁 死锁 递归锁 同步 ...