guns初级使用
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初级使用的更多相关文章
- 马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)
马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)目录详情:18_02_ssl协议.openssl及创建私有CA18_03_OpenSSH服务及其相关应用09_01_磁盘及文 ...
- Python 正则表达式入门(初级篇)
Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. 转载请写明出处 引子 首先说 正则表达式是什么? 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达 ...
- python 高级之面向对象初级
python 高级之面向对象初级 本节内容 类的创建 类的构造方法 面向对象之封装 面向对象之继承 面向对象之多态 面向对象之成员 property 1.类的创建 面向对象:对函数进行分类和封装,让开 ...
- N皇后问题—初级回溯
N皇后问题,最基础的回溯问题之一,题意简单N*N的正方形格子上放置N个皇后,任意两个皇后不能出现在同一条直线或者斜线上,求不同N对应的解. 提要:N>13时,数量庞大,初级回溯只能保证在N< ...
- python 面向对象初级篇
Python 面向对象(初级篇) 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发" ...
- codefordream 关于js初级训练
这里的初级训练相对简单,差不多都是以前知识温习. 比如输出“hello world”,直接使用console.log()就行.注释符号,“//”可以注释单行,快捷键 alt+/,"/* ...
- Mysql操作初级
Mysql操作初级 本节内容 数据库概述 数据库安装 数据库操作 数据表操作 表内容操作 1.数据库概述 数据库管理系统叫做DBMS 1.什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建 ...
- python面向对象初级(七)
概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...
- 学习 opencv---(3) ROI 区域图像叠加&初级图像混合
在这篇文章里,我们一起学习了在OpenCV中如何定义感兴趣区域ROI,如何使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像混合操 ...
随机推荐
- TextSwitcher 文本切换器的功能与用法
TextSwitcher集成了ViewSwitcher, 因此它具有与ViewSwitcher相同的特性:可以在切换View组件时使用动画效果.与ImageSwitcher相似的是,使用TextSwi ...
- linux下mysql区分大小写的内容
1.数据库名严格区分大小写2.表名严格区分大小写的3.表的别名严格区分大小写4.变量名严格区分大小写5.列名在所有的情况下均忽略大小写6.列的别名在所有的情况下均忽略大小写
- rabbitmq之基本原理及搭建单机环境
1.RabbitMQ基本原理 1.MQ全称Message Queue,是一种分布式应用程序的通信方法,是消费-生产者模型的典型代表,producer向消息队列中不断写入消息,而另一端consumer则 ...
- RuntimeException和Exception区别
1.java将所有的错误封装为一个对象,其根本父类为Throwable, Throwable有两个子类:Error和Exception. 2.Error是Throwable 的子类,用于指示合理的应用 ...
- HTML基础-------HTML标签(3)
HTML标签(3) 表格 作用:制作一个表格 属性: 标签;table>tr>td(或者th) 语义; table:一个表格 tr:一行 td:一个单元格 th:单元格的表头 captio ...
- JAVA进阶23
1.统计文件夹大小 package cn.demo02; import java.io.File; /** * @Classname DirTest03 * @Description TODO * @ ...
- 北京大学冯哲清北学堂讲课day1
贪心方案: 答案是第三个策略 二分的一个重点是有顺序性,只有满足这个件才可以二分判断区间,否则你得自己构造顺序. 洛谷跳石头同题: 首先,我们要最小化最大跳远距离 代码如下(此题) #include& ...
- java网络编程基本知识
1.基本概念 网络:一组相互连接的计算机,多台计算机组成,使用物理线路进行连接 网络连接的功能:交换数据.共享资源 网络编程3要素: IP 地址:唯一标识网络上的每一台计算机,两台计算机之间通信的必备 ...
- Git基本原理-hash算法
一.哈希 哈希是一个系列的加密算法,各个不同的哈希算法虽然加密强度不同,但是有以下几个共同点: ①不管输入数据的数据量有多大,使用同一个哈希算法,得到的加密结果长度固定 ②哈希算法确定,输入数 ...
- windows部署jenkins持续集成maven测试项目不能访问测试报告
买了一台阿里云的服务器用于练习maven test项目,系统版本wiondows server 2012,将jenkins war包部署在Tomcat服务器上,项目构建后,生成的报告在C:\Windo ...