• 0
  • 0
分享
  • Restful接口开发:创建一个简单实例——软件测试圈
  • 北极 2022-07-28 14:17:07 字数 3567 阅读 4253 收藏 0

一、Restful接口实例

通过构建一个Restful接口实例,更加直接深入了解Restful接口的开发。

二、构建一个简单实例

1.创建项目参考

https://blog.csdn.net/u010886217/article/details/85239110

2.项目结构

1.png

Maven项目结构

2.png

3.创建第一个controller测试类:HelloworldController

package com.example.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequestMapping("/helloworld")
public class HelloworldController {
    @GetMapping
    public Map<String,Object> sayHelloworld(){
        Map<String,Object> result=new HashMap<>();
        result.put("message","hello world!");
        result.put("message2","hello world 2!");
        result.put("message3","hello world 3!");
        return result;
    }
}

运行启动类:DemoApplication

3.png

4.测试刚刚命令,访问http://localhost:8080/helloworld,返回结果

4.png

三、构建一个复杂实例

1. DTO类:TvSeriesDto.class,功能:传输数据电视剧系列的对象

package com.example.demo;
import com.sun.xml.internal.ws.spi.db.DatabindingException;
import java.util.Date;
public class TvSeriesDto {
    private int id;
    private String name;
    private int seasonCount;
    private Date originRelease; 
    //构造函数
    public TvSeriesDto(){ 
    }
    public TvSeriesDto(int id,String name,int seasonCount,Date originRelease){
        this.id=id;
        this.name=name;
        this.seasonCount=seasonCount;
        this.originRelease=originRelease;
    }
    public int getId() {
        return id;
    } 
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    } 
    public void setName(String name) {
        this.name = name;
    } 
    public int getSeasonCount() {
        return seasonCount;
    } 
    public void setSeasonCount(int seasonCount) {
        this.seasonCount = seasonCount;
    }
    public Date getOriginRelease() {
        return originRelease;
    }
    public void setOriginRelease(Date originRelease) {
        this.originRelease = originRelease;
    }
}

2.    调用类

package com.example.demo; 
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
@RestController
public class HelloworldController {
//    @GetMapping
    @RequestMapping("/helloworld")
    public Map<String,Object> sayHelloworld(){
        Map<String,Object> result=new HashMap<>();
        result.put("message","hello world!");
        result.put("message2","hello world 2!");
        result.put("message3","hello world 3!");
        return result;
    }
    /**
     * 获取所有电视节目列表
     * @return
     */
    @RequestMapping("/getall")
    public List<TvSeriesDto> getAll(){
 
        List<TvSeriesDto> list=new ArrayList<>();
        Calendar calendar=Calendar.getInstance();
        calendar.set(2016,Calendar.OCTOBER,12,0,0);
        list.add( new TvSeriesDto(1,"WestWorld",1,calendar.getTime()));
        return list;
    }
}

运行程序DemoApplication,访问http://localhost:8080/getall

5.png

3.修改日期格式(全局)

修改..\resources\application.properties文件为..\resources\application.yml,然后添加

spring:
  jackson:
    date-format: yyyy-MM-dd #如果使用字符串型表示,用这行设置
    timezone: GMT+8
    serialization:
      write-dates-as-timestamps: false #使用数值timestamp表示日期,false表示不用这数字;true表示用数字

重新访问接口http://localhost:8080/getall,则原始数据:

[{"id":1,"name":"WestWorld","seasonCount":1,"originRelease":1476201605562}]

当前数据:

[{"id":1,"name":"WestWorld","seasonCount":1,"originRelease":"2016-10-11"}]

注意yml文件格式

(1)每行缩进是两个空格

(2)冒号后面要有一个空格

6.png

(至此,一个基于springboot框架的初始项目构建好了)


作者:RayBreslin

原文链接:https://blog.csdn.net/u010886217/article/details/100424543

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   一、DOM简介  1.DOM构造和布局  浏览器在解析HTML文档时,会将每个标签元素抽象成DOM(Document Object Model,文档对象模型)的节点,按照标签元素层次分明的结构,将HTML文档构建成一棵DOM树,如图 1所示。图 1 DOM树示例  浏览器按从上到下,从左到右的顺序,读取DOM树的文档节点,顺序存放到文档流。如果读取的节点是另一节点的子节点,将其按顺序存放在父节点的内部,且嵌套层级没有数量限制。  2.DOM操作  DOM定义了所有HTML元素的对象和属性,以及访问方法。通过DOM提供的方法,所有HTML元素(DOM树节点)均可被修改、创建或删除。图 2展示...
            11 11 1485
            分享
          • 我们写用例的时候一般是先写测试点,然后再写测试用例,也可以这么理解,测试点就是精简版的测试用例。编写用例四个基本方法:等价类、边界值、正交法、场景法。我认为对于一般的企业测试来说,这四个方法足够了。编写测试用例的策略:先点后面,先局部再整体,最忌讳的是点和面混在一起,局部和整体不明。在测试点设计的时候,需要思考如下几点:1、测试操作的难度;测试操作包括环境、配置、执行等因素,在测试设计时,尽量减小操作的难度。2、重要性及优先级;测试点一定要区分重要性及优先级,以便在实际项目测试中进行选择。重要性部门建议突出内部测试、外部验收、线上问题等标签,便于管理和分类更新。3、自动化可实现性;测试点一定要...
            0 0 3071
            分享
          • 在日常的编写SQL中,我们都会遇到一些自以为很简单实际却又不怎么熟练的内置函数,虽然我们不一定都用的上,但是要用上的时候我们得知道。为了记录最近遇到的坑,决定把它以场景模式记录下来,方便日后使用,也是一次记忆的加深场景1:当你sql查询出来的字段没有值,或者为null时,做数据分析时,这些个为null的字段会造成很大的困扰,所以我们需要给可能出现null的字段添加一个默认值,这个时候SQL的内置函数IFNULL()与COALESCE() 就能很好的满足我们的需求 IFNULL() 函数作用: IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返...
            0 3 2685
            分享
          •   一、软件测试工程师大致有4个发展方向:  1资深软件测试工程师  一般情况,软件测试工程师可分为测试工程师、高级测试工程师和资深测试工程师三个等级。  达到这个水平比较困难,这需要了解很多知识,例如C语言,JAVA语言,数据库,数据结构,软件工程,等等,但是你要在一家公司干3--5年的话,在压力中这些技能你都会掌握!  2测试部门管理者  小的如组长,大的如测试经理,这需要你有先天的优势,善于交流沟通,善于处理人际关系!不过做两年,你也会成为老油条的!  3测试书籍编写者  出书也是很赚钱的,当你在这一行干了几年,积攒了足够的经验,可以把你的经验,具体做过的项目总结出来,现在关于软件测试的...
            0 0 1054
            分享
          • 读者提问:在线二维码生成器有推荐的吗 ?阿常回答:有,草料二维码。官网地址:https://cli.im 阿常碎碎念:平时给小伙伴分享文件、图片、文章、音视频,用草料二维码很方便,推荐大家使用。看完今天的分享对你是不是有所启发呢,有任何想法都欢迎大家后台私信阿常,一起探讨交流。
            0 0 1003
            分享
      • 51testing软件测试圈微信