Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开发,快乐生活。
在 Jboot v3.4.0 发布,直接从 v3.3.6 跳过来了,最为主要的原因是 Jboot 新增了一个全新的组件:AttachmentContainer。
AttachmentContainer 的主要作用,是用来 “存放” 附件的,当用户使用 JBoot 进行开发的时候,可以自定义多个 AttachmentContainer,方便把用户上传过来的文件存放在多个位置,比如:存放本地和阿里云OSS。当用户对附件进行附件数据请求的时候,我们亦可以用指定的 AttachmentContainer 进行渲染反馈。
在 Jboot Fatjar 中,Jboot 的处理方案 和 SpringBoot 完全不同,Jboot 是使用了 apache 的 maven-assembly-plugin 插件直接进行打包,启动是直接爆了 java main 方法,没有什么弯弯绕绕,极大的提高了性能。
同时,我们编写的 WEB 应用,可以按照我们的意愿,对项目进行 fatjar tomcat undertow 等不同的打包方式,其不用修改任何代码并其不同的打包方式,所运行生产的数据格式、目录位置都是一模一样的。这样带来一个巨大的好处是,我们的项目可以随时在 fatjar/tomcat/undertow 等不同的方案下随时切换,程序运行过程中产生的数据(附件等)直接复制到另一个容器直接运行。在方案迁移上给我们节约了大量的成本。
同时:Jboot 也带来了全新的文档,分别托管在 gitee page 和 github上。
访问地址:http://jboot.io (这个放在github上,会有点慢)
国内镜像:http://jbootprojects.gitee.io/docs
目前已经开源超过了 3 年的时间,迭代了 100+ 个版本,已经被超过 1000+ 公司在使用。
Jboot 主要有以下特征:
1、基于 JFinal 的 MVC + ORM 快速开发。
2、基于 ShardingSphere + Seata 分布式事务 和 分库分表。
3、基于 Dubbo 或 Motan 的 RPC 实现
4、基于 Sentinel 的分布式限流和降级
5、基于 Apollo 和 Nacos 的分布式配置中心
6、基于 EhCache 和 Redis 的分布式二级缓存
Jboot v3.4.0 更新内容如下:
新增:门户网关 Gateway 新增自定义负载均衡策略的支持
新增:AttachmentContainer 组件,方便自定义把附件上传到其他第三方任何平台
新增:全新的文档地址 和 Jboot 官网
修复:数据源 Datasource 的 validationQuery 属性配置不生效的问题
修复:SqlDebugPrinter 对参数为 Boolean 数据输出的格式不正确的问题
优化:升级 Sentinal、Metrics、JFinal-Weixin 等到最新版本
优化:删除 JbootActionReporter 一些不必要的方法
优化:删除一些不必要的 注释信息
优化:修改 JbootPaginateDirective 自动去获取当前的 page 信息,而不需配置
优化:移除 JbootHttpImpl 默认的 content-type 配置
优化:重构 Metrics 读取的相关处理,在 Metrics 未配置的时候,没必要添加相关 Handler,提升性能
maven 依赖:
<dependency> <groupId>io.jboot</groupId> <artifactId>jboot</artifactId> <version>3.4.0</version> </dependency>
Hello World:
@RequestMapping("/") public class HelloworldController extends JbootController { public void index(){ renderText("hello world"); } public static void main(String[] args){ JbootApplication.run(args); } }