SpringMVC+SPring+Maven+Mybaits+Shiro+Mybaits基础开发项目
开源项目资料库:https://gitee.com/VCS/seezoon-framework-all
Seezoon项目介绍
基于spring,mybatis,shiro面向接口开发的的一套后台管理系统,方便快速开发;采用常用的技术栈,降低学习成本,项目完全前后端分离,后端定义统一的接口格式,统一参数校验,统一权限控制,异常拦截,全局错误码等,让后续开发只需关注业务代码。
项目定位于快速开发,所以不需要复杂的分布式,分模块的的开发方式,方便快速部署升级,项目支持按钮级别权限控制,自动控制按钮隐藏显示,按钮支持父子权限,支持本地和云存储。
前端采用最简单jquery + wayjs(双向数据绑定),wayjs 只做数据绑定这一件事,所以入门非常快,几分钟就可以熟练使用,这也是没有采用Vue的原因,这里引入nodejs工具gulp 打包工具,方便编译出前端文件。
官方QQ群:514685454(满)、574933593(满)、439091944
体验地址
1M 带宽请大家忍耐下,为了给大家看到最全的功能这里提供超级管理员账号admin 123456 希望大家不要改密码,删默认菜单等,其余可以随意操作。
本项目会持续完善更新,麻烦Watch、Star下项目,同时也是对项目最好的支持,谢谢。
V2.0.0 功能介绍
- 前后端完全分离,采用node插件gulp 管理
- 前端数据双向绑定wayjs
- 统一异常处理,全局错误码
- RBAC权限管理,精细到菜单,按钮级别权限,支持父子权限
- 数据权限控制,不需要额外代码,框架自动支持,支持手动插拔
- 前后端数据双向校验
- 强大的代码生成,支持富文本,图片,文件,数据字典等复杂控件的生成,生成代码包含,完整的前端,后端,权限控制,校验等
- 文件上传支持本地和阿里云(本人只对阿里云有感觉,所以不考虑其他厂商的)两种模式,通过配置文件转换
- 集成elastic job 分片作业,流式作业,任务调度轨迹等
- 丰富的工具类,excel导入导出,图片裁剪,验证码,二维码,基于线程池的httpclient
- 易上手,在多个团队中使用,团队成员接受度较高,上手较快
常用框架
后端
| 技术 | 名称 | 文档地址 |
|---|---|---|
| Spring Framework | 依赖管理 | https://docs.spring.io/spring/docs/5.0.6.BUILD-SNAPSHOT/spring-framework-reference/ |
| Spring MVC | MVC | https://docs.spring.io/spring/docs/current/spring-framework-reference/web.html |
| Mybatis | ORM | http://www.mybatis.org/mybatis-3/zh/index.html |
| Shiro | 权限、认证 | http://shiro.apache.org/documentation.html#apache-shiro-reference-and-api |
| Shiro Redis | shiro 缓存 | https://github.com/alexxiyang/shiro-redis |
| Spring session(C端) | 分布式会话 | https://docs.spring.io/spring-session/docs/2.0.3.BUILD-SNAPSHOT/reference/html5/ |
| PageHelper | 分页 | https://github.com/pagehelper/Mybatis-PageHelper |
| Druid | 连接池 | https://github.com/alibaba/druid |
| AliOSS | 云存储 | https://help.aliyun.com/document_detail/32008.html?spm=a2c4g.11186623.6.670.9vnD4m |
| Zxing | 二维码 | https://github.com/zxing/zxing |
| POI | excel | https://poi.apache.org/spreadsheet/quick-guide.html |
前端
本地运行
- 本工程为maven项目,导入eclipse
- 建立数据库seezoon-framework,运行/src/main/resources/db/seezoon-framework.sql
- 配置/src/main/resources/env/application.properties
- 运行到tomcat 或者mvn jetty:run
- 运行前端需要先配置/src/main/webapp/static/gulpfile.js 中dev=后端接口地址上下文,gulp 是node插件,所以先安装node环境, 安装完成后命令行执行npm install 安装相关插件,然后再命令行到gulpfile.js 所在目录运行gulp 如图:
static/src 为前端源文件,static/dist 为编译后的静态资源,这边简单用了gulp的include 功能,后续会使用压缩合并等功能。
打开浏览器输入http://127.0.0.1:8888/admin/pages/index.html 自动拦截回到登录页。 
后续逐步开源如下功能
- 微信公众号,小程序通用模块
- 文档编写
- 看是否需要spring boot版本
部分项目截图
代码生成

