springmvc 和 struts2的区别

霸气de小男生 提交于 2019-11-30 04:01:44
  • 他们都是控制层框架,都是用来跳转页面和接受参数的;
  • springmvc和spring是兄弟级别的关系,但是作用不一样;
  • 区别
    • springmvc是单例的,struts2是多例的;因为struts2中存在全局变量,如果是单利模式,遇到并发情况会发生冲突;
    • springmvc的前段控制器是dispatcherServlet,而Struts2的前段控制器是filterDispatcher;
    • struts的注解是@action,通过value和result来定义访问路径和返回的结果集;
    • springmvc的注解是@controller,通过@RequestMapping("")来定义访问路径,通过return返回字符串跳转页面;
    • 普通参数的传递;Struts2传参时通过私有属性,提供get,set方法来传递参数;springmvc是通过方法括号中定义变量来接受参数的,通过ModelMap来传参;
    • 日期类型的传递;Struts2直接传递字符串,后台Date就可以接受到,springmvc传参时需要定义一个注解@DateTimeFormat(pattern="yyyy-MM-dd")
    • 文件格式的传递;struts2是私有化的文件和文件名,提供get set方法来获取到文件
      • springmvc是通过注解@RequestParam('文件名')
    • json传参,struts2通常是通过提供的beasAction工具类来传递;springmvc是通过@responseBody注解来定义传递
    • request和response的获取,struts是通过beasAction提供的;springmvc是在方法后括号中定义来获取到的;HttpServletResponse ;HttpServletRequest
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!