httpkit - 精巧的 java 嵌入式 http 服务器


Apache
跨平台
Java

软件简介

httpkit是精巧的java嵌入式http服务器,超快的启动速度(实测仅需80毫秒),是tomcat、jetty的完美替代方案。

使用方法

//起一个server实例
int port = 7777;
HttpServer server = HttpServer.bind(port);


//设置上下文路径
server.setContextPath("root");


//设置controller类的扫描包
server.packageSearchAndInit("com.lnwazg.main.ctrl");


//设置自动磁盘扫描
server.autoSearchThenAddWatchResourceDirRoute();


//监听在这个端口处
server.listen();

然后访问文件列表: http://127.0.0.1:7777/root/list

访问具体的控制器 http://127.0.0.1:7777/root/base/index

Controller类的写法

package com.lnwazg.main.ctrl;


import java.io.File;
import java.util.ArrayList;
import java.util.List;


import com.lnwazg.httpkit.anno.BasePath;
import com.lnwazg.httpkit.controller.Controller;


/**
 * 示例controller<br>
 * 注解指定这个类的path
 * @author nan.li
 * @version 2016年11月30日
 */
@BasePath("/base")
public class FirstController extends Controller
{
    void index()
    {
        Person person = new Person();
        person.age = "18";
        person.name = "hudson";
        List<Person> list = new ArrayList<>();
        for (int i = 0; i < 5; i++)
        {
            list.add(person);
        }
        person = new Person();
        person.name = getParam("fff");
        list.add(person);
        
        //输出abc
        ok("abc");
        
        //输出一个json对象
        //okJson(list);
        
        //        okJson(GsonHelper.gson.toJson(list));
        //        okJson(list);
        //        okJson(new FrontObj().success().setData(list));
        //        okJson(success(list));
        //        okJson(fail(list));
        //        okJson(fail(list,10002,"转换错误"));
        //        okJson(fail(10002, "转换错误"));
        //        okJson(fail(10003));
    }
    
    void index2()
    {
        //输出一个文件
        okFile(new File("c:\\1.jpg"));
    }
    
    public static class Person
    {
        String name;
        
        String age;
    }
}