springboot脚手架,逐渐成长成一个优秀的开源框架
springboot基于spring和mvc做了很多默认的封装。这样做的好处极大的方便了开发者的效率。尽管与此我们每个人还是需要有一些自己个人的脚手架。方便我们秒级搭建项目。此项目就是基于次为出发点进行了企业的规范设置。
项目介绍
基于Spring + SpringMVC + Mybatis敏捷开发的一套系统框架。zxhtom
目前是针对管理端进行封装的一个架构。里面内置的页面也是为了方便管理和开发的。但是架构上预留出前后分离的方案。次架构所有的设计都与前后分离思想耦合。shiro-service
模块就可以用来做单点登录。只不过在架构中他不仅仅是单点登录的功能。他的作用是对第三方服务的一个模块。它可以将系统中的接口通过注解讲接口发布给第三方。就是支付宝、微信等目前推出的商户功能。既然是架构眼观就得放远点。万一实现了呢。
除此之外架构还提供了数据自动生成
、定时任务
、系统监控
、用户管理
、日志管理
等模块。技术点包含redis集群和单机
、验证码功能
、双数据源
、接口规范
、swagger
、druid
、websocket
等等。
通过次脚手架简化了项目的配置。只需要引入
<dependencies>
<dependency>
<groupId>com.github.zxhTom</groupId>
<artifactId>framework-root</artifactId>
<version>${framework.version}</version>
<type>POM</type>
<scope>IMPORT</scope>
</dependency>
<dependency>
<groupId>com.github.zxhTom</groupId>
<artifactId>framework-core</artifactId>
<version>${framework.version}</version>
</dependency>
</dependencies>
这两个jar。然后项目中建立springboot启动类就行了。这里需要在启动类上添加扫包注解。包路径至少得包含com.zxhtom
.因为我的脚手架都是在com.zxhtom包下进行开发的。
其他的细节配置就是在application.yml中配置了。这里zxhtom提供一个配置模板(在framework-core模块中的application_back.yml)
关于配置里面说明。后续会出详细文档说明。
环境搭建
开发工具
- idea开发代码
- navicat操作数据库
- git管理代码
- nginx配置反向代理
- powerdesigner设计数据库及反向管理
- tomcat服务发布
- plsql操作oracle数据库
- Google浏览器
开发环境
- JDK8+
- Mysql5.7+
- Redis
- RabbitMQ
- Zookeeper
- Dubbo-admin
- Dubbo-monitor
- Tomcat8+
- Oracle12+
- Nginx
工具安装
- 关于安装就是idea存在破解,这里可以入群咨询。其他的服务都是用docker安装的。有需要的小伙伴可以私信我。根据情况会整理docker使用手册。后续项目也会发布成docker和上传至maven中央仓库
ps : 因为项目中用到的某些jar包因为种种原因中央仓库还没进行更新。所以这里为了保证项目能够正常的运行。运行读者自己手动安装至本地仓库
jar下载地址 (提取码:k1ne)
bottom项目在线clone地址
至于手动安装至本地仓库命令 mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar
系统架构
启动项目
package com.zxhtom;
import com.zxhtom.config.CoreConfig;
import com.zxhtom.config.QuickStartConfig;
import com.zxhtom.config.SpringfoxConfig;
import com.zxhtom.config.WebMvcConfig;
import com.zxhtom.framework_task.conf.TaskConfig;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Import;
/**
* 入口类, 扫描并注入其他配置类和服务
*/
@SpringBootApplication
@EnableCaching
@ComponentScan("com.zxhtom")
@Import({QuickStartConfig.class,CoreConfig.class,TaskConfig.class,WebMvcConfig.class,SpringfoxConfig.class})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
springboot脚手架,逐渐成长成一个优秀的开源框架的更多相关文章
- Android 优秀的开源框架整理
第一部分:系统架构 thinkAndroid https://github.com/white-cat/ThinkAndroid ThinkAndroid是一个免费的开源的.简易的.遵循Apache2 ...
- 【.Net】优秀的开源框架
AutoMapper 官网:http://automapper.org/ github:https://github.com/AutoMapper/AutoMapper 文档:http://autom ...
- 国内优秀MVC开源框架jfinal简介
JFinal简介 JFinal 项目开发始于2011年初,作者詹波(James Zhan)曾任搜格信息技术有限公司Java架构师,北京信息管理科学研究所CTO,现任微格网际(北京)科技有限公司联合创始 ...
- 比较强大 优秀的开源框架 :Android图片加载与缓存:Android Glide 的用法
使用Android Glide,需要先下载Android Glide的库,Android Glide在github上的项目主页: https://github.com/bumptech/glide . ...
- springboot脚手架liugh-parent源码研究参考
1. liugh-parent源码研究参考 1.1. 前言 这也是个开源的springboot脚手架项目,这里研究记录一些该框架写的比较好的代码段和功能 脚手架地址 1.2. 功能 1.2.1. 当前 ...
- DELPHI优秀的一些开源框架:QDAC,MORMOT,DIOCP
DELPHI优秀的一些开源框架:QDAC,MORMOT,DIOCP 程序员搞任何语言的程序开发上升到一定的层次,要想进步,必须要接触和学习使用优秀的开源框架. MORMOT封装了WINDOWS最新的H ...
- GitHub 优秀Android 开源项目
阅读目录 1.Xabber客户端 2.oschina客户端 3.手机安全管家 4.星座连萌 5.玲闹铃 6.魔乐盒 7.PWP日历 8.Apollo音乐播放器 9.夏普名片识别 10.高仿人人网 11 ...
- Docker+SpringBoot+Mybatis+thymeleaf的Java博客系统开源啦
个人博客 对于技术人员来说,拥有自己的个人博客应该是一件令人向往的事情,可以记录和分享自己的观点,想到这件事就觉得有意思,但是刚开始写博客的时候脑海中是没有搭建个人博客这一想法的,因为刚起步的时候连我 ...
- Web 项目可能会用到的20款优秀的开源工具
开源的应用程序和它们的源代码可以免费获得,因为版权是属于任何进行过修改或者提交代码的人.大多数提供开源软件的公司都可以建立行业标准,因此可以获得有利的竞争优势. 很多的开源应用程序和工具都有很强的替代 ...
随机推荐
- [01] HEVD 双机调试环境搭建
[01] HEVD 双机调试环境搭建 span::selection, .CodeMirror-line > span > span::selection { background: #d ...
- Java EE核心框架实战(1)
内容前言:本书适合具有一定Java编程基础的读者阅读,增强其项目实战能力. 2014年9月第1版 下载本书所有源代码可通过 http://pan.baidu.com/s/1i3sshXr 本书配套的 ...
- 【分治】黑白棋子的移动-C++
题目描述 有2n个棋子(n≥4)排成一行,开始为位置白子全部在左边,黑子全部在右边,如下图为n=5的情况: ○○○○○●●●●● 移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也 ...
- SQLite的一些体会
SQLite遵循sql语法,所以如果接触过数据库,使用它进行增删改查几乎没障碍.在.net中,它与Mysql.sql server的类也相似,比如连接类名字是SQLiteConnection,不过它S ...
- JS高级程序设计第4章--精简版
前言:纯手打!!!按照自己思路重写!!!这次是二刷了,想暑假做一次完整的笔记,但用本子来写笔记的话太贵了,可能哪天还丢了..所以还是博客好== 第四章:变量.作用域和内存问题 4.1 基本类型和引用类 ...
- 详解svm和smo的出现
SupportVector Machines are learning models used forclassification: which individuals in a population ...
- Linux操作系统和Windows操作系统的区别
1.免费与收费 在中国,windows和linux都是免费的,至少对个人用户是如此,如果那天国内windows真的严打盗版了,那linux的春天就到了!但现在linux依然是任重道远,前路漫漫. 2. ...
- Java--随机数和随机数种子(转)
在计算机中并没有一个真正的随机数发生器,但是可以做到使产生的数字重复率很低,这样看起来好象是真正的随机数,实现这一功能的程序叫伪随机数发生器. 有关如何产生随机数的理论有许多,如果要详细地讨论,需要厚 ...
- 最新try2hack全详解
第一题http://www.try2hack.nl/levels/: 方法:直接右键看网页源码 第二题http://www.try2hack.nl/levels/level2-xfdgnh.xhtml ...
- Docker 容器基本操作[Docker 系列-2]
Docker 入门及安装[Docker 系列-1] 镜像就像是一个安装程序,而容器则是程序运行时的一个状态. 查看容器 查看容器 启动 docker 后,使用 docker ps 命令可以查看当前正 ...