首页

用户管理

字典管理

文件管理

角色管理

菜单管理


![]()
多主题

更多功能参见演示网站。
下面为分布式版本线上案列,小型项目还是一体比较方便。 



项目来源地址:https://gitee.com/VCS/seezoon-framework-all
SpringMVC+SPring+Maven+Mybaits+Shiro+Mybaits基础开发项目的更多相关文章
- SpringMVC + Spring + Mybatis+ Redis +shiro以及MyBatis学习
SpringMVC + Spring + Mybatis+ Redis +shiro http://www.sojson.com/shiro MyBatis简介与配置MyBatis+Spring+My ...
- maven 聚合工程 用spring boot 搭建 spring cloud 微服务 模块式开发项目
项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 ...
- Spring Boot 构建电商基础秒杀项目 (一) 项目搭建
SpringBoot构建电商基础秒杀项目 学习笔记 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 maven 整合了所有的 jar 包, Spring Boot ...
- Spring Boot 构建电商基础秒杀项目 (十二) 总结 (完结)
SpringBoot构建电商基础秒杀项目 学习笔记 系统架构 存在问题 如何发现容量问题 如何使得系统水平扩展 查询效率低下 活动开始前页面被疯狂刷新 库存行锁问题 下单操作步骤多,缓慢 浪涌流量如何 ...
- Spring Boot 构建电商基础秒杀项目 (十一) 秒杀
SpringBoot构建电商基础秒杀项目 学习笔记 新建表 create table if not exists promo ( id int not null auto_increment, pro ...
- Spring Boot 构建电商基础秒杀项目 (十) 交易下单
SpringBoot构建电商基础秒杀项目 学习笔记 新建表 create table if not exists order_info ( id varchar(32) not null defaul ...
- Spring Boot 构建电商基础秒杀项目 (九) 商品列表 & 详情
SpringBoot构建电商基础秒杀项目 学习笔记 ItemDOMapper.xml 添加 <select id="listItem" resultMap="Bas ...
- Spring Boot 构建电商基础秒杀项目 (八) 商品创建
SpringBoot构建电商基础秒杀项目 学习笔记 新建数据表 create table if not exists item ( id int not null auto_increment, ti ...
- Spring Boot 构建电商基础秒杀项目 (七) 自动校验
SpringBoot构建电商基础秒杀项目 学习笔记 修改 UserModel 添加注解 public class UserModel { private Integer id; @NotBlank(m ...
随机推荐
- node.js模块的坑
在写一个工具的时候,需要将xml转为json方便处理,以前电脑上装的node.js的版本为0.8,结果我再安装node-xml2json时提示版本过低,然后我又重装安装了最新版本. 然后再次尝试安装, ...
- 通知栏消息(Notification)初步
Notification是用来在通知中心中显示信息的,这里讲解了其最简单的使用方式. 关于PendingIntent和Intent的区别可以参考这篇文章:http://blog.csdn.net ...
- winform中的TreeView的数据绑定
#region 绑定TreeView /// <summary> /// 绑定TreeView(利用TreeNode) /// </summary> /// <param ...
- 如何选择JAVA培训机构,兼议什么样的人适合培训机构
首先,利益相关,本人就是培训机构创办者兼讲师,但这不妨碍我对此发表看法. 我们先来看什么样的人适合培训机构?要回答这个问题,需要先换个角度.这个角度就是,你学习一门语言的动机是什么?99%的人的回答是 ...
- anaconda、pip配置国内镜像
一.anaconda配置镜像查看源:conda config --show-sources在Mac and Linux下:conda config --add channels https://mir ...
- BZOJ1337: 最小圆覆盖
题目:求n个点的最小圆覆盖. 题解:最小圆覆盖,上模板.复杂度证明可以戳:这里 代码: #include<cstdio> #include<cstdlib> #include& ...
- go语言之进阶篇http客户端编程
1.http客户端编程 示例: http_server.go package main import ( "fmt" "net/http" ) //w, 给客户 ...
- iOS截屏方法
//获取屏幕截屏方法 - (UIImage *)capture { // 创建一个context UIGraphicsBeginImageContextWithOptions(self.view.bo ...
- [leetcode]Substring with Concatenation of All Words @ Python
原题地址:https://oj.leetcode.com/problems/substring-with-concatenation-of-all-words/ 题意: You are given a ...
- [leetcode]Minimum Path Sum @ Python
原题地址:https://oj.leetcode.com/problems/minimum-path-sum/ 题意: Given a m x n grid filled with non-negat ...