在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:springboot-plus开源软件地址:https://gitee.com/xiandafu/springboot-plus开源软件介绍:springboot-plus一个基于SpringBoot 2 的管理后台系统,有数十个基于此的商业应用,包含了用户管理,组织机构管理,角色管理,功能点管理,菜单管理,权限分配,数据权限分配,代码生成等功能相比其他开源的后台开发平台脚手架,SpringBoot-Plus 使用简单,可以轻易完成中型,大型系统开发。同时技术栈较为简单 如何判断一个开源开发平台适合自己
Plus系统是一个开发和部署简单,业务功能较为复杂的开源系统,已经数十家商业公司采用,兼顾教学和实战。 系统基于Spring Boot2.5技术,前端采用了Layui2.4。数据库以MySQL/Oracle/Postgres/SQLServer为实例,理论上是跨数据库平台. 基本技术栈来源于我为电子工业出版社编写的的<<Spring Boot 2 精髓 >> (这本书每一章也有各种例子,但Springboot-plus 更偏向于应用而不是教学)该书的第二版电子版可以可以在看云广场购买, 包含基础篇,分布式篇和微服务篇,第二版也包含一章说明Plus系统
当前版本:2.0.0, 当前版本与1.3.x版本差别较大 技术交流群:252010126 免费视频介绍:https://pan.baidu.com/s/1dFPoaT7 开源地址:https://gitee.com/xiandafu/springboot-plus 视频介绍:https://pan.baidu.com/s/1dFPoaT7 1 使用说明1.1 安装说明
从Git上获取代码后,通过IDE导入此Maven工程,包含俩个子工程
com.ibeetl.admin.CosonleApplication 是系统启动类,在admin-console包下,在运行这个之前,还需要初始化数据库,位于doc/starter-mysql.sql,目前只提供mysql, oracle, postgresql脚本。理论上支持所有数据库 还需要修改SpringBoot配置文件application.properties,修改你的数据库地址和访问用户 spring.datasource.baseDataSource.url=jdbc:mysql://127.0.0.1:3306/starter?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT+8&useSSL=false&useInformationSchema=truespring.datasource.baseDataSource.username=rootspring.datasource.baseDataSource.password=123456spring.datasource.baseDataSource.driver-class-name=com.mysql.cj.jdbc.Driver 运行CosonleApplication,然后访问http://127.0.0.1:8080/ 输入admin/123456 则可以直接登录进入管理系统 如果成功启动后运行报错:变量userId未定义,位于第6行,那是因为你没有启用parameters,启用后,需要clean&build整个工程
1.2 创建子系统SpringBoot-plus 是一个适合大系统拆分成小系统的架构,或者是一个微服务系统,因此,如果你需要创建自己的业务系统,比如,一个CMS子系统,建议你不要在SpringBoot-Plus 添加代码,应该是新建立一个maven工程,依赖admin-core,或者依赖admin-console(如果你有后台管理需求,通常都有,但不是必须的) 创建子系统,可以进入代码生成>子系统生成, 输入maven项目路径,还有包名,就可以直接生成一个可运行的基于SpringBoot-Plus 的子系统,所有代码可以在个项目里些完成,直接运行MainApplication, @SpringBootApplication@EnableCaching@ComponentScan(basePackages= {"com.corp.xxx","com.ibeetl.admin"})public class MainApplication extends SpringBootServletInitializer implements WebApplicationInitializer { public static void main(String[] args) { SpringApplication.run(MainApplication.class, args); }} 子系统包含了admin-core和admin-console, 因此你可以直接在子系统里使用core和console提供的所有功能,通过子系统的console功能的代码生成来完成进一步开发 子系统可以单独运行和维护,也可以集成到nginx后构成一个庞大的企业应用系统 1.2.1 配置子系统子系统不需要做任何配置即可在IDE里直接运行,如果你想打包jar方式运行,则需要添加 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins></build> 如果你想打包成war放到tomcat下运行,需要修改maven打包为war <packaging>war</packaging> 1.2.2 菜单系统系统默认提供三种类型菜单
建议新建立一个子系统来放置新功能 SpringPlus-Boot 并非以菜单或者按钮来组织整个系统,而是以功能点来组织整个系统提供的功能。如果要使得菜单生效,你必须要先常见一个功能点并且功能点有一个访问地址,然后将此菜单关联到这个功能点
1.2.2 添加代码可以参考1.3业务代码生成生成初始化的代码,业务代码生成了14个文件,包含前后端所有代码,可以通过生成来了解代码习作规范 1.3 业务代码生成在介绍如何利用Plus开发系统之前,先介绍代码生成功能,此功能可以生成前后端代码总计14个文件,你可以通过预览功能了解如何开发这个系统 代码生成针对表进行代码生成,包括JS,JAVA,SQL和HTML,可以通过预览功能直接预览。在生成代码到本地前,有些参数需要修改,否则,代码生成后显示的都是英文
其他修改的地方有 是否包含导入导出,如果选择,则会生成导入导出的代码,导入导出模板则需要参考已有功能(比如数据字典)来完成 是否包含附件管理,如果选择,则业务对象可以关联一组附件,比如客户关联一组附件,或者申请信息关联一组附件。 字段信息的显示名字,这个用于前端列表,表单的显示,应当输入中文名字 作为搜索,可以勾选几个搜索条件,系统自动生成一个搜索配置类 如果字段关联数据字典,那么设置一个数据字典,这样,生成的界面将会变成一个下拉列表 1.3.1 前端代码前端代码采用了layui的JS框架,使用了按需加载的方式,文档参考 http://www.layui.com/doc/base/infrastructure.html.
基础JS
1.3.2 HTML代码页面采用layui,文档参考 http://www.layui.com/demo/ 模板语言了使用Beetl,文档参考ibeetl.com
基础UI组件:
2 单体系统,系统拆分和微服务plus是一个适合单体系统,系统拆分的java快速开发平台,也可以经过改造成微服务平台(以前做一个版本,但觉得plus应该聚焦系统核心,而不是简单堆砌功能,所以放弃了) 以下是单体系统,小系统,和微服务的区别 单体系统是一种常见系统设计方式,也是这十几年年来最主要的设计方式。单体系统的所有功能都在一个工程里,打成一个war包,部署。这样有如下明显好处
随着业务发展,重构,单体系统越来越多,在开发一个庞大的单体系统的时候,就会有如下弊病
因此,越来越多的架构师在设计系统的时候,会考虑系统拆分成多个单体小系统甚至是微服务。对于传统企业应用,拆成小系统更合适,对互联网系统,使用微服务个更合适,这是因为
因此,对于大多数传统IT应用来说,单体拆分小系统在技术上没有风险,是一个可以立即实施的架构。如下是一个单体系统拆分后的物理架构 对于用户来说,访问不同的菜单功能,讲定位到不同得子系统,提供服务。
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论