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函数结合起来使用,对指定区域进行图像混合操 ...
随机推荐
- shell 中 if then语句中会跟着-ne -ge之类的参数的含义
if [ 1 -ne 1 ];then...fi这是指当1不等于1时执行then后的语句 -eq:等于-ne:不等于-le:小于等于-ge:大于等于-lt:小于-gt:大于
- 记录一次Orthanc dicom数据异常手动修复
问题复现场景 同一个StudyInstanceUID,对应两个不同的PatientID. 通俗讲,原本是一个病人的一次影像,却割裂成两个病人的影像,虽然两个病人不影响系统数据,但是同一个Study分别 ...
- 安利一下workflowy和Dynalist
最近有比较幕布这款笔记记录软件,很是喜欢那种可以记录笔记的方式,不过我还追溯了一下这种笔记模式,发现了workflowy和Dynalist这两款风格一样的软件.大家可以自行注册试试.其中Dynalis ...
- 设计模式学习系列(一)——IOC设计原则
参考转载自IoC 之 2.1 IoC基础 ——跟我学Spring3
- 父页面内获取获取iframe内的变量或者是获取iframe内的值
前提:页面不可跨域访问,必须同一域名下,否则返回值为空 父页面 <!DOCTYPE html> <html lang="en"> <head> ...
- 【vue】使用vue+element搭建项目,Tree树形控件使用
1.依赖安装 本例中,使用render-content进行树节点内容的自定义,因此需要支持JSX语法.(见参考资料第3个) 在Git bash中运行一下指令 cnpm install\ babel-p ...
- python上下文管理
一.python上下文介绍: python中的上下文,指的就是代码所执行的环境状态,或者运行的场景 python上下文管理器规定了某个对象的使用范围,当进入或者离开了使用范围,会有相应的操作,多用于资 ...
- Java BigDecimal类型的 加减乘除运算
原文: https://blog.csdn.net/xuwei_net/article/details/81253471 加法:add 减法:subtract 乘法:multiply 除法:divid ...
- Excel阅读模式/聚光灯开发技术之二 超级逐步录入提示功能开发原理简述—— 隐鹤 / HelloWorld
Excel阅读模式/聚光灯开发技术之二 超级逐步录入提示功能开发原理简述———— 隐鹤 / HelloWorld 1. 引言 自本人第一篇博文“Excel阅读模式/单元格行列指示/聚光灯开发技术要 ...
- P2801 教主的魔法(分块入门)
两个月之前听yyr学长讲的分块,感觉是个很神奇的暴力,但到现在还是懵的一匹 #include<bits/stdc++.h> using namespace std; ; int belon ...