每日五道java面试题之springMVC篇(四)

目录:

  • [第一题. Spring MVC怎么样设定重定向和转发的?](#第一题. Spring MVC怎么样设定重定向和转发的?)
  • [第二题.Spring MVC怎么和AJAX相互调用的?](#第二题.Spring MVC怎么和AJAX相互调用的?)
  • [第三题. 如何解决POST请求中文乱码问题,GET的又如何处理呢?](#第三题. 如何解决POST请求中文乱码问题,GET的又如何处理呢?)
  • [第四题. Spring MVC的异常处理?](#第四题. Spring MVC的异常处理?)
  • [第五题. 如果在拦截请求中,我想拦截get方式提交的方法,怎么配置](#第五题. 如果在拦截请求中,我想拦截get方式提交的方法,怎么配置)

第一题. Spring MVC怎么样设定重定向和转发的?

(1)转发:在返回值前面加"forward:",譬如"forward:user.do?name=method4"

(2)重定向:在返回值前面加"redirect:",譬如"redirect:http://www.baidu.com"

第二题.Spring MVC怎么和AJAX相互调用的?

通过Jackson框架就可以把Java里面的对象直接转化成Js可以识别的Json对象。具体步骤如下:

(1)加入Jackson.jar

(2)在配置文件中配置json的映射

(3)在接受Ajax方法里面可以直接返回Object,List等,但方法前面要加上@ResponseBody\注解。

第三题. 如何解决POST请求中文乱码问题,GET的又如何处理呢?

(1)解决post请求乱码问题:

在web.xml中配置一个CharacterEncodingFilter过滤器,设置成utf-8;

xml 复制代码
<filter>
     <filter-name>CharacterEncodingFilter<filter-name>    
     <filter-class>org.springframework.web.filter.CharacterEncodingFilter<filter-class>
   <init-param>
      <param-name>encoding<param-name>
      <param-value>utf-8<param-value>
   <init-param>
 </filter>
 
 <filter-mapping>
      <filter-name>CharacterEncodingFilter<filter-name>
      <url-pattern>/*<url-pattern>
 <filter-mapping>
 

(2)get请求中文参数出现乱码解决方法有两个:

①修改tomcat配置文件添加编码与工程编码一致.

②另外一种方法对参数进行重新编码:

String userName = new

String(request.getParamter("userName").getBytes("ISO8859-1"),"utf-8")ISO8859-1是tomcat默认编码,需要将tomcat编码后的内容按utf-8编码。

第四题. Spring MVC的异常处理?

答:可以将异常抛给Spring框架,由Spring框架来处理;我们只需要配置简单的异常处理器,在异常处理器中添视图页面即可

第五题. 如果在拦截请求中,我想拦截get方式提交的方法,怎么配置

答:可以在@RequestMapping注解里面加上method=RequestMethod.GET。

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力

相关推荐
wainyz6 分钟前
Java NIO操作
java·开发语言·nio
工业3D_大熊11 分钟前
【虚拟仿真】CEETRON SDK在船舶流体与结构仿真中的应用解读
java·python·科技·信息可视化·c#·制造·虚拟现实
喵叔哟15 分钟前
重构代码之用委托替代继承
开发语言·重构
lzb_kkk20 分钟前
【JavaEE】JUC的常见类
java·开发语言·java-ee
SEEONTIME20 分钟前
python-24-一篇文章彻底掌握Python HTTP库Requests
开发语言·python·http·http库requests
起名字真南39 分钟前
【OJ题解】C++实现字符串大数相乘:无BigInteger库的字符串乘积解决方案
开发语言·c++·leetcode
爬山算法44 分钟前
Maven(28)如何使用Maven进行依赖解析?
java·maven
tyler_download1 小时前
golang 实现比特币内核:实现基于椭圆曲线的数字签名和验证
开发语言·数据库·golang
小小小~1 小时前
qt5将程序打包并使用
开发语言·qt
hlsd#1 小时前
go mod 依赖管理
开发语言·后端·golang