• 撩课-Java每天5道面试题第24天


    151、springMVC和struts2的区别有哪些?

    1.springmvc的入口是一个servlet即前端控制器(DispatchServlet),
    而struts2入口是一个filter过虑器(StrutsPrepareAndExecuteFilter)。
    
    2.springmvc是基于方法开发(一个url对应一个方法),
    请求参数传递到方法的形参,
    可以设计为单例或多例(建议单例),
    struts2是基于类开发,
    传递参数是通过类的属性,
    只能设计为多例。
    
    3.Struts采用值栈存储请求和响应的数据,
    通过OGNL存取数据,
    springmvc通过参数解析器是将request请求内容解析,
    并给方法形参赋值,
    将数据和视图封装成ModelAndView对象,
    最后又将ModelAndView中的模型数据
    通过reques域传输到页面。
    Jsp视图解析器默认使用jstl。

    152、SpringMVC怎么样设定重定向和转发的?

    1)在返回值前面加"forward:"
    就可以让结果转发,
    譬如"forward:user.do?name=method4"2)在返回值前面加"redirect:"
    就可以让返回值重定向,
    譬如"redirect:http://www.itlike.com"

    153.SpringMvc怎么和AJAX相互调用的?

    通过Jackson框架
    就可以把Java里面的对象直接转化成
    Js可以识别的Json对象。
    具体步骤如下 :
    1.加入Jackson.jar
    2.在配置文件中配置json的映射
    3.在接受Ajax方法里面可以直接返回Object,List等,
    但方法前面要加上@ResponseBody注解。

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

    1)解决post请求乱码问题:
    
    在web.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请求中文参数出现乱码解决方法有两个:
    
    2.1修改tomcat配置文件添加编码与工程编码一致,
    如下:
    
    <ConnectorURIEncoding="utf-8" 
    connectionTimeout="20000"
    port="8080" 
    protocol="HTTP/1.1" 
    redirectPort="8443"/>
    
    2.2另外一种方法对参数进行重新编码:
    
    String userName = new String(request.getParamter("userName").getBytes("ISO8859-1"),"utf-8")
    
    ISO8859-1是tomcat默认编码,
    需要将tomcat编码后的内容按utf-8编码。

    155.怎么样把ModelMap里面的数据放入Session里面?

    答:可以在类上面加上@SessionAttributes注解,
    里面包含的字符串就是要放入session里面的key。
  • 相关阅读:
    WPF ListView 排序
    java视频转码博客
    stream的seek方法实例
    Metro各种流转换
    性能测试并发对比(JMeter,Locust和Gatling篇)
    MYSQL之——查询练习题
    MYSQL之——复杂查询
    MYSQL之——简单查询
    MYSQL之——基础SQL
    MySQL之——忘记root密码解决方案
  • 原文地址:https://www.cnblogs.com/gxq666/p/10147406.html
Copyright © 2020-2023  润新知