当前位置: 首页 > wzjs >正文

大连网站建设介绍电子商务网站开发

大连网站建设介绍,电子商务网站开发,检测公司宣传册设计样本,杭州网站开发公司排名一、返回静态页面 1.1**RestController和Controller** 想返回如下页面: 如果我们依旧使用原来的**RestController** 可以看到的是仅仅返回了字符串。 此时将**RestController改为Controller** 可以看到这次返回的是html页面。 那么**RestController和Controller…

一、返回静态页面

1.1**@RestController@Controller**

想返回如下页面:

在这里插入图片描述

如果我们依旧使用原来的**@RestController**

在这里插入图片描述

在这里插入图片描述

可以看到的是仅仅返回了字符串。

此时将**@RestController改为@Controller**

在这里插入图片描述

在这里插入图片描述

可以看到这次返回的是html页面。

那么**@RestController@Controller有什么区别和联系呢,这就要从MVC架构说起了,最开始设计View是要返回视图的,但随着技术的发展,前后端分离程度越来越高,Java后端开始只关注于后端的事务,不在关注前端的呈现,MVC也就发生了变化,View不在返回视图,而是返回显示视图时所需要的数据。所以前面使用的@RestController**其实返回的是数据。

@RestController = @Controller + @ResponseBody

@Controller :定义⼀个控制器,Spring框架启动时加载,把这个对象交给Spring管理。
@ResponseBody :定义返回的数据格式为⾮视图,返回⼀个text/html信息。

@ResponseBody既可以作为类注解也可以作为方法注解,如果标记在类上,那么表示该类中的所有方法都返回的是数据,如果一个类中既有返回视图的方法也有返回注解的方法,那么只用把**@ResponseBody**标注到对应方法上即可。

所以在有**@Controller注解的基础上添加@ResponseBody注解就等于直接标注@RestController**。

@Controller
@RequestMapping("/response")
public class ResponseController {//返回视图@RequestMapping("/responseHelloPage")public String requestHelloPage(){return "/hello.html";}//返回数据@RequestMapping("/responseHelloPage2")@ResponseBodypublic String requestHelloPage2(){return "返回数据";}
}

在这里插入图片描述
在这里插入图片描述

在标注了@Controller的类(表明该类中所有方法都返回视图)里,有一个需要返回数据的方法,但是该方法没有标注@ResponseBody,那么客户端在请求这个页面的时候会发生404错误:

@Controller
@RequestMapping("/response")
public class ResponseController {//返回视图@RequestMapping("/responseHelloPage")public String requestHelloPage(){return "/hello.html";}//返回数据@RequestMapping("/responseHelloPage2")//去掉@ResponseBody注解public String requestHelloPage2(){return "返回数据";}
}

在这里插入图片描述

1.2 返回Html片段

@RequestMapping("/returnHtml")@ResponseBodypublic String returnHtml() {return "<h1>Hello,HTML~</h1>";}

在这里插入图片描述

1.3 返回Json

@RequestMapping("/returnJson")@ResponseBodypublic HashMap<String, String> returnJson() {HashMap<String, String> map = new HashMap<>();map.put("Java", "Java Value");map.put("MySQL", "MySQL Value");map.put("Redis", "Redis Value");return map;}

在这里插入图片描述

通过Json返回一个对象:

@RequestMapping("/returnUser")@ResponseBodypublic User returnUser() {User user = new User("zhangsan",18,"未知");return user;}

在这里插入图片描述

1.4 设置状态码

SpringMVC会根据我们⽅法的返回结果⾃动设置响应状态码,程序员也可以⼿动指定状态码,通过SpringMVC的内置对象HttpServletResponse提供的⽅法来进⾏设置 。

@RequestMapping(value = "/setStatus")@ResponseBodypublic String setStatus(HttpServletResponse response) {response.setStatus(401);return "设置状态码成功";}

在这里插入图片描述

在这里插入图片描述

http://www.dtcms.com/wzjs/471241.html

相关文章:

  • 做阿里巴巴网站 店铺装修免费吗开发一个app价目表
  • 建网站学什么软件网络安全培训
  • c2c网站开发百度点击软件
  • liunix下搭建wordpress四川整站优化关键词排名
  • 建站用Wordpress还是网络公司网站
  • 男女做羞羞的事情网站seo排名工具有哪些
  • 代运营网站长沙网站推广公司排名
  • 中国建设部网站官网汕头seo排名收费
  • 华为通用软件开发工程师常德seo公司
  • 新疆建设考试信息网站郑州网络营销公司
  • 网站性能优化怎么做百度站长收录入口
  • 网站改版不换域名怎么做常见的网络营销推广方式有哪些
  • 自己做网站如何盈利全国疫情最新报告
  • 旅游景点网站设计论文域名怎么查
  • 校园文化建设网站素材灰色词seo排名
  • 凡科网做网站能达到什么效果微信附近人推广引流
  • 微信小程序 购物网站开发油烟机seo关键词
  • 网站建设哪家公司南宁网站关键词推广
  • 12306网站为什么做那么差百度问问首页登录
  • 赚钱快的路子北京seo结算
  • 西安公司网站设计海洋网络推广效果
  • 徐州个人建站模板网站建设流程
  • 做淘宝客优惠券网站还是APP赚钱seo查询网站是什么
  • win2003 做网站服务器上海网上推广
  • 看2d影片最好的地方沈阳seo团队
  • 网站建设网站建设的电商网站建设 网站定制开发
  • 重庆宣传片2023seo刷网站
  • 互联网产品设计网站关键词seo公司
  • 徐州做网站设计免费一键生成个人网站
  • 推广网站的作用百度导航和百度地图