面试总结2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.MVC的各个部分都有那些技术来实现?如何实现?

MVC是Model-View-Controller的简写。"Model" 代表的是应用的业务逻辑(通过JavaBean,EJB组

件实现),"View" 是应用的表示面(由JSP页面产生),"Controller" 是提供应用的处理过程控制(一般

是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。

2.说出数据连接池的工作机制是什么?

J2EE 服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。

Je22是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用

模型(enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件

又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn tier)组件,web层和组

件,Business层和组件,企业信息系统(EIS)层。

3.修改tomcat端口号的方法:

8080是Tomcat服务器的默认的端口号。我们可以通过修改Tomcat服务器的conf目录下的主配置文件server.xml来更改.用记事本打开server.xml文件,找到如下部分:

4.如果要访问数据库:

a. 保证数据库能够正常地保存中文。对于mysql数据库create database dbname default character set utf8;

b. 使用jdbc访问数据库时,必须要保证jdbc驱动程序能够识别数据库中保存数据的编码

jdbc:mysql://localhost:3306/jd1109db2? useUnicode=true&characterEncoding=utf8

5.jsp与servlet的关系

JSP是Servlet技术的扩展,是Servlet的简易方式,本质上就是servlet。JSP编译后是“类servlet”。

但是两者的创建方式不一样。Servlet完全是JA V A程序代码构成擅长于流程控制和事务处理。JSP由HTML代码和JSP标签构成,可以方便地编写动态网页。因此在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页。在struts框架中,JSP位于MVC 设计模式的视图层,而Servlet位于控制层。

Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到.

6.struts2中如何获得request,session对象?

public class BaseAction implements SessionAware,RequestAware,Constants { protected Map session;

protected Map request;

public void setSession(Map session) {

this.session = session;

}

public void setRequest(Map request) {

this.request = request;

}

}

如果想使用Session,就实现SessionAware接口, Struts2会调用其setSession 方法,将Session对象传入。该Session对象在HttpSession的基础上封装成了Map对象。

request对应ServletRequestAware

response 对应ServletResponseAware

session对应SessionAware

application对应ServletContextAware

7.servlet生命周期

生命周期分成哪几个阶段:

1)实例化:

a, 容器调用servlet的构造器,创建一个servlet实例。

b, 什么时候实例化?

情况1:只有请求到达容器之后,容器才会创建。

情况2: 容器启动之后,会立即创建servlet实例,该servlet必须要配置load-on-startup参数。

2)初始化:

a, 容器在将servlet实例化之后,会立即调用其init(ServletConfig config)方法。

1, init方法只会执行一次

2,GenericServlet已经实现了init方法(将ServletConfig对象保存下来了)。

3, 容器在调用init方法之前,会先创建一个符合ServletConfig接口要求的对象,然后再把该对象作为参数传过init方法。

b, 初始化参数:

1,使用配置初始化参数

2,使用ServletConfig提供的getInit Parameter方法来访问。

c, 如果要实现自已的初始化处理逻辑,建议override init()方法。

3)就绪:

a, servlet容器在收到请求之后,会调用servlet对象的service方法来处理请求。

b,HttpServlet已经实现了service方法,该方法依据请求类型分别调用doGet,doPost方法。

相关文档
最新文档