源码动态 源码评测 源码技巧 网站运营 网页制作 网站开发 安全相关 软件教程 IDC资讯 业界消息
高级搜索
关键字:Discuz!  Axure  团购系统
最新更新发布资源提建议收藏本站
当前位置:A5下载 > 资讯报道 > 源码动态 > 大版本,Jboot v3.6.0 重磅发布

大版本,Jboot v3.6.0 重磅发布

作者:小静来源:a5源码浏览:时间:2020-11-10 21:20我要评论
boot 是一个基于 JFinal、JFinal-Undertow、Dubbo、Seata、Sentinel、ShardingSphere、Nacos 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开

boot 是一个基于 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);

}}

相关文章
评论暂时关闭
资讯分类
本类热门资讯
  • 源码推荐
  • 软件推荐
关于我们联系我们发布资源广告服务合作伙伴网站地图版权声明与我们对话