基于Spring Boot + Spring Security开发信息管理平台
一. 项目简介
1. 项目简介
本项目采用Restful API 设计,即前后端分离,这也是当前比较流行的做法,在项目开发过程中,事先约定好API接口以及对应数据格式,使前后端之间可以最大限度减少对方的"依赖",提高开发效率.
后端是基于Spring Boot框架搭建的信息管理系统,并整合Spring Security进行授权认证管理,数据访问层则采用Mybatis进行持久化,该项目使用maven进行项目工程管理.项目提供了信息管理平台最基本的用户管理以及动态菜单管理等功能.
前端方面采用的vue.js + Element UI框架,由于本人主要做后端开发,在前端方面能力较渣,所以前端直接使用了由花裤衩开发的模板,在此基础上结合自己项目的业务进行修改,这位大大还写了一个非常详细的文档,非常值得学习.
2. 项目截图
- 首页
- 用户管理
- 角色授权
- 菜单管理
二. 环境
1. 开发工具
- 操作系统: Deepin
- IDE: IntelliJ IDEA 、WebStorm
Deepin 深度操作系统是基于Ubuntu开发一款国产Linux操作系统,底层是Linux系统,同时基于DeepinWine技术,可以运行大量的Windows平台软件,像微信、QQ、TIM等都可以运行,这是其他Linux操作系统所没有的,界面也非常好看,用起来还是很顺心的,本项目是在Deepin系统上开发的.
IntelliJ IDEA 个人觉得比eclipse好用,比较坑的是这东西很占内存
Web Storm 是IntelliJ全家桶中前端开发的IDE,也很好用,也很占内存
2. 开发环境
- Java 1.8
- Mysql 5.7
- maven 3.3.9
- node.js 8.9.4
- redis 4.0.6
环境安装这里就不说了,具体网上有很多博客可参考
三. 跑起来
1. 后端
1.1 克隆项目
git clone git@github.com:PGshen/non-zero.git
1.2 Project Structure配置
- 用IDEA打开刚刚克隆下来的项目,右下角应该会提示
pom.xml file found
,点击Add as Maven Project
,使项目使用maven进行管理,第一次需要下载相关依赖,时间会比较长.(第一次在IDEA上使用maven应该要配置一下,具体网上搜索吧) - 打开 File -> Project Structure
- 左侧选择
Project
,右侧选择项目的JDK,本项目使用的是1.8版本 - 左侧选择
Artifacts
, 点击中间绿色+
,选择Web Application: exploded
->From modules..
,在弹出面板中选择zero-business
,然后OK
- 再次点击中间绿色
+
, 选择Web Application:Archive
->For zero-business:war exploded
- Project Structure配置完成,点击
OK
1.3 Run/Debug Configurations
- 打开 Run -> Edit Configurations
- 点击绿色
+
, 选择Spring Boot
,配置一下
Name ->ZeroApplication
Main class ->space.zero.business.ZeroApplication
use class of module ->zero-business
JRE ->1.8
- Run/Debug Configurations配置完成,点击
OK
这里直接使用Spring Boot 内嵌的tomcat,只需在pom文件添加相关依赖即可;若是想部署到tomcat服务器也是可以的.
1.4 数据库
- 创建数据库
create database zero character set utf8;
- 导入数据
use zero;
source zero.sql;
- 修改项目中的数据源配置(
zero-business
模块下的application-dev.properties
文件)
# 开发环境配置
# 数据源配置,请修改为你项目的实际配置
spring.datasource.url=jdbc:mysql://localhost:3306/zero?useUnicode=true&characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=1108
spring.datasource.driver-class-name=com.mysql.jdbc.Driverserver.port=8088
1.4 启动redis
#在终端命令启动redis
redis-server
1.5 启动后端项目
有两种方式启动项目,直接在IntelliJ IDEA 中启动,或者打成Jar包启动
- IntelliJ IDEA启动
通过前面的配置,直接点击run或debug按钮启动 -
Jar包启动
进入项目目录,使用maven 命令打包mvn package
进入zero-business模块的target 目录可以看到刚刚打的Jar 包,使用Java命令启动
java -jar zero-business-1.0-SNAPSHOT.jar
如果在开发过程中使用IntelliJ IDEA启动,方便调试;
若是临时部署到远程服务器则采用Jar包运行方式;
2. 前端
2.1 克隆项目
git clone git@github.com:PGshen/non-zero-admin.git
2.2 安装依赖
#进入项目目录
npm intall
2.3 启动开发
打开config目录下的dev.ent.js文件,配置访问的服务器地址和端口
module.exports = {NODE_ENV: '"development"',ENV_CONFIG: '"dev"',// BASE_API: '"http://119.29.245.181:8088"'BASE_API: '"http://127.0.0.1:8088"'
}
启动
npm run dev
默认9527端口,浏览器打开localhost:9527
有问题或者下载依赖很慢可以参考花裤衩的说明
项目地址
后端:https://github.com/PGshen/non...
前端:https://github.com/PGshen/non...
预览地址:http://non-zero.space/zero/ (临时挂在github pages上的,不要改基础数据)注意:项目还有一些小bug没改,目前先这样子吧