zoukankan      html  css  js  c++  java
  • 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_20-页面查询服务端开发-创建CMS服务工程-测试Controller

    要写的就是这个接口的实现

    定义接口的实现类


    实现接口内的方法



    学过SpringMvc这里就可以使用springMvc注解来开发了。例如这里使用@RestController


    @RestController相当于@Controller和@ResponseBody两个注解的集合。
    @ResponseBody 作用就是把响应的就结果集转成json。
    两个注解合二为一就是@RestController

    起一个跟路径为/cms/page

    @GetMapping相当于@RequestMapping里面使用get方式。

    相当于通过url传参page和size

    形参来接收。使用@PathVariable来接收

    这里面有几个构造参数

    ResultCode


    QueryResult

    CommonCode是一个枚举对象。

    lombok插件的安装

    参考网址:https://jingyan.baidu.com/article/0a52e3f4e53ca1bf63ed725c.html

    IntelliJ IDEA lombok插件的安装和使用

    在写代码的时候,发现没有自动给属性生成getter和setter方法

    但是我的实体类里面已经加了@Data的注解

    经过翻看第十八课的内容,发现lombok是需要装一个IDEA的插件。

    然后可以点开 查看支持的注解。

    install安装就可以了。这是安装后的了

    然后还需要开启 Enabl annotation processing。这个我发现 我这里的model的工程是自动开启 的。所以没有再单独勾选。

    然后再去写set属性的值。就不会再报错了

    测试代码



    最终返回一个QueryResponseResult

    启动测试


    请求的类型是get

    json格式化后。code:操作代码 message:就是提示信息 success:是否操作成功

    QueryResponseResult继承ResponseResult

    ResponseResult里面有这三个属性的值

    为什么在api里面定义接口,而不再cms的项目里面定义接口。

    1.我们要在api里面统一的把接口管理起来。有一个统一的位置
    如果要在cms这个微服务里面定义接口的话。如果我们的微服务特别多,那么接口分散在各个微服务里面。也就是不方便统一管理。
    2.
    将来微服务与微服务之间调用。如果接口分散在不同的微服务里面,如果服务A要调用服务B,那么服务A要依赖B才能把接口拿到。现在我把接口统一的在api工程里面了。所有的微服务只要依赖api。就轻而易举的拿到任意微服务的接口了。所以要把接口统一的在api里面管理

    接口就是一个简单的Interface

    接口实现类采用了SpringMVC的注解。假如有一天不用SpringMVC了,要用其他的web框架了。如果没有接口这一层的话,就要改一大堆地方,如果有接口这一层,那么接口这里就不用动。接口实现类只需要其他框架开发就可以。这旧增强了系统的可扩展性
    以上就是定义接口和实现类。

  • 相关阅读:
    跟老婆学习软件工程一:瀑布模型
    我的手机需求
    我的BB8820手机
    WordPress中query_posts函数和WPpagenavi插件冲突的解决方法
    HomeZZ注册推介码
    分享:世界机场代码(ICAO)[带经纬度]
    Silverlight学习笔记十七BingMap(三)之地图的地区标识
    从真正的项目中学习Silverlight(MSN Entertainment项目源码下载)
    Silverlight的十几种图片展示炫酷效果(附源码)
    Silverlight水的微波凌步效果
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11542441.html
Copyright © 2011-2022 走看看