Java Web开发的Model 1和Model 2分别指的是什么?
答:Model 1是以页面为中心的Java Web开发,只适合非常小型的应用程序,Model 2是基于MVC架构模式的应用,这一点在前文的面试题中已经详细讲解过了。
说说什么是框架:
框架(framework)是一个框子--》指约束性,也是一个架子--》指支撑性IT语境中的框架,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,在此结构上可以根据具体问题扩展、按插更多的组成部分,从而更迅速和方便地架构完整的解决问题的方案。
1)框架本身一般不完整到可以解决特定问题,但是可以帮助您快速解决特定问题:
没有框架所有的工作都从零开始做,有了框架,为我们提供了一定的功能。我们就可以在框架的基础上开发,极大的解决了生产力。
不同的框架,是为了解决不同领域的问题,一定要为了解决问题才去学习框架。
2)框架天生就是为了扩展而设计的
3)框架里面可以为后续的组件提供很多辅助性、支撑性的方便易用的实用工具(utilities),也就是框架时常配套一些帮组解决某类问题的库(libraries)或工具(tools).
在java中就是一系列的jar包,其本质就是对jdk功能的扩展。
简单说一下MVC框架?
是为了解决传统MVC模式(jsp+servlet+javabean)一些问题而出现的框架
传统MVC模式模式问题:
1) 所有的Servlet和Servlet映射都要配置在web.xml中,如果项目太大,web.xml就太庞大并且不能实现模块化管理。
2)Servlet的主要功能就是接受参数、调用逻辑、跳转页面,比如像其他字符编码、文件上传等功能也要写在Servlet中,不能让Servlet主要功能而需要做处理一些特例。
3)接受参数比较麻烦
(String name = request.getParameter(“name”)),不能通过model接受,只能单个接收,接收完成后转换封装model。
4)跳转页面方式比较单一(forward,redirect),并且当我们的页面名称发生改变时需要改变Servlet源代码。
现在比较常用的MVC框架:
webwork
Struts
Struts2
SpringMVC