Java面试总结——Java web(二)

Java web面试宝典(二)

1.如何使用JSP与Servlet实现MVC模型:

MVC是Model(模型)、View(视图)、Controller(控制器)字母的缩写,MVC强制地分离 web应用的输入、处理和输出。
(1)模型(业务逻辑层)
模型表示企业数据和业务逻辑,它是应用程序的主体部分。
(2)视图(表示层)
视图是用户看到的并与之交互的界面。
(3)控制器
控制器接收用户的输入并调用模型和视图去完成用户的需求。
MVC设计结构主要有以下几个方面的优点:

  • 低耦合 (视图层和业务层分离)
  • 高重用性和可适用性
  • 较低的成本开发周期
  • 部署快速
  • 可维护性
  • 有利于软件工程化管理
    用JSP与Servlet实现的MVC模型如下图所示:
    在这里插入图片描述

MVC处理过程如下:
对于每个用户输入的请求,先被控制器接收,并决定由哪个模型来进行处理,然后模型通过业务逻辑层处理用户的请求并返回数据,最后控制器用相应的视图格式化模型 返回的数据,并通过显示页面呈现给用户。

2. Servlet中forward和redirect有什么区别?

(1)forward是服务器内部的重定向,
一个web应用程序一般都是由客户端程序与服务器端程序两部分组成。其中客户端主要是指用户和浏览器。用户通过浏览器查找所需资源,而这些资源位于服务器上。

  • 用户输入网址。
  • 把用户请求发送给服务器。
  • 服务器查找请求的网页
  • 找到用户请求的网页
  • 发送响应消息
  • 浏览器显示返回结果
3.Servlet中forward和redirect有什么区别

forward是服务器内部的重定向,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,在客户端浏览器地址中不会显示转向后的地址,整个定向的过程中用的是同一个Request。
redirect则是客户端的重定向,是完全的跳转,即客户端浏览器会获取到跳转后的地址,然后重新发送请求,因此浏览器中会显示跳转后的地址。

4.JSP内置对象

(1)Servlet有关的page和config
(2)与input,output有关的out、request和response
(3)与Context有关的application、session和pageContext
(4)与Error有关的exception

5.request对象

request对象就是用来封装用户请求数据的,每当有请求到达服务器时,系统都会创建一个request对象。

6.JSP有哪些动作

(1)jsp:include :用来在页面被请求时引入一个文件
(2)jsp:useBean:用来寻找或者实例化一个javaBean
(3)jsp:setProperty
(4)jsp:getProperty
(5)jsp:forward
(6)jsp:plugin

7. JSP中include指令和include动作有什么区别

调用时间的差别:
include指令是编译阶段的指令,即在编译时,编译器会把指令所指向目标文件的内容复制到指令所在位置,替换指令,最终形成一个文件。
include动作是运行时的语法,在被请求时,把页面包含进来,涉及两个方法,类似于方法调用。

8。会话跟踪技术

会话跟踪是对同一个用户对服务器的连续请求和接受响应的监视。有以下四种会话跟踪技术:

  • page
  • request
  • session
  • application
9.什么是Ajax

Ajax异步JavaScript与XML,其主要目的是在不刷新新页面的情况下通过与服务器进行少量数据的交互来提高页面的交互性,减少响应时间,从而改善用户体验。

10.cookie和session有什么区别

(1)cookie采用客户端保持状态的方案,即数据存放在客户的浏览器上;session采用服务器端保持状态方案,即数据存放在服务器上。
(2)cookie存放在客户端不够安全,session较为安全。
(3)cookie性能较高,session放在服务器上。当访问增多时,会降低服务器性能。
(4)cookie保存不能超过4KB,session不存在这个问题。
鉴于以上原因,登录信息放在session,其他保留信息放在cookies。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章