内容简介:Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、...
Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开发,快乐生活。
到目前为止,Jboot 已经开源超过了 4 年的时间,迭代了 160+ 个版本,已经被超过 1000+ 公司在使用,其中包含了多个知名的上市公司。
Jboot 基于 JFinal 开发,属于 JFinal 生态体系应用框架,在 JFinal 的支持上,Jboot 主要新增了一些常用的功能。
- 1、扩展了 Action 的日志,和 Sql 日志。详细的知道了每条完整的 Sql 及其 执行消耗时间。
- 2、能够知道每个 Controller 的执行行号定位,每个拦截器是否执行、以及拦截器的执行行号定位,方便定位调试。
- 3、在 JFinal ActiveRecordPlugin 的支持上、新增了根据列来查询的 API,更加方便我们通过 API 来查询数据。
示例1:
String name = "michael";
DAO.findFirstByColumns(Columns.create("username",name));
生成的 sql 为
select * from tableName where username = 'michael'
示例2:
public List<User> findList(){
DAO.alias('u')
.leftJoin("article").as('a').on("u.id = a.user_id")
.loadColumns('u.nickname,a.title')
.findListByColumns(Columns.create().in('u.id',1,2,3))
}
生成的 sql 为
select u.nickname,a.title from user as u
left join article a on u.id = a.user.id
where u.id in (1,2,3)
同时支持、一对多、多对一、多对多查询、分库分表查询、和分布式事务等,详情:https://jbootprojects.gitee.io/docs/docs/db.html
- 4、最新支持 JFinal 的 @Path 注解(同 @RequestMapping ),同时不需要在 Config 做任何的代码配置,同时支持在 @Path 下传入参数。
例如:
@Path("${myconfig}/club")
public class ClubController extends Controller {
......
}
在 jboot.properties 添加如下配置:
myconfig = /admin
最终,ClubController 的映射路径为:/admin/club ,其实,不仅仅是 @Path 注解,在 Jboot 体系下,所有的注解都支持参数配置。
当然,还有 RPC、分布式缓存、MQ 等更多的企业级功能,文档详情:https://jbootprojects.gitee.io/docs/
同时,Jboot 官方也推出了企业级开发框架 JbootAdmin,详情 https://jbootprojects.gitee.io/docs/jbootadmin/
Jboot 主要有以下特征:
- 1、基于 JFinal 的 MVC + ORM 快速开发。
- 2、基于 ShardingSphere + Seata 分布式事务 和 分库分表。
- 3、基于 Dubbo 或 Motan 的 RPC 实现
- 4、基于 Sentinel 的分布式限流和降级
- 5、基于 Apollo 和 Nacos 的分布式配置中心
- 6、基于 EhCache 和 Redis 的分布式二级缓存
Jboot v3.6.0 更新内容如下:
- 新增:ClassUtil.hasClass 方法,用于判断一些第三方组件依赖
- 新增:Model 新增 @JsonIgnore 注解,用于配置某些不输出的字段
- 新增:Model 新增 FastJson 的注解 @JsonField 的配置支持
- 新增:新增对 JFinal 最新版本 @Path 的配置支持
- 新增:DAO 查询的时候,支持通过 loadColumns() 方法配置其查询的列
- 修复:Columns组装sql工具类in()、notIn()方法新增安全模式检查参数是否为空,解决安全模式下,List不为null,但没有元素时跳过安全检查。感谢 @Liuenxin
- 优化:Columns.in() 和 Columns.notIn 修改参数 List 为 Collection
- 优化:升级 JFinal、Fastjson、Nacos 等到最新版本
- 优化:为 Json 的相关代码创建独立包
- 优化:重构 JbootJson 使之代码更加简洁
- 优化:重命名 SqlDebugger.debug 为 SqlDebugger.run,删除其不必要的方法
- 优化:优化 AopCache,使之在缓存数据错误时,自动刷新缓存信息
- 文档:更新 json 的相关文档
开发文档:
https://jbootprojects.gitee.io/docs/
maven 依赖:
<dependency>
<groupId>io.jboot</groupId>
<artifactId>jboot</artifactId>
<version>3.6.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);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 【重磅发布】Linkis 0.10.0 版本发布
- Seata 1.0.0 GA 版本重磅发布
- NovalIDE 1.2.3 版本更新,重磅功能来袭
- 【重磅发布】DataSphere Studio 0.9.0 版本发布
- NovalIDE 1.2.1 版本发布,重磅功能来袭
- DOClever 5.0 版本重磅发布,全新的 UI 和用户体验
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Art of Computer Programming, Volume 2
Knuth, Donald E. / Addison-Wesley Professional / 1997-11-04 / USD 79.99
Finally, after a wait of more than thirty-five years, the first part of Volume 4 is at last ready for publication. Check out the boxed set that brings together Volumes 1 - 4A in one elegant case, and ......一起来看看 《The Art of Computer Programming, Volume 2》 这本书的介绍吧!