JeecgBoot环境搭建及前后端项目启动
1、JeecgBoot简介
JeecgBoot是一款基于SpringBoot+代码生成器的快速开发平台!采用前后端分离架构:SpringBoot,Mybatis,Shiro,JWT,Vue&Ant Design。强大的代码生成器让前端和后台代码一键生成,不需要写任何代码,保持jeecg一贯的强大,绝对是全栈开发福音! JeecgBoot在提高UI能力的同时,降低了前后分离的开发成本,JeecgBoot还独创在线开发模式(No代码概念),一系列在线智能开发:在线配置表单、在线配置报表、在线图表设计、在线设计流程等等。 JEECG宗旨是:简单功能由Online Coding配置实现(在线配置表单、在线配置报表、在线图表设计、在线设计流程、在线设计表单),复杂功能由代码生成器生成进行手工Merge,既保证了智能又兼顾了灵活; 业务流程采用工作流来实现、扩展出任务接口,供开发编写业务逻辑,表单提供多种解决方案: 表单设计器、online配置表单、编码表单。同时实现了流程与表单的分离设计(松耦合)、并支持任务节点灵活配置,既保证了公司流程的保密性,又减少了开发人员的工作量。
技术架构:
后端技术: SpringBoot_2.1.3.RELEASE + Mybatis-plus_3.1.2 + Shiro_1.4.0 + Jwt_3.7.0 + Swagger-ui + Redis 前端技术: Ant-design-vue + Vue + Webpack 其他技术: Druid(数据库连接池)、Logback(日志工具) 、poi(Excel工具)、Quartz(定时任务)、lombok(简化代码) 项目构建: Maven、Jdk8
2、环境搭建准备
基础开发环境:
JDK:1.8 Maven:3.5+ MySql:5.7+ Redis:3.2 + Node Js:10.0 + Npm:5.6.0+ Yarn:1.21.1+ IDE插件:Lombok Plugin
我的环境是:
- JDK
>> java --version
java 11.0.2 2019-01-15 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.2+9-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)
- Maven
>> mvn --version
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: E:Program Filesapache-maven-3.6.0bin..
Java version: 11.0.2, vendor: Oracle Corporation, runtime: E:Program FilesJavajdk-11.0.2
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
- MySQL
C:UsersDELL>e:
E:>cd E:Program Filesmysql-8.0.21-winx64bin
E:Program Filesmysql-8.0.21-winx64bin>mysql --version
mysql Ver 8.0.21 for Win64 on x86_64 (MySQL Community Server - GPL)
- Redis
C:UsersDELL>e:
E:>cd E:Program FilesRedis
E:Program FilesRedis>redis-server --version
Redis server v=3.2.100 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=dd26f1f93c5130ee
- Node.js
>> node --version
v12.18.3
- Npm
>> npm --version
6.14.6
- Yarn
>> cnpm install --global yarn
>> yarn --version
1.22.5
- IDEA插件:Lombok Plugin
配置Node.js镜像:
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
- IDEA插件:热部署工具JRebel
- Babel集成
cnpm install --global babel
集成方式:
- WebStorm插件:Vue.js
- WebStorm的vue新建文件模板配置:
- 自动生成类注释和方法注释
3、开发环境搭建
团队开发,下载团队代码步骤: 打开WebStorm -> VCS -> Get from Version Contro l-> 下载Git
官网示例环境搭建: 下载官网示例源代码,GitHub地址:https://github.com/zhangdaiscott/jeecg-boot 前端项目:ant-design-vue-jeecg 后端项目:jeecg-boot 前端项目在WebStorm中打开,并在WebStorm的Terminal中执行yarn install,下载项目依赖,项目依赖的模块下载完成,则项目构建完成。 后端项目在IDEA中打开,IDEA自动开始解决依赖。
4、项目启动
后端项目启动
jeecg-boot 从v2.0版本,重构成maven多模块项目,启动项目:jeecg-boot-module-system 项目结构说明: ├─jeecg-boot-parent(父POM: 项目依赖、modules组织) │ ├─jeecg-boot-base-common(共通Common模块: 底层工具类、注解、接口) │ ├─jeecg-boot-module-system (系统管理模块: 系统管理、权限等功能) – 默认作为启动项目 │ ├─jeecg-boot-module-{?} (自己扩展新模块项目,启动的时候,在system里面引用即可)
- 初始化数据库
>> mysql -u root -p123456
mysql> create database `jeecg-boot` default character set utf8mb4 collate utf8mb4_general_ci;
mysql> source F:jeecgboot-mysql-5.7.sql
- 修改项目配置文件(数据库配置、redis配置) 配置文件: /src/main/resources/application-dev.yml 项目名称、端口号配置(可以不改): 默认配置—— 端口号是8080,项目名称是jeecg-boot
server:
port: 8080
servlet:
context-path: /jeecg-boot
数据库配置 :
spring:
datasource:
dynamic:
datasource:
#主数据源
master:
url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&useUnicode=true&useSSL=false
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
Redis配置(配置redis的host和port):
#redis 配置
redis:
database: 0
host: 127.0.0.1
lettuce:
pool:
max-active: 8 #最大连接数据库连接数,设 0 为没有限制
max-idle: 8 #最大等待连接中的数量,设 0 为没有限制
max-wait: -1ms #最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。
min-idle: 0 #最小等待连接中的数量,设 0 为没有限制
shutdown-timeout: 100ms
password: ''
port: 6379
- 启动redis服务
- 启动项目&访问
以上配置完成后,即可启动后台项目 本地启动:src/main/java/org/jeecg/JeecgApplication.java,右键执行启动。 通过 http://localhost:8080/jeecg-boot 访问后台,默认进入swagger接口首页。
前端项目启动
配置后台接口地址:vue.config.js(仅开发环境配置) API数据接口地址的配置,此处映射地址配置到端口即可,如果后台项目名字修改了的话,直接改“/jeecg-boot”即可。
public/index.html (开发环境、正式发布)
//说明:系统部分菜单功能是后台的页面,此处的配置就是配置后台页面访问根路径。
window._CONFIG['domianURL'] = 'http://127.0.0.1:8080/jeecg-boot';
启动项目:注意:(如果启动报错的话,请升级node版本,把依赖node_modules删了,重新yarn install)
调出Show npm Scripts
功能
找到项目目录下文件package.json文件,鼠标右键选择Show npm Scripts
双击"serve",或者Terminal输入"npm run serve"。
打开http://localhost:3000,前端界面如下:
5、平台技术点
序号 |
知识点 |
资料 |
---|---|---|
1 |
Node.js |
http://www.runoob.com/nodejs/nodejs-tutorial.html |
2 |
Npm |
http://www.runoob.com/nodejs/nodejs-npm.html |
3 |
Yarn |
建议,比npm更快 |
4 |
Vue |
https://cn.vuejs.org/ |
5 |
ES6 |
https://blog.csdn.net/itzhongzi/article/details/73330681 |
6 |
Vue全家桶 |
Webpack 、axios、Vue router、Vuex、Vue Loader、Vue cli |
7 |
Springboot |
|
8 |
Mybatis-plus |
https://mp.baomidou.com |
9 |
Shiro |
- 【前端】wangEditor(富文本编辑器) 简易使用示例
- 【前端】ACE Editor(代码编辑器) 简易使用示例
- LOJ#6277. 数列分块入门 1
- 【Ruby on Rails】Model中关于保存之前的原值和修改状态
- 一个很逗的东西——Jd
- SQL Server 数据库清除日志的方法
- 算法模板——平衡树Treap 2
- DTS,DTC, DTB你都认识吗?
- LOJ#6278. 数列分块入门 2
- 1901: Zju2112 Dynamic Rankings
- LOJ#6279. 数列分块入门 3
- 1984: 月下“毛景树”
- 3212: Pku3468 A Simple Problem with Integers
- 1036: [ZJOI2008]树的统计Count
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法