使用专家构建,整合Dubbo+动物园管理员+SpringMVC+Spring+MyBatis+Redis支持分布式的高效率便捷开发框架
Posted
tags:
中文标题:使用专家构建,整合Dubbo+动物园管理员+SpringMVC+Spring+MyBatis+Redis支持分布式的高效率便捷开发框架
原文标题:使用Maven构建,整合Dubbo+Zookeeper+SpringMVC+Spring+MyBatis+Redis支持分布式的高效率便捷开发框架
项目评级:Star:296 Fork:148
下载地址:https://github.com/micyo202/yan
详情介绍
雁鸣声项目简介(说明)
英语中文文档
注:全新微服务项目狮已经逐步开发,基于SpringCloud公司的一整套方案,详情查看https://github.com/micyo202/lion
本项目是一整套整合 Dubbo+动物园管理员+SpringMVC+Spring+MyBatis支持分布式的高效率便捷开发远程控制框架,使开发人员更专注于业务,达到面向业务开发。
项目使用 专家构建,便于项目管理,可支持 Oracle、MySql等主流数据库。
项目模块化分层明确,代码规范,便于后期维护等工作。
前端展示界面采用基于 增压器实现的响应式布局,并集成了一系列的动画效果插件,整体界面简洁、美观大方并可优雅的与后台完成交互操作。
项目目标是为中小型企业打造全方位的J2EE技术企业级开发解决方案,提高工作效率。
该项目是yan演示单节点项目的升级版,支持分布式
近期更新内容
项目所需工具及版本 *
一、项目开发环境&;工具(环境和工具)
二、技术选型(技术)
1.服务端技术(服务器)
<表格>
名称第>条 | 版本号第>条 | 网址第>条 |
---|
Spring框架 | 4.3.13.释放 | http://projects.spring.io/spring-framework/ |
四郎 | 1.4.0 | http://shiro.apache.org |
AspectJ公司 | 1.8.13 | http://www.eclipse.org/aspectj/ |
MyBatis公司 | 3.4.5条 | http://www.mybatis.org/mybatis-3/zh/index.html |
MyBatis生成器 | 1.3.5 | http://www.mybatis.org/generator/index.html |
页面帮助程序 | 5.1.2 | http://git.oschina.net/free/Mybatis_PageHelper |
杜博 | 2.6.0 | http://dubbo.io |
Solr公司 | 7.1.0 | https://lucene.apache.org/solr/ |
活动MQ | 第5.15.2条 | http://activemq.apache.org |
德鲁伊 | 1.1.5 | https://github.com/alibaba/druid |
Redis公司 | 4.0.8 | https://redis.io |
杰克逊 | 2.9.2 | https://github.com/FasterXML/jackson |
多姆4j | 1.6.1条 | http://www.dom4j.org |
Ehcache公司 | 2.6.11条 | http://www.ehcache.org/ |
注销 | 1.2.3 | https://logback.qos.ch |
Maven公司 | 3.3.9 | http://maven.apache.org/ |
动物园管理员 | 3.4.11条 | https://www.apache.org/dyn/closer.cgi/zookeeper/ |
表格>
2.前端技术(网络)
<表格>
名称第>条 | 版本号第>条 | 网址第>条 |
---|
有角度的 | - | https://angularjs.org |
很棒的引导复选框 | - | https://github.com/flatlogic/awesome-bootstrap-checkbox |
引导程序 | 3.3.7 | http://www.bootcss.com |
引导程序日期时间选择器 | - | http://www.bootcss.com/p/bootstrap-datetimepicker/ |
引导程序选择 | 1.12.4条 | http://silviomoreto.github.io/bootstrap-select/ |
引导程序表 | 1.11.1 | http://bootstrap-table.wenzhixin.net.cn/zh-cn/documentation/ |
引导验证器 | 0.5.3 | https://github.com/nghuuphuoc/bootstrapvalidator/ |
电子海图 | 3.8.4 | http://echarts.baidu.com |
字体很棒 | 4.7.0条 | http://fontawesome.io/icons/ |
fontIconPicker字体图标 | 2.0.0版本 | https://codeb.it/fonticonpicker/ |
完整页面 | - | https://alvarotrigo.com/fullPage/ |
jquery确认 | 3.3.0 | https://github.com/craftpip/jquery-confirm |
malihu自定义滚动条插件 | - | https://github.com/videoMonkey/malihu-custom-scrollbar-plugin |
材质设计标志性字体 | 2.2.0 | https://github.com/zavoloklom/material-design-iconic-font |
波浪 | 0.7.5 | https://github.com/fians/Waves |
zTree_v3 | 3.5.26年 | http://www.treejs.cn/v3/main.php#_zTreeInfo |
引导程序菜单 | - | https://mobirise.com/bootstrap-menu |
设备 | - | https://github.com/matthewhudson/device.js |
查询 | 3.2.1 | http://jquery.com |
jquery cookie | - | https://github.com/carhartl/jquery-cookie |
表格>
三、项目结构(施工)
四、项目入门(简介)
五、配置说明(属性)
岩岛模块 资源/属性中配置文件说明
<表格>
名称(关键值)第>条 | 描述第>条 |
---|
mbg.path公司 | mybatis发生器插件生成代码的路径(绝对路径)时间>
mbg.db.username公司 | mybatis发生器插件连接数据库的用户名时间>
mbg.db.密码 | mybatis发生器插件连接数据库的密码时间>
mbg.db.driver类名 | mybatis发生器插件连接数据库的驱动时间>
mbg.db.url公司 | mybatis发生器插件连接数据库的地址时间>
表格>
yan服务模块 资源/属性中配置文件说明
<表格>
名称(关键值)第>条 | 描述第>条 |
---|
默认数据源用户名 | <标准差
align=“left”>默认数据库用户名时间>
默认数据源.密码 | 默认数据库密码时间> |
默认.datasource.driverClassName | 默认数据库驱动类时间> |
默认数据源.url | 默认数据库链接地址时间> |
右端数据源用户名 | 扩展数据库用户名(用于多数据源切换)时间> |
右端数据源.密码 | 扩展数据库密码(用于多数据源切换)时间> |
右端数据源驱动程序类名 | 扩展数据库驱动类(用于多数据源切换)时间> |
右端数据源.url | 扩展数据库链接地址(用于多数据源切换)时间> |
数据源初始大小 | 初始化时建立物理连接的个数时间> |
数据源.minIdle | 最小连接池数量时间> |
datasource.max活动 | 最大连接池数量时间> |
datasource.max等待 | 获取连接时最大等待时间,单位毫秒时间> |
数据源。设备运行之间的时间百万 | 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒时间> |
数据源.min可收回空闲时间毫秒 | 配置一个连接在池中最小生存的时间,单位是毫秒时间> |
数据源.验证查询 | 用来检测连接是否有效的sql语言 |
数据源测试空闲 | 建议配置为是的不影响性能,并且保证安全性时间> |
数据源测试借 | 申请连接时执行验证查询检测连接是否有效,做了这个配置会降低性能。时间> |
数据源测试返回 | 归还连接时执行验证查询检测连接是否有效,做了这个配置会降低性能时间> |
数据源.poolPreparedStatements | 是否缓存准备的声明也就是PSC缓存 |
数据源.maxPoolPreparedStatementPerConnectionSize | 每个连接上PSC缓存的大小时间> |
数据源筛选器 | 属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有:监控统计用的过滤器:统计日志用的过滤器:log4j防御sql语言注入的过滤器:墙 |
- | - |
配音应用程序名称 | 配音应用服务提供者名称时间> |
dubbo.protocol.port文件 | 配音协议暴露服务的端口时间> |
配音员注册地址 | 配音使用 动物园管理员注册中心暴露服务的地址时间> |
- | - |
jms.brokerURL | 活动MQ服务地址时间> |
jms.用户名 | 活动MQ服务管理端用户名时间> |
jms密码 | 活动MQ服务管理端密码时间> |
表格>
燕网模块 资源/属性中配置文件说明
<表格>
名称(关键值)第>条 | 描述第>条 |
---|
redis.max空闲 | redis最大空闲数时间> |
redis.max总计 | 连接池的最大数据库连接数时间> |
redis.max等待毫秒 | 最大建立连接等待时间时间> |
redis.min可收回空闲时间毫秒 | 逐出连接的最小空闲时间 默认1800000毫秒(30分钟)时间> |
redis.numTestsPerEvctionRun(每次卸载运行) | 每次逐出检查时 逐出的最大数目 如果为负数就是 : 1/abs(n),默认3个 |
redis.timeBetween设备运行次数百万 | 逐出扫描的时间间隔(毫秒) 如果为负数,则不运行逐出线程, 默认-1个 |
借款再贴现测试 | 是否在从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个时间> |
redis.testWhile空闲 | 空闲时检查有效性, 默认虚假的 |
redis.host名称 | redis的主机名时间> |
重新分配端口 | 端口号:默认6379个 |
redis.密码 | 连接密码时间> |
redis.use池 | 是否使用连接池时间> |
redis.max非活动间隔(秒) | 设置缓存失效时间时间> |
- | - |
jms.brokerURL | 活动MQ服务地址时间> |
jms.用户名 | 活动MQ服务管理端用户名时间> |
jms密码 | 活动MQ服务管理端密码时间> |
- | - |
日志备份名称 | 日志文件前缀名称(一般使用项目名称,便于区分)时间> |
日志返回.路径 | 日志存放路径(绝对路径)时间> |
logback.max历史记录 | 日志最大的历史天数时间> |
logback.db.用户名 | 日志写入数据库时连接数据库的用户名时间> |
logback.db.密码 | 日志写入数据库时连接数据库的密码时间> |
logback.db.driver类名 | 日志写入数据库时连接数据库的驱动时间> |
日志备份.db.url | 日志写入数据库时连接数据库的网址 |
- | - |
设置.upload | 文件上传路径(绝对路径)时间> |
- | - |
solr.builder公司 | 解决方案搜索引擎服务地址时间> |
表格>
六、常用方法(方法)
方法均在继承于基本控制器的控制器类中使用this.metod名称或直接使用调用的方法名来进行调用(注:调用的方法名代表需要调用的方法名称,方法名称见下表)
<表格>
方法名第>条 | 参数第>条 | 返回值第>条 | >描述第>条 |
---|
获取会话 | 无时间> | HttpSession(HTTP会话)服务器会话时间> | 获取服务器会话 一场对象时间> |
设置会话 | 会话服务器会话时间> | 无时间> | 设置服务器会话 一场对象时间> |
获取请求 | 无时间> | HttpServlet请求用户请求时间> | 获取用户请求 要求对象时间> |
设置请求 | 请求用户请求时间> | 无时间> | 设置用户请求 要求对象时间> |
获取响应 | 无时间> | HttpServlet响应服务器响应结果时间> | 获取服务器响应结果 回答对象时间> |
设置响应 | 响应服务器响应结果时间> | 无时间> | 设置服务器响应结果 回答对象时间> |
获取会话用户 | 无时间> | TbSysUser(TbSys用户)用户对象时间> | 获取登录成功后 一场中的存储的用户信息时间> |
- | - | - | - |
获取服务 | 无时间> | 委派服务通用 服务查看自定义 SQL映射的代理 服务对象时间> | 获取 委托服务对象时间> |
结果页面 | 列表查询到的分页结果,为 页对象时间> | 页面模型自定义的分页模型,T为查询的对象时间> | 分页结果集对象时间> |
结果消息 | 状态状态值(可根据需求任意设置,无强制标准);消息消息内容;物件返回的对象时间> | 消息模型自定义消息模型时间> | 消息返回对象时间> |
文件上传 | 请求上传方法中传递的 要求对象,并非父类中的 要求对象时间> | 列表上传文件成功后的新文件名称,以集合形式返回时间> | 文件上传方法,支持多个文件上传时间> |
文件下载 | 文件名需要下载的文件名称时间> | 响应实体<;字节[]>;下载的文件,在浏览器会进行下载时间> | 文件下载方法时间> |
- | - | - | - |
isNull | 对象需要进行判断的对象时间> | 布尔值为无效的或空返回 是的否则返回 虚假的 | 判断对象是否为无效的或空时间> |
目标2Str | 对象需要转换的对象时间> | 字符串对象的值(为无效的则返回“”) | 对象转换为 一串通常用于获取 地图集合中的对象时使用时间> |
获取UUID | 无时间> 字符串32位主键字符串时间> | 生成 uuid公司主键,长度为32位,且为大写模式时间> |
base64编码器 | 字符串需要进行编码的字符串时间> | 字符串进行编码后的结果字符串时间> | 对字符串进行 底座64编码时间> |
base64解码器 | 字符串已进行 底座64编码的编码字符串时间> | 字符串解码后的原字符串时间> | 对字符串进行 底座64解码时间> |
md5型 | 字符串需要进行 md5型加密的字符串时间> | 字符串加密后的结果时间> | 对字符串进行 md5型加密算法时间> |
当前日期 | 图案获取系统时间的格式,如:年-月-日HH:MM:ss | 字符串返回格式化后的当前时间时间> | 获取系统当前时间时间> |
时间戳2日期 | 时间戳需要进行转换的时间戳;图案转换后的格式时间> | 字符串格式化后的日期时间> | 时间戳转换成日期时间> |
日期2时间戳 | dateStr日期需要进行转换的日期字符串;图案日期的格式时间> | 字符串转换后的时间戳时间> | 日期转换为时间戳时间> |
从文件读取 | 文件路径文件路径(绝对路径)时间> | 字符串读取的文件内容时间> | 从指定文件中读取文件内容时间> |
写入到文件 | 内容需要写入文件中的内容时间> | 文件路径文件路径(绝对路径)时间> | 将内容写入到指定文件中(写入会覆盖文件原有内容,建议先读取,再写入,将读取的内容与需要写入的内容并在一起进行写入)时间> |
生成路径 | 路径文件夹路径(绝对路径)时间> | 无时间> | 生成指定路径文件夹,先进行判断文件夹是否存在,若不存在则创建对应目录的文件夹,若存在则不进行任何操作时间> |
生成文件 | 路径文件路径(绝对路径)时间> | 无时间> | 生成指定路径的文件,先进行判断文件是否存在,若不存在则进行创建文件,若存在则不进行任何操作时间> |
属性值 | 键资源文件中的 钥匙值时间> | 字符串读取到的 钥匙对应的 价值值时间> | 读取 特性文件中的值,读取 类路径下 /属性/config.properties配置文件时间> |
属性值 | 资源资源文件路径(对应 类路径中的路径);钥匙资源文件中的 钥匙值时间> | 字符串读取到的 钥匙对应的 价值值时间> | 读取指定路径 特性文件中的值,会从 类路径路径下进行查找资源文件时间> |
表格>
七、示例代码(代码)
创建一个继承与基本控制器的控制器
获取日志日志记录记录器对象
获取服务对象
分页查询后台代码
分页查询前台代码
文件上传
文件下载(在jsp公司页面使用通用的下载方法,使用宁静的风格)
自定义文件下载后台方法
常用 委托服务方法
常用对象 服务方法
更多方法使用请参考项目中的示例代码
八、效果预览(预览)
九、许可证(许可证)
麻省理工学院许可证
dubbo+zookeeper初体验
Dubbo学习 —— SpringBoot 整合Dubbo
Dubbo学习 —— SpringBoot 整合Dubbo
spring+spring mvc+mybatis+mysql+dubbo整合开发任务流程后台管理系统
dubbo远程调用(rpc)-->快速入门+管理控制台+整合Springboot开发
dubbo远程调用(rpc)-->快速入门+管理控制台+整合Springboot开发