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

仿网站建设教程视频欧米茄官方

仿网站建设教程视频,欧米茄官方,做头条信息流要网站吗,长沙景点推荐目录 数据处理及跳转 1. 结果跳转方式 ①.ModelAndView ②.ServletAPI 1、通过HttpServletResponse进行输出 2、通过HttpServletResponse实现请求转发 3、通过HttpServletResponse实现重定向 ③.SpringMVC 1.直接输出 2.请求转发 3.重定向 2.ResponseBody响应json数…

目录

数据处理及跳转

1. 结果跳转方式

①.ModelAndView

②.ServletAPI

1、通过HttpServletResponse进行输出

2、通过HttpServletResponse实现请求转发

3、通过HttpServletResponse实现重定向

③.SpringMVC

1.直接输出

2.请求转发

3.重定向

2.ResponseBody响应json数据(后续系统演示)


前面已经讲解了SpringMVC的请求(SpringMVC(三)请求-CSDN博客),现在来讲一讲SpringMVC的响应。

数据处理及跳转

1. 结果跳转方式

①.ModelAndView

【model就是数据,view就是视图;ModelAndView这种响应方式已经过时,但是依旧需要了解】

设置ModelAndView对象 , 根据view的名称 , 和视图解析器跳到指定的页面

首先依旧是在SpringMVC(三)请求-CSDN博客里Test的基础上:

 //响应//1.ModelAndView@RequestMapping(path="/test1",method={RequestMethod.GET}) //二级请求路径public ModelAndView test01(){System.out.println("执行了...");// 创建mv对象ModelAndView mv = new ModelAndView();// 把一些数据,存储到mv对象中mv.addObject("msg","我想返回给test前端的数据");//这里就是返回的数据// 设置逻辑视图的名称mv.setViewName("test");//返回给test界面return mv;}

对test.html界面做出更改,使得其能够接收后端相应的数据:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<h1>Hi!</h1>
<h1>Hello <b th:text="${msg}"></b></h1> <!--加上这里-->
</body>
</html>

 实现这个后就可以去重启测试test/test1请求了:

②.ServletAPI

通过设置ServletAPI , 不需要视图解析器 .

1、通过HttpServletResponse进行输出(这个响应方式也是servlet中最常见的Request和Response请求)

2、通过HttpServletResponse实现重定向

3、通过HttpServletResponse实现转发

1、通过HttpServletResponse进行输出

Test中编写:

//2.ServletAPI//①@RequestMapping(path="/test2",method={RequestMethod.GET}) //二级请求路径public void test02(HttpServletRequest request, HttpServletResponse response) throws IOException {//熟悉的配方,获取数据String name=request.getParameter("name");String password=request.getParameter("password");response.getWriter().append("name:"+name+" "+",password:"+password);}

重启服务器:

下面这两种方法需要有请求转发和重定向的基础,详情参见:请求转发和重定向_请求转发和重定向的代码-CSDN博客 

2、通过HttpServletResponse实现请求转发

Test中编写:(将当前的test3请求请求转发到同路径的test2中去即:test/test2)

 //②请求转发-->到/test/test2请求中@RequestMapping(path="/test3") //二级请求路径public void test03(HttpServletRequest request, HttpServletResponse response) throws Exception {//熟悉的配方,获取数据String name=request.getParameter("name");String password=request.getParameter("password");request.getRequestDispatcher("/test/test2").forward(request,response);}

重启服务器(test3中并没有做response.getWriter().append("name:"+name+" "+",password:"+password);输出操作,但是却能得到和test2相同的结果,可见请求转发成功):

3、通过HttpServletResponse实现重定向

重定向不再拘泥于本网址内容,可以重定向到任意网址,这里以重定向到学习通为例:

Test中编写:

//③重定向-->到学习通网址中@RequestMapping(path="/test4") //二级请求路径public void test04(HttpServletRequest request, HttpServletResponse response) throws Exception {response.sendRedirect("https://www.chaoxing.com/");}

 重启服务器(成功):

③.SpringMVC

通过SpringMVC来实现转发和重定向 - 无需视图解析器;

测试前,需要将视图解析器注释掉

同样这里支持三种方式:

