EasyRest-NAS- 高性能 RESTful 框架

Java REST/RESTful项目

详细介绍

EasyRest-NAS

English doc

EasyRest 与 Netty, Akka 和 Spring 的整合.

  • 这是一个为快速开发而设计的高性能RESTful框架,极易搭建集群和使用分布式。你可以完全专注在你的业务逻辑上。

  • 不需要 Tomcat,不需要 web.xml 配置,只需一个有 main 函数的 jar 包,你就能拥有一个完美的分布式系统。

  • 你可以不知道 Netty,也可以不知道 akka,甚至不熟悉 Spring,但仍然可以使用该框架。

快速开始:

  • REST接口定义

    @BindURL(“/rest/{TENANT}/stock”)
    public interface StockInfoRest {

    @Post(“/personal/{USER_ID}/favorite/{CODE}”)
        void addFavorite(String TENANT, String USER_ID, String CODE, long time);

    @Post
        ResponseEntity addStocks(int userNumber, String userName, List stockList);

    @Get(“/personal/{USER_ID}/favorite/list”)
        List getStockList(String USER_ID);

    }

  • 使用@Service注解,将该类交给Spring生成bean并管理,该框架可以和spring无缝对接使用。

    @Service
    public class StockInfoRestController implements StockInfoRest {

    @Override
        public void addFavorite(String TENANT, String USER_ID, String CODE, long time) {
            System.out.println(TENANT + ” ” + USER_ID + ” ” + CODE + ” ” + time);
        }

    @Override
    @AllDefined
        public ResponseEntity addStocks(int userNumber, String userName, List stockList) {
            return ResponseEntity.buildOkResponse(Lists.asList(userNumber, userName, new List[]{stockList}));
        }

    @Override
        public List getStockList(String USER_ID) {
            return Lists.newArrayList(new Stock(100000, “stock1”), new Stock(100001, “stock2”), new Stock(100002, “stock3”));
        }
    }

  • 主函数类,用于启动以及配置。

    public class Example {

    public static void main(String[] args) {
            EasyRest easyRest = new EasyRest(“classpath:MyExampleApplicationContext.xml”);
            easyRest.startup(“EasyRestServer”);
        }

    }

  • 一个基础的spring配置文件

    <?xml version=”1.0” encoding=”UTF-8”?>
    xmlns="http://www.springframework.org

推荐源码