18
18
import org .smartboot .http .server .handler .HttpRouteHandler ;
19
19
20
20
import javax .sql .DataSource ;
21
- import java .io .IOException ;
22
21
23
22
public class Bootstrap {
24
23
static byte [] body = "Hello, World!" .getBytes ();
25
24
26
25
public static void main (String [] args ) {
27
- HttpRouteHandler routeHandle = new HttpRouteHandler ();
28
- routeHandle
29
- .route ("/plaintext" , new HttpServerHandler () {
30
-
31
-
32
- @ Override
33
- public void handle (HttpRequest request , HttpResponse response ) throws IOException {
34
- response .setContentLength (body .length );
35
- response .setContentType ("text/plain; charset=UTF-8" );
36
- response .write (body );
37
- }
38
- })
39
- .route ("/json" , new HttpServerHandler () {
40
-
41
- @ Override
42
- public void handle (HttpRequest request , HttpResponse response ) throws IOException {
43
-
44
- response .setContentType ("application/json" );
45
- JsonUtil .writeJsonBytes (response , new Message ("Hello, World!" ));
46
- }
47
- });
48
- initDB (routeHandle );
49
26
int cpuNum = Runtime .getRuntime ().availableProcessors ();
50
27
// 定义服务器接受的消息类型以及各类消息对应的处理器
51
28
HttpBootstrap bootstrap = new HttpBootstrap ();
@@ -54,7 +31,19 @@ public void handle(HttpRequest request, HttpResponse response) throws IOExceptio
54
31
.headerLimiter (0 )
55
32
.readBufferSize (1024 * 4 )
56
33
.writeBufferSize (1024 * 4 );
57
- bootstrap .httpHandler (routeHandle ).setPort (8080 ).start ();
34
+ bootstrap .httpHandler (new HttpServerHandler () {
35
+ @ Override
36
+ public void handle (HttpRequest request , HttpResponse response ) throws Throwable {
37
+ if ("/plaintext" .equals (request .getRequestURI ())) {
38
+ response .setContentLength (body .length );
39
+ response .setContentType ("text/plain; charset=UTF-8" );
40
+ response .write (body );
41
+ } else if ("/json" .equals (request .getRequestURI ())) {
42
+ response .setContentType ("application/json" );
43
+ JsonUtil .writeJsonBytes (response , new Message ("Hello, World!" ));
44
+ }
45
+ }
46
+ }).setPort (8080 ).start ();
58
47
}
59
48
60
49
private static void initDB (HttpRouteHandler routeHandle ) {
0 commit comments