1.直接输出

之前一直在做直接输出,不再赘述。

2.请求转发

Test中编写:

//SpringMVC//请求转发@RequestMapping(path="/test5") //二级请求路径public String test05(){return "forward:/html/test.html";}

重启项目测验: 

3.重定向

Test中编写:

//重定向@RequestMapping(path="/test6") //二级请求路径public String test06(){return "redirect:https://www.chaoxing.com/";}

不做过多演示,和上述测验方式相同。

2.ResponseBody响应json数据(后续系统演示)

json和JavaBean对象互相转换的过程中,需要使用jackson的jar包

<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.0</version>
</dependency>
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.9.0</version>
</dependency>
<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.9.0</version>
</dependency>

DispatcherServlet会拦截到所有的资源,导致一个问题就是静态资源(img、css、js)也会被拦截到,从而不能被使用。解决问题就是需要配置静态资源不进行拦截,在springmvc.xml配置文件添加如下配置

标签配置不过滤

1. location元素表示webapp目录下的包下的所有文件

2. mapping元素表示以/static开头的所有请求路径,如/static/a 或者/static/a/b

<!--设置静态资源不过滤-->
<mvc:resources mapping="/css/**" location="/css/"/> <!--样式-->
<mvc:resources mapping="/images/**" location="/images/"/> <!--图片-->
<mvc:resources mapping="/js/**" location="/js/"/> <!--javascript-->

html代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script><script>// 页面加载$(function(){// 单击事件$("#btn").click(function(){// 发送ajax的请求$.ajax({type: "post",url: "/SpringMVCDemo/user/save6",data:{username:"haha",age:"20"},success:function(d){// 编写很多代码alert(d.username+" ‐ "+d.age);}});});});</script>
</head>
<body>
<h3>异步的数据交互</h3>
<input type="button" value="ajax交互" id="btn">
</body>
</html>

controller(Test)

/*** 异步的数据交互* 重定向* @return*/
@RequestMapping("/save6")
public @ResponseBody User save6(User user){System.out.println(user);// 模拟,调用业务层代码user.setUsername("hello");user.setAge(100);// 把user对象转换成json,字符串,再响应。使用@ResposeBody注解 response.getWriter().print()return user;
}

在springMVC当中如果要实现页面跳转就不要使用ajax,如果要json数据的返回就用ajax

http://www.yayakq.cn/news/214134/

相关文章:

  • 深圳自适应网站设计企业检索网站建设
  • 海报设计制作网站怎么做可以支付的网站
  • 济宁做企业网站如何上传文件到网站
  • 做殡葬名片的网站wordpress实现多用户
  • 手机网站免费手机app设计网站
  • 速贝网站友情链接怎么做建设银行可以查房贷的网站
  • 自己买一台服务器做自己的网站泰州网站建设价位
  • 企业网站多少钱一套完整的vi设计手册
  • 网站子域名怎么设置福州网站建设索q479185700
  • 江苏省高校品牌专业建设网站三亚网站外包
  • 网站做联盟广告能赚钱吗网络营销型网站建设的内容
  • wordpress网站价格wordpress图书页面
  • 安顺市网站建设邯郸建移动网站费用
  • asp网站添加背景音乐2022年进口博览会上海
  • joomla网站建设wordpress新站不收录
  • 山西省住房建设厅网站下载专做国外商品的网站
  • 企业网站构建方案管理手机网站首页
  • 网站地址查询域名做网站前产品经理要了解什么
  • 用asp.net做的购物网站北京网站排名优化公司
  • 北京道路建设在什么网站查询北京南站是高铁站吗
  • 如何创建一个网站用来存放东西sem是什么显微镜
  • 在哪些网站上做推广好内丘附近网站建设价格
  • 极乐宝盒网站建设云空间布置网站
  • 长沙网站建设流程企业建立网站的原因
  • 关掉自己做的网站莱州网站制作
  • 外贸型网站该如何推广营销型企业网站测评表
  • 网站主机购买网络规划与设计实验报告
  • 网页设计简单的网站石家庄网络公司哪家好
  • 沧州市东光建设局 网站wordpress用户增加插件
  • 网站开发完没人运营英文商城网站模板