main
HuangHai 1 month ago
parent c618d930e0
commit 91edaf6d38

@ -0,0 +1,56 @@
package com.dsideal.base.AI.Controller;
import com.jfinal.core.Controller;
import com.jfinal.kit.SseEmitter;
public class SSEController extends Controller {
/**
* 线
*
*/
public void sse1() throws InterruptedException {
String msg = "111 222 333 444 555 666 777";
//创建sse
SseEmitter sseEmitter = new SseEmitter(getResponse());
//主线程里拿到数据推送消息
String[] datas = msg.split("");
for (String data : datas) {
//推送
sseEmitter.sendMessage(data);
Thread.sleep(50);
}
//sse完成
sseEmitter.complete();
//结束response
renderNull();
}
/**
* 线
*
* http://10.10.21.20:9200/dsBase/ai/sse2
*/
public void sse2() {
//创建sse
final SseEmitter sseEmitter = new SseEmitter(getResponse());
String msg = "111 222 333 444 555 666 777";
//模拟chatgptapi 异步调用返回
new Thread(() -> {
String[] datas = msg.split("");
for (String data : datas) {
//推送 异步子线程里推送数据给客户端
sseEmitter.sendMessage(data);
try {
Thread.sleep(50);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
//完成sse 告知主线程已经完成
sseEmitter.complete();
}).start();
//锁住等待子线程推送完成
sseEmitter.waiting(100);
renderNull();
}
}

@ -75,54 +75,4 @@ public class YunNanAiController extends Controller {
sseEmitter.waiting(100);
renderNull();
}
/**
* 线
*
*/
public void sse1() throws InterruptedException {
String msg = "111 222 333 444 555 666 777";
//创建sse
SseEmitter sseEmitter = new SseEmitter(getResponse());
//主线程里拿到数据推送消息
String[] datas = msg.split("");
for (String data : datas) {
//推送
sseEmitter.sendMessage(data);
Thread.sleep(50);
}
//sse完成
sseEmitter.complete();
//结束response
renderNull();
}
/**
* 线
*
* http://10.10.21.20:9200/dsBase/ai/sse2
*/
public void sse2() {
//创建sse
final SseEmitter sseEmitter = new SseEmitter(getResponse());
String msg = "111 222 333 444 555 666 777";
//模拟chatgptapi 异步调用返回
new Thread(() -> {
String[] datas = msg.split("");
for (String data : datas) {
//推送 异步子线程里推送数据给客户端
sseEmitter.sendMessage(data);
try {
Thread.sleep(50);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
//完成sse 告知主线程已经完成
sseEmitter.complete();
}).start();
//锁住等待子线程推送完成
sseEmitter.waiting(100);
renderNull();
}
}

@ -1,5 +1,6 @@
package com.dsideal.base;
import com.dsideal.base.AI.Controller.SSEController;
import com.dsideal.base.AI.Controller.YunNanAiController;
import com.dsideal.base.Base.Controller.BaseController;
import com.dsideal.base.Classes.Controller.ClassController;
@ -100,9 +101,12 @@ public class BaseApplication extends JFinalConfig {
//资源管理
me.add("/res", ResourceController.class);
//云校
me.add("/yx",YunXiaoController.class);
me.add("/yx", YunXiaoController.class);
//大数据AI
me.add("/ai", YunNanAiController.class);
//SSE测试
me.add("/sse", SSEController.class);
}
@Override

Loading…
Cancel
Save