zoukankan      html  css  js  c++  java
  • 2018-08-14 中文代码之Spring Boot实现简单REST服务

    最终目标详见: 参考MSDN,试搞.NET类库标识符的翻译版 · Issue #54 · program-in-chinese/overview

    此文仅为技术探索+原型搭建的第一小步.

    源码库: 演示原型 · program-in-chinese/programming_term_dictionary@6bb00f3

    主要部分源码如下:
    应用.java

    @SpringBootApplication
    public class 应用 {
    
      public static void main(String[] 参数) {
        SpringApplication.run(应用.class, 参数);
      }
    
    }
    

    词典控制器.java

    @RestController
    public class 词典控制器 {
    
      private static final HashMap<String, String> 英中词典 = new HashMap<>();
    
      static {
        英中词典.put("List", "列表");
      }
      private final AtomicLong 计数器 = new AtomicLong();
    
      @GetMapping("/")
      @ResponseBody
      public 词条 取词条(@RequestParam(name = "term", required = false, defaultValue = "") String 英文术语) {
        if (英中词典.containsKey(英文术语)) {
          return new 词条(计数器.incrementAndGet(), 英中词典.get(英文术语));
        }
        return null;
      }
    }
    

    词条.java

    public class 词条 {
      // TODO: 仅为演示用
      private final long id;
      private final String 中文术语;
    
      public 词条(long id, String 中文术语) {
        this.id = id;
        this.中文术语 = 中文术语;
      }
    
      public long getId() {
        return id;
      }
    
      public String get中文术语() {
        return 中文术语;
      }
    }
    

    在演示服务器上构建并从jar包启动服务:

    $ mvn package && java -jar target/programming-term-dictionary-0.1.0.jar --server.port=8090
    

    在本地(客户端)访问, 或直接在浏览器访问http://74.91.17.250:8090/?term=List:

    $ curl 74.91.17.250:8090?term=List
    {"id":3,"中文术语":"列表"}
    

    参考文档: Building a RESTful Web Service with Spring Boot Actuator

  • 相关阅读:
    sys模块
    反射
    动态导入模块
    类的静态属性
    多态
    继承
    组合
    linux系统各个子目录的内容
    mysql安装
    Docker 数据卷操作
  • 原文地址:https://www.cnblogs.com/program-in-chinese/p/10499265.html
Copyright © 2011-2022 走看看