声明:本博文如存在问题,欢迎各位dalao指正!!!
任务描述
Spring Boot非常适合Web应用程序开发,你可以使用其自带的Tomcat,Jetty,Undertow或Netty创建HTTP服务器。
本关任务: 使用Spring Boot实现一个‘博客系统’的登录,注册,下线功能。
相关知识
Web 请求
Spring Boot既然是Web后台框架,那么它就需要处理Web请求,我们来看一个典型的Web请求(按下F12键,选择网络,然后点击本网站的登录按钮,你看到的第一个请求如下)
请求网址和地址栏的网址没有本质的区别,地址栏网址请求的是整个页面,而上面的这种网址请求的一般是页面中的一个具体的元素:一张图片,一段音乐等,它的粒度更小。
用Spring Boot处理这种请求的时候,关键是把不同的请求映射到不同的Java 方法上,比如我们可能会用LoginAction()方法来处理/login请求,而用RegisterAction()来处理/register请求。
一.用 Spring Boot 处理 Web 请求,添加 Java 类
第一步,我们在controller包下新建一个类BlogController,代码如下所示:
package com.example.demo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class BlogController {
@RequestMapping("/login")
public String login(){
return "登录界面";
}
@RequestMapping("/register")
public String register(){
return "注册页面";
}
@RequestMapping("/logout")
public String logout(){
return "下线界面";
}
}
然后运行项目,我们发现不同的请求被不同的方法做了处理,最终返回相应的结果,据此我们就可以在方法中实现登录、注册、下线功能等操作。
编程要求
本关的编程任务是在右侧的Begin和End中间添加一个具有下线功能的Java方法,要求该方法能处理以/logout结尾的Web请求,然后返回字符串GoodBye!。(方法的名字不做限制)
/********* Begin *********/
@RequestMapping("/logout")
@ResponseBody
public String Logout(){
return "GoodBye!";
}
/********* End *********/
总结:
之前我们学过jsp从前端访问后台数据,相比于jsp需要不断地写Servlet小程序,不断地配置Servlet;显然SpringBoot的这种框架显得更加地简洁,明了。比如SpringBoot只需要在方法名的上方添加路由即可直接访问,而jsp则需要从配置ServletMapping等一系列东西,才能实现相同的功能,不仅麻烦容易出错,而且多了很多冗余的代码量。