您现在的位置是:首页 > 文章详情

loveqq-framewoek 1.0.5 发布,比 Spring 更强大的条件注解推断

日期:2024-09-11点击:365

本次更新:

  • 优化: loveqq-boot-starter-netty,新增 WebSocketHandler 以支持 websocket 链接,并兼容命令式编码风格
  • 优化: loveqq-boot-starter-netty,新增 WsFilter,以支持 websocket 过滤器
  • 优化: loveqq-boot-starter-netty,新增 sse 响应支持
  • 优化:引入熟悉的 @AliasFor,全面支持注解继承、复合注解
  • 优化:ioc 容器启动性能、反射调用性能
  • 优化:支持 ide 中 shorten command line 启动
  • 优化:支持 ide 中,动态构建 jar index 启动应用
  • 优化:得益于自定义 JarIndexClassLoader,只需将 ClassFileTransformer 实现类配置到 k.factories 中,即可生效,而无需配置 javaagent 以及 Pre-Main
  • 优化:@Configuration 的自调用默认无需生成代理类

简介

轻量级 ioc/aop 框架,比 spring 更强大的条件推断;抽象出 mvc 模式,提供嵌入式 reactor-netty、tomcat 服务器;
提供 javafx mvvm 框架,可实现模型-数据的双向绑定;提供动态数据源配置支持;提供注解式缓存支持;
已集成 
    aspect、reactor-netty、tomcat、nacos、feign、mybatis、spring-tx、jsr303-valid、
    logback、jakarta-mail、quartz、xxl-job、pagehelper、redisson、shiro、thymeleaf、
    datasource-auto-config、baidu-uid-generator 等常用组件;
默认提供 jar 包瘦身方式打包,支持 jarindex 启动,启动速度更快;
已提供 Ruoyi-for-loveqq 版本,替换到 spring 及其全部 starter,开箱即用。

简单示例

 @Slf4j @EnableWebMvc @BootApplication public class Main { public static void main(String[] args) { K.run(Main.class, args); } @GetMapping public User hello(@Valid User user) { return user; } @Async @EventListener public void onStarted(ContextRefreshedEvent event) { log.info("started succeed !"); } @Data public static class User { /** * 自定义条件校验注解 * 以当前 bean 为 root 对象,可以基于 ognl 表达式实现参数校验 */ @Condition(when = "type == 1", then = "photo != null", message = "type=1时,图片不能为空") private Integer type; private String photo; } /** * 循环依赖及懒加载示例 */ @Component public static class AAA { /** * 虽然 BBB 并没有默认的构造器,但是在 @Lazy 加持下,依然可以全部注入成功 */ public AAA(@Lazy BBB bbb) { } } @Component public static class BBB { public BBB(AAA aaa) { } } } 
原文链接:https://www.oschina.net/news/311473/loveqq-framewoek-1-0-5
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章