当前位置: 首页> 游戏> 评测 > 制作游戏编辑器app_濮阳是哪里_企业网站怎么建立_软文案例400字

制作游戏编辑器app_濮阳是哪里_企业网站怎么建立_软文案例400字

时间:2025/8/23 5:47:20来源:https://blog.csdn.net/m0_74977981/article/details/144891896 浏览次数:0次
制作游戏编辑器app_濮阳是哪里_企业网站怎么建立_软文案例400字

目录

数据处理及跳转

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

关键字:制作游戏编辑器app_濮阳是哪里_企业网站怎么建立_软文案例400字

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: