jsp问答题复习(共5页)_第1页
jsp问答题复习(共5页)_第2页
jsp问答题复习(共5页)_第3页
jsp问答题复习(共5页)_第4页
jsp问答题复习(共5页)_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上1、什么是 JSP的预编译特征?答:JSP 页面在被服务器执行前,都是已经被编译好的,并且通常只进行一次编译,即在 JSP 页面被第一次请求时进行编译,在后续的请求中如果JSP页面没有被修改过,服务器只需要直接调用这些已经被编译好的代码,这大大提高了访问速度。2、开发 JSP 程序可采用哪几种开发模式?分别介绍他们的优缺点。答:单纯的 JSP 页面编程 优点:容易实现。通过应用JSP中的脚本标识,可直接在JSP页面中实现各种功能。缺点:将大部分的Java代码与HTML代码混淆在一起,程序结构混乱,维护调试不便。 JSP+JavaBean 编程 优点:网站的业务逻辑和显

2、示页面进行分离,程序结构比较清晰。缺点:将流程控制放到 JSP 中,JSP 不能单纯作为显示功能。JSP+JavaBean+Servlet 编程 优点:层次关系明显、组件分工明确。由Servlet来执行业务逻辑并负责程序的流程控制,JavaBean组件实现业务逻辑,充当着模型的角色,JSP用于页面的显示。缺点:虽然遵循了MVC设计模式,但需要设计MVC各对象之间的数据交换格式与方法,需要花费更多的时间在系统设计上;对开发人员能力要求较高,不适合 JSP 初学者。 MVC模式:将业务逻辑代码与外观呈现分离,能更容易地根据需求的改变来改进程序。3、JSP 页面由哪些元素组成?答:JSP页面元素包括

3、:JSP中的指令标识 、HTML标记语言、嵌入的Java代码片段、JSP表达式(、动作标识、JSP脚本标识、JSP注释)等4、有几种方法可实现在页面中来包含文件?如何实现?它们有什么区别?答:<jsp:include>动作标识与include指令都可用来包含文件,实现格式分别为:<jsp:include page="被包含文件的路径" /><% include file="文件的绝对路径或相对路径" %>二者的区别:(1)、属性:include指令通过file属性来指定被包含的页面,include指令将file属性值看

4、作一个实际存在的文件的路径,所以该属性不支持任何表达式。若在file属性值中应用JSP表达式,则会抛出异常。<jsp:include>动作标识通过page属性来指定被包含的页面,该属性支持JSP表达式。(2)、处理方式 :使用include指令被包含的文件,它的内容会原封不动地插入到包含页中使用该指令的位置,然后JSP编译器再对这个合成的文件进行翻译。所以在一个JSP页面中使用include指令来包含另外一个JSP页面,最终编译后的文件只有一个。使用<jsp:include>动作标识包含文件时,当该标识被执行时,程序会将请求转发到(注意是转发,而不是请求重定向)被包含的

5、页面,并将执行结果输出到浏览器中,然后返回包含页继续执行后面的代码。因为服务器执行的是两个文件,所以JSP编译器会分别对这两个文件进行编译。(3)、包含方式:使用include指令包含文件,最终服务器执行的是将两个文件合成后由JSP编译器编译成的一个Class文件,所以被包含文件的内容应是固定不变的,若改变了被包含的文件,则主文件的代码就发生了改变,因此服务器会重新编译主文件。include指令的这种包含过程称为静态包含。使用<jsp:include>动作标识通常是来包含那些经常需要改动的文件。此时服务器执行的是两个文件,被包含文件的改动不会影响到主文件,因此服务器不会对主文件重新

6、编译,而只需重新编译被包含的文件即可。而对被包含文件的编译是在执行时才进行的,也就是说,只有当<jsp:include>动作标识被执行时,使用该识包含的目标文件才会被编译,否则被包含的文件不会被编译,所以这种包含过程称为动态包含。(4)、对被包含文件的约定使用include指令包含文件时,被包含文件必须与主文件中page指令中的contentType属性值一致,(因为这两个文件最终会被合为一个文件)否则会抛出异常。使用<jsp:include>动作标识无此约定。5、如果用户长时间不操作 session 对象,用户的 session 对象会消失吗?答:会消失。在一定时间内

7、(系统默认在30min内),如果客户端不向服务器发出应答请求,session对象就会自动消失。6、用户关闭浏览器后,用户的 session 会立即消失吗?答:会。 从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。 可以利用此特性来保存每个用户信息,当一个客户登录一个网站时,系统将为用户生成一个独一无二的会话对象,用以记录该用户的个人信息,一旦该用户退出网站,该会话对象将会被注销。7、如何延长 session 的过期时间?答:进行会话超时设置,利用setMaxInactiveInterval(int interval)方法以秒为单位设置超时时间。8、s

8、ession 对象与 application 对象的区别有哪些?答:session对象和用户会话相关,不同用户的session是完全不同的对象,而用户的application对象都是相同的一个对象,即共享这个内置的application对象;在session中设置的属性只是在当前客户的会话范围内容有效,客户超过保存时间不发送请求时,session对象将被回收,而在application对象协议设置的属性在整个应用范围内是有效的,即使所有的任务都不发送请求,只要不关闭应用服务器,在其中设置的属性仍然有效。9、什么是 JavaBean?使用 JavaBean 的优点是什么?答:JavaBean组件

