轻量 IO C框架 loveqq1.0.9 发布,多项优化+新增 rocketmq+redismq 启动器
本次更新:
- 新增:loveqq-boot-starter-rocketmq,新增 rocketmq 启动器
- 优化:loveqq-boot-starter-redisson,新增基于 redis 的简单 mq 消息队列
- 优化:loveqq-boot-starter-tx,新增 @TransactionalEventListener 支持
- 优化:loveqq-boot,@Value 注解支持绑定复杂数据类型
- 优化:loveqq-boot,新增 @ConditionalOnExpression 条件注解支持
- 修复:loveqq-mvc-netty,修复 sse 响应异常
- 优化:loveqq-mvc-netty,支持 CompletionStage 返回值类型,优化 DispatcherHandler 请求处理逻辑
- 优化:loveqq-cache-core,响应式缓存注解代理逻辑,更简单流畅
- 新增:添加 loveqq-framework logo
- 重构:loveqq-data,原 loqq-data-jdbc 模块拆分为 loveqq-data-korm,一个简易的基于接口代理的半orm框架;loveqq-data-codegen,一个基于 korm 的代码生成器
- 优化:多项依赖升级
简单示例:
package com.kfyty.demo;
import com.kfyty.loveqq.framework.boot.K;
import com.kfyty.loveqq.framework.boot.validator.annotation.Condition;
import com.kfyty.loveqq.framework.core.autoconfig.annotation.Async;
import com.kfyty.loveqq.framework.core.autoconfig.annotation.BootApplication;
import com.kfyty.loveqq.framework.core.autoconfig.annotation.EventListener;
import com.kfyty.loveqq.framework.core.event.ContextRefreshedEvent;
import com.kfyty.loveqq.framework.data.cache.core.annotation.Cacheable;
import com.kfyty.loveqq.framework.web.core.annotation.GetMapping;
import com.kfyty.loveqq.framework.web.core.autoconfig.annotation.EnableWebMvc;
import lombok.Data;
@Async
@EnableWebMvc
@EventListener
@BootApplication
public class Main {
public static void main(String[] args) {
K.run(Main.class, args);
}
@Cacheable
@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 {
@Condition(when = "type == 1", then = "photo != null", message = "type=1时,图片不能为空")
private Integer type;
private String photo;
}
}