Magician基于 Netty 開發(fā)的小型 Http 服務包
Magician 是一個基于Netty開發(fā)的小型 HTTP服務包,可以非常方便的啟動一個http服務,同時也支持WebSocket,注解式Handler配置
運行環(huán)境
JDK8+
文檔
示例
導入依賴
<dependency>
<groupId>com.github.yuyenews</groupId>
<artifactId>Magician</artifactId>
<version>2.0.7</version>
</dependency>
<!-- 這是日志包,必須有,不然控制臺看不到東西,支持任意可以看slf4j橋接的日志包 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.7.12</version>
</dependency>
創(chuàng)建http服務
創(chuàng)建一個 Handler
@HttpHandler(path="/")
public class DemoHandler implements HttpBaseHandler {
@Override
public void request(MagicianRequest magicianRequest, MagicianResponse response) {
// response data
magicianRequest.getResponse()
.sendJson(200, "{'status':'ok'}");
}
}
創(chuàng)建http服務
Magician.createHttp()
.scan("handler所在的包名")
.bind(8080);
創(chuàng)建http服務,監(jiān)聽多端口
HttpServer httpServer = Magician.createHttp()
.setConfig(
MagicianConfig.create().setNumberOfPorts(2)
)
.scan("com.magician.test2");
httpServer.bind(8080);
httpServer.bind(8081);
創(chuàng)建 WebSocket
@WebSocketHandler(path = "/websocket")
public class DemoSocketHandler implements WebSocketBaseHandler {
@Override
public void onOpen(WebSocketSession webSocketSession) {
}
@Override
public void onClose(WebSocketSession webSocketSession) {
}
@Override
public void onMessage(String message, WebSocketSession webSocketSession) {
}
}
更多組件
可以利用這些組件方便的開發(fā)web項目
評論
圖片
表情