9、就是利用Java语言编写的组件,它好比一个封装好的容器,使用者并不知道其内部是如何构造的,但它却具有适应用户要求的功能,每个JavaBean都实现了一个特定的功能,通过合理地组织不同功能的JavaBean,可以快速生成一个全新的应用程序。优点:提高代码的重用性,“一次编写,任何地方执行,任何地方重用”。10、按功能 JavaBean 可分为哪几种?在 JSP 中最为常用的是那一种?答:JavaBean按功能可分为可视化JavaBean和不可视化JavaBean两类。 (1)可视化JavaBean:就是具有GUI图形用户界面的JavaBean;(2)不可视JavaBean:就是没有GUI图形用户

10、界面的JavaBean,最终对用户是不可见的,它更多地是被应用到JSP中。不可视JavaBean又分为值JavaBean和工具JavaBean。附:值JavaBean作为信息的容器,通常用来封装表单数据,也就是将用户向表单字段中输入的数据存储到JavaBean对应的属性中。使用值JavaBean可以减少在JSP页面中嵌入大量的Java代码。工具JavaBean 则可以不遵循JavaBean规范,通常用于封装业务逻辑,数据操作等,例如连接数据库,对数据库进行增、删、改、查和解决中文乱码等操作。工具JavaBean可以实现业务逻辑与页面显示的分离,提高了代码的可读性与易维护性。11、什么是 ser

11、vlet?Servlet 的技术特点是什么?Servlet 与 JSP 有什么区别?答:(1)Servlet是在JSP之前就存在的运行在服务端的一种Java技术,它是用Java语言编写的服务器端程序。Servlet是使用Java Servlet应用程序设计接口(API)及相关类和方法的Java程序。Java语言能够实现的功能,Servlet基本上都能实现(除了图形界面外)。Servlet主要用于处理客户端传来的Http请求,并返回一个响应。(将处理的结果传递给浏览器生成动态web页面)。(2)Servlet技术特点:高效、方便、跨平台、功能强大、灵活性和可扩展性、共享数据、安全。(3)Serv

12、let与JSP相比有以下几点区别: (JSP是以Servlet为基础开发的)编程方式不同;Servlet必须在编译以后才能执行;运行速度不同。12、创建一个 Servlet 通常分为哪几个步骤?答:(1)继承HttpServlet抽象类。(2)重载适当的方法,如覆盖(或称为重写)doGet()方法或doPost()方法。 (3)如果有HTTP请求信息的话,获取该信息。可通过调用HttpServletRequest类对象的以下3个方法获取:getParameterNames()/获取请求中所有参数的名字getParameter()/获取请求中指定参数的值getParameterValues()/

13、获取请求中所有参数的值(4)生成HTTP响应。HttpServletResponse类对象生成响应,并将它返回到发出请求的客户机上。它的方法允许设置“请求”标题和“响应”主体。“响应”对象还含有getWriter()方法以返回一个PrintWriter类对象。使用PrintWriter的print()方法和println()方法以编写Servlet响应来返回给客户机,或者直接使用out对象输出有关HTML文档内容。13、运行 Servlet 需要在 web.xml 文件中进行哪些配置?答:Servlet的名称、类(必须指定)和其他选项的配置;可以配置一些初始化参数启动装入优先权 (通过<

14、load-on-startup>元素指定)Servlet的映射14、简述 JDBC 连接数据库的基本步骤。答:JSP中连接数据库的基本步骤(5个):加载JDBC驱动程序、创建数据库连接、执行SQL语句、获得查询结果和关闭连接。 Class. forName(String className)实现加载要连接数据库的驱动到JVM,成功加载后,会将加载的驱动类注册给DriverManager类; DriverManager.getConnection(String url, String user, String password)建立数据库连接; 通过Connection实例创建Statem

15、ent实例:Statement stmt=conn.createStatement(); 然后执行SQL语句,获得查询结果:ResultSet rs=stmt.executeQuery(“select * from tb.user”); 关闭连接。15、简述数据库连接池的优缺点。答:(1)连接池具有下列优点:节省了时间;提高了数据库连接的重复使用率;解决了数据库对连接数量的限制。(2)连接池具有下列缺点:连接池中可能存在多个与数据库保持连接但未被使用的连接,在一定程度上浪费了资源;要求开发人员和使用者准确估算系统需要提供的最大数据库连接的数量。16、如何在 Tomcat 中配置数据库连接池?答

16、:(1)将SQL Server数据库的3个JDBC驱动包msbase.jar、mssqlserver.jar和msutil.jar复制到Tomcat安装路径下的lib文件夹中。(2)配置数据源。在配置数据源时,可以将其配置到Tomcat安装目录下的confserver.xml文件中,也可以将其配置到Web工程目录下的META-INFcontext.xml文件中,建议采用后者,因为这样配置的数据源更有针对性,配置数据源的具体代码如下:<Context> <Resource name="TestJNDI" type="javax.sql.DataSo

17、urce" auth="Container"driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"url="jdbc:microsoft:sqlserver:/:1433;DatabaseName=db_db_database08" username="sa" password="" maxActive="4" maxIdle="2" maxWait=&quo

18、t;6000" /></Context>17、什么是Ajax?简述Ajax中使用的技术?答:Ajax是Asynchronous JavaScript and XML的缩写,意思是异步的JavaScript与XML。Ajax并不是一门新的语言或技术,它是JavaScript、XML、CSS、DOM等多种已有技术的组合,它可以实现客户端的异步请求操作。这样可以实现在不需要刷新页面的情况下与服务器进行通信,从而减少了用户的等待时间。 Ajax使用的技术:JavaScript脚本语言;XMLHttpRequest(最核心的);XML语言;DOM(Document Object Model);CSS。18、如何创建一个跨浏览器的XMLHttpRequest对象?答:关键代码如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论