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

栏目: 软件资讯 · 发布时间: 5年前

内容简介: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 的执行行号定位,每个拦截器是否执行、以及拦截器的执行行号定位,方便定位调试。

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

  • 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);
    }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mathematica Cookbook

Mathematica Cookbook

Sal Mangano / O'Reilly Media / 2009 / GBP 51.99

As the leading software application for symbolic mathematics, Mathematica is standard in many environments that rely on math, such as science, engineering, financial analysis, software development, an......一起来看看 《Mathematica Cookbook》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具