2.1 响应http请求
首先我们来看看demo项目的hello world是从哪里发送出去的。在项目的目录main/java,里面的DemoApplication.java就是响应方法所在的类,文件位置如图所示:

这个文件打开后,如图所示:

上一节已经指出,按照Java Application的方式运行此文件,就可以启动整个Spring Boot项目。我们也知道按照Java Application方式执行一个java文件,实际上就是执行这个java文件的main函数。在图7-2我们可以看到被执行的main函数,它只有简单一句。至于这句代码的内部细节,现在没有必要去深究。
接下来的hello方法,就是发送Hello World的函数。这个函数有一个元数据标签GetMapping(“/hello”),处理以hello结尾的GET请求路径,当一个get请求中最后包含了/hello,那么这个函数就会响应——它就是http get的响应方法!
函数的返回值就是http的响应内容。
所以当我们访问localhost:8080/hello的时候,这个函数就响应了请求然后发回Hello World,如果访问的URL是localhost:8080,那么浏览器上可以看到错误信息:无法建立连接。因为并没有函数响应根目录模式“/”,如果要响应“localhost:8080”,在DemoApplication.Java文件里加入这样的一个函数,如代码所示:
@GetMapping("/")public String root(){ return "Good";}
代码增加一个根目录响应方法
加完上面的函数后,DemoAppalication.java文件变成了如图所示:

这样访问localhost:8080的时候,就可以看到返回的字符串Good。
由此可见,在Spring Boot里写一个HTTP的响应方法非常简单:
1.函数名无关,可以自由定义。
2.函数响应Get请求就写上标签@GetMapping("/URL模式"),Post请求就写上标签@PostMapping("/URL模式")。
3.函数的参数加上标签@RequestParam就是请求参数,例如hello方法的参数name:@RequestParam(value = "name", defaultValue = "World") String name。这表示name是名为name的请求参数,默认值是World。
4.函数的返回值是HTTP响应的主体内容。
关于响应方法,后面还会涉及到各个方面,这里不再一一列出。