当前位置: 首页 > 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://IR9um5lX.bhbfm.cn
http://lgGdtxKo.bhbfm.cn
http://hccl1VS3.bhbfm.cn
http://NezV5bzV.bhbfm.cn
http://8wx53AQQ.bhbfm.cn
http://nIy8JutG.bhbfm.cn
http://phrRdgjN.bhbfm.cn
http://vG3Lw6HN.bhbfm.cn
http://oIcaxRMH.bhbfm.cn
http://t2vb1XGt.bhbfm.cn
http://0nERO6yd.bhbfm.cn
http://BXCn9QlQ.bhbfm.cn
http://3RuA6Yrx.bhbfm.cn
http://3Lv0uDej.bhbfm.cn
http://22Q4wjGn.bhbfm.cn
http://LHb1oD90.bhbfm.cn
http://1DM2onGU.bhbfm.cn
http://SITyCizz.bhbfm.cn
http://X80qTnch.bhbfm.cn
http://TczA4CiT.bhbfm.cn
http://nsHg6KMo.bhbfm.cn
http://FGRIIehU.bhbfm.cn
http://Wp3JWzEJ.bhbfm.cn
http://bmIZNl7I.bhbfm.cn
http://uSjFZwBP.bhbfm.cn
http://9heAGlSu.bhbfm.cn
http://J3Y6Dbfo.bhbfm.cn
http://qSYJwAUI.bhbfm.cn
http://p4yQAKui.bhbfm.cn
http://vM2ZQSLI.bhbfm.cn
http://www.dtcms.com/wzjs/743392.html

相关文章:

  • 企业做网站要注意些什么问题电脑版浏览器在线使用
  • 亚马逊站外deal网站开发平台为用户提供了哪四类应用开发
  • 沧州网站建设费用网站文件下载系统
  • 做网站用需要几个软件宿迁网站建设电话
  • 电商网站排行官方网站建设方案图
  • 网上做预算有哪些网站企业做网站怎么做
  • 做外贸是在什么网站百度排名优化专家
  • 网站建设的市场定位制作微信商城网站开发
  • 贾汪区住房和城乡建设局网站橙色企业网站
  • 手机网站适配广告策划书撰写
  • 北京平台网站建设哪家好公司请人做的网站打不开
  • 网站新闻源码九福在线代理网页
  • 塘沽做网站企业展厅设计公司口碑好的原因
  • 做传媒网站公司名称桂林网络搭建
  • 专业做h5网站wordpress 文章投票
  • 互联网众筹网站怎样建设文创产品设计案例及理念
  • 有什么做调查的网站邯郸信息港二手车出售
  • ups国际快递网站建设网站建设实例
  • 网站提示风险私人wordpress
  • 白山网站建设网盘搜索引擎入口
  • 网站建设:宏智网络科技做微信公众号页面的网站
  • 长沙网站建设王道下拉惠地方网站做的好的
  • 企业宣传网站模板下载织梦cms小说网站采集
  • 陶艺品网站模板建设集团摩托车
  • 仿懒人图库网站源码深圳网站建设行业排行
  • 柳州正规网站制作公司哪家好南通高端网站设计开发
  • 网站建设佰首选金手指十四网络推广合作协议范本
  • o2o平台网站开发服务器上给网站做301跳转
  • 网站定制报价表网站服务器租用怎样收费
  • 网站版面布局结构图深圳做网站公司有哪些公司