1、参加面试,面试官认为你具备架构师潜力:对整体系统需求开始到系统上线,整体把控系统架构并独立完成系统的能力。编写的代码质量高,健壮性强,返工少,思考问题全面。
2、面对整体系统需求开始到系统上线,整体解析编写代码的思路,高并发、高可靠、高性能、分布式集群、性能优化能力
3、增加项目经验,可以作为自己简历的实战项目,找到更好的工作,要更高的工资。
你将收获
1、参加面试,面试官认为你具备架构师潜力:对整体系统需求开始到系统上线,整体把控系统架构并独立完成系统的能力。编写的代码质量高,健壮性强,返工少,思考问题全面。
2、面对整体系统需求开始到系统上线,整体解析编写代码的思路,高并发、高可靠、高性能、分布式集群、性能优化能力
3、增加项目经验,可以作为自己简历的实战项目,找到更好的工作,要更高的工资。
适用人群
课程介绍
cms-Cloud后台管理系统
cms-Cloud 基于Spring Boot、Spring Cloud & Alibaba、OAuth2的前后端分离的后台管理系统,内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源。
前端技术栈 ES6、vue、vuex、vue-router、vue-cli、axios、element-ui
后端技术栈 Spring Boot、Spring Cloud & Alibaba、OAuth2
JDK >= 1.8
MySQL >= 5.5
Maven >= 3.0
1. 完全响应式布局(支持电脑、平板、手机等所有主流设备)
2. 强大的一键生成功能(包括控制器、模型、视图、菜单等)
3. 支持多数据源,简单配置即可实现切换。
4. 支持按钮及数据权限,可自定义部门数据权限。
5. 对常用js插件进行二次封装,使js代码变得简洁,更加易维护
6. 完善的XSS防范及脚本过滤,彻底杜绝XSS攻击
7. Maven多项目依赖,模块及插件分项目,尽量松耦合,方便模块升级、增减模块。
8. 国际化支持,服务端及客户端支持
9. 完善的日志记录体系简单注解即可实现
Java EE 8
Servlet 3.0
Apache Maven 3
Spring Boot 2.2
Spring Cloud Hoxton.SR3
Spring Framework 5.1
Spring Security 5.1
Apache MyBatis 3.4
Alibaba Druid 1.1
Vue 2.6
Axios 0.18
Element UI 2.11
(1) 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
(2) 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
(3) 岗位管理:配置系统用户所属担任职务。
(4) 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
(5) 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
(6) 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
(7) 参数管理:对系统动态配置常用参数。
(8) 通知公告:系统通知公告信息发布维护。
(9) 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
(10) 登录日志:系统登录日志记录查询包含登录异常。
(11) 在线用户:当前系统中活跃用户状态监控。
(12) 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
(13) 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
(14) 系统接口:根据业务代码自动生成相关的api接口文档。
(15) 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
(16) 在线构建器:拖动表单元素生成相应的HTML代码。
(17) 连接池监视:监视当期系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
准备工作
JDK >= 1.8 (推荐1.8版本)
Mysql >= 5.5.0 (推荐5.7版本)
Redis >= 3.0
Maven >= 3.0
Node >= 10
nacos >= 1.1.0
sentinel >= 1.6.0
因为本项目是前后端分离的,所以需要前后端都启动好,才能进行访问。
1、导入cms到Eclipse,菜单 File -> Import,然后选择 Maven -> Existing Maven Projects,点击 Next> 按钮,选择工作目录,然后点击 Finish 按钮,即可成功导入Eclipse会自动加载Maven依赖包,初次加载会比较慢(根据自身网络情况而定)
2、创建数据库cms-cloud并导入数据脚本cms.sql(必须),quartz.sql(可选)
3、创建数据库cms-config并导入数据脚本cms_config.sql(必须)
4、配置nacos持久化,修改conf/application.properties文件,增加支持mysql数据源配置。
# db mysql
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/cms-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=password
5、打开运行基础模块(启动没有先后顺序)
CmsGatewayApplication (网关模块 必须)
CmsAuthApplication (认证模块 必须)
CmsSystemApplication (系统模块 必须)
CmsMonitorApplication (监控中心 可选)
CmsGenApplication (代码生成 可选)
CmsJobApplication (定时任务 可选)
CmsFileApplication (文件服务 可选)
# 进入项目目录
cd cms-ui
# 安装依赖
npm install
# 强烈建议不要用直接使用 cnpm 安装,会有各种诡异的 bug,可以通过重新指定 registry 来解决 npm 安装速度慢的问题。
npm install --registry=https://registry.npm.taobao.org
npm run dev
打开浏览器,输入:http://localhost:80 (默认账户 admin/admin123)
若能正确展示登录页面,并能成功登录,菜单及页面展示正常,则表明环境搭建成功
提示
前端安装完node后,最好设置下淘宝的镜像源,不建议使用cnpm(可能会出现奇怪的问题)
因为本项目是前后端分离的,所以需要前后端都部署好,才能进行访问
bin/package.bat 在项目的目录下执行
然后会在项目下生成 target文件夹包含 war 或jar
1、jar部署方式
使用命令行执行:java –jar xxxx.jar 或者执行脚本:bin/run.bat
2、war部署方式
pom.xml packaging修改为war 放入tomcat服务器webapps
提示
SpringBoot去除内嵌tomcat
当项目开发完毕,只需要运行一行命令就可以打包你的应用
# 打包正式环境
npm run build:prod
# 打包预发布环境
npm run build:stage
构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 ***.js 、***.css、index.html 等静态文件。
通常情况下 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。
所有测试环境或者正式环境变量的配置都在 .env.development (opens new window)等 .env.xxxx文件中。
它们都会通过 webpack.DefinePlugin 插件注入到全局。
如果使用Mac 需要修改application.yml文件路径profile
如果使用Linux 提示表不存在,设置大小写敏感配置在/etc/my.cnf 添加lower_case_table_names=1,重启MYSQL服务
如果提示当前权限不足,无法写入文件请检查profile是否可读可写,或者无法访问此目录
课程目录