springboot实现ChatGPT式调用(一次调用,持续返回)

下边实现了一个持续返回100以内随机数的接口,在接口超时之前会每隔1秒返回一个随机数

java 复制代码
@GetMapping(value = "/getRandomNum", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public SseEmitter getRandomNum() {
    SseEmitter emitter = new SseEmitter();
    ThreadLocalRandom random = ThreadLocalRandom.current();
    new Thread(() -> {
            try {
                while (true) {
                    int price = random.nextInt(100);
                    emitter.send(SseEmitter.event().data(price));
                    Thread.sleep(1000);
                }
            } catch (Exception e) {
                emitter.completeWithError(e);
            }
        }).start();
    return emitter;
}

下边是postman调用效果图

相关推荐
weixin_462428471 分钟前
使用 Caffeine 缓存并在业务方法上通过注解实现每3到5秒更新缓存
java·缓存
程序媛小果3 分钟前
基于java+SpringBoot+Vue的桂林旅游景点导游平台设计与实现
java·vue.js·spring boot
骑鱼过海的猫1235 分钟前
【java】java通过s3访问ceph报错
java·ceph·iphone
杨充11 分钟前
13.观察者模式设计思想
java·redis·观察者模式
Lizhihao_13 分钟前
JAVA-队列
java·开发语言
喵叔哟22 分钟前
重构代码之移动字段
java·数据库·重构
喵叔哟22 分钟前
重构代码之取消临时字段
java·前端·重构
fa_lsyk25 分钟前
maven环境搭建
java·maven
Daniel 大东44 分钟前
idea 解决缓存损坏问题
java·缓存·intellij-idea
2401_857636391 小时前
共享汽车管理新纪元:SpringBoot框架应用
数据库·spring boot·汽车