1、课后习题答案一、选择题1. A 2. D 3. C 4. A 5.ABCDE6. A 7 .C 8.B 9.D 10.B二、填空题1. javax.servlet,javax.servlet.http2. 加载阶段,初始化阶段,servlet运行阶段,servlet结束时期3. jsp+javabean,jsp+javabean+servlet4. web.xml5. Httpservlet三、简答题1. 高效、方便、功能强大、可移植性、节省投资2. Servlet是用Java语言编写的运行在服务器端的小应用程序3. JSP指令:include指令、 page指令、taglib指令JSP动作:
2、 forward动作、include动作、useBean动作JSP的隐含对象:输出对象out、请求对象request、 响应对象response、会话对象session、Web服务器对象application四、编程题1. program.javapackage servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.Http
3、ServletRequest;import javax.servlet.http.HttpServletResponse;public class program extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException response.setContentType(text/html);PrintWriter out = response.getWriter();out.println(
4、);out.println();out.println( A Servlet);out.println( );out.print( This is a servlet program!);out.println( );out.println();out.flush();out.close();2. request.javapackage servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.Http
5、Servlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class request extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException response.setContentType(text/html;charset=GB231
6、2); String title=计算圆面积和周长; PrintWriter out = response.getWriter(); out.println(); out.println(); out.println(); out.println( + title + ); out.println(); out.println(); out.println( + title + ); String radius = request.getParameter(radius); if (radius != null) float r=(new Float(radius).floatValue();
7、 double s=2*3.14*r; double area=3.14*r*r; out.println( 圆的周长: +s+ ); out.println( 圆的面积: +area); else out.println(您还未提交!); out.println(); out.println(); out.println(请你输入圆的半径:); out.println(); out.println(); out.println(); out.println(); out.println(); public void doPost(HttpServletRequest request, Htt
8、pServletResponse response) throws IOException, ServletException doGet(request, response); 第五章 习题答案一、 选择题1、A 2、C 3、C 4、BCD 5、A 6、A 7、B 8、C二、 填空题1、 WebWork,拦截器2、 WebWork,Struts13、 Class4、 Struts2-core、freemarker、commons-logging、ognl、xwork5、 6、 7、 Action,,Validateable三、 简单题1、 MVC的全称为model-view-controll
9、er(模式-视图-控制器)。MVC是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护。使用MVC开发出来的应用程序一般包括以下几个内容:1) 控制器(Controller):控制器类处理客户端向Web应用程序发出的请求,获取数据,并指定返回给客户端,用来显示处理结果。2) 模型(Model):模型类代表了应用程序的数据,这些数据通常具有一个数据验证逻辑,用来使得这些数据必须符合业务逻辑。3) 视图(View):视图类是Web应用程序中用来生成并显示HTML格式的服务器端对客户端请求的响应结果的模板文件。2、 用户提交自己的请求;由web.xml拦截,转发到action
10、进行处理;Struts.xml根据相应的action配置,调用相应的方法来处理,并根据结果转发到不同的页面。3、 定义自己的拦截器实例,并继承相应的拦截器类;在struts.xml中配置拦截器。使用声明拦截器,在内以调用拦截器或者使用拦截器;用户发送添加评论的请求,有struts.xml捕获,并交由拦截器处理;拦截器根据定义的方法进行校验,放回相应的执行结果,实现文字屏蔽效果。4、 客户端校验:在客户端使用javascript脚本对用户输入的数据进行校验;服务器校验:在服务器端对数据进行校验。5、 加载全局范围资源文件,加载包范围资源文件,加载action范围资源文件,加载临时范围内的资源文件
11、。6、 Servlet被服务器实例化后,容器运行其init()方法,请求到达时运行其service()方法,service()方法自动派遣运行与请求对应的doGet、doPost方法等,当服务器决定将实例销毁的时候调用其destroy方法。四、 上机操作题略。6.6 课后习题一、选择题1. 一般情况下,关系数据模型与对象模型之间有_匹配关系。(多选)A、表对应类 B、记录对应对象C、表的字段对应类的属性D、表之间的参考关系对应类之间的依赖关系答案:ABC 2. 事务隔离级别是由_实现的?A、 Java应用程序 B、HibernateC、数据库系统 D、JDBC驱动程序答案:C 3、假设对Cus
12、tomer类的orders集合采用延迟检索策略,编译或运行以下程序,会出现的情况是_。Session session=sessionFactory.openSession();tx = session.beginTransaction();Customer customer=(Customer)session.get(Customer.class,new Long(1);mit();session.close();Iterator orderIterator=customer.getOrders().iterator();A、编译出错 B、编译通过,并正常运行 C、编译通过,但运行时抛出异常答
13、案:C4、以下关于SessionFactory的说法_正确?(多选)A、对于每个数据库事务,应该创建一个SessionFactory对象B、一个SessionFactory对象对应一个数据库存储源。C、SessionFactory是重量级的对象,不应该随意创建。如果系统中只有一个数据库存储源,只需要创建一个。D、SessionFactory的load()方法用于加载持久化对象答案:BC 5、元素有一个cascade属性,如果希望Hibernate级联保存集合中的对象,casecade属性应该取_值?A、 none B、saveC、delete D、save-update答案:D 二、简答题1、
14、 简述对象关系映射ORM概念。答案:对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。2、 Hibernate的5个核心接口有哪些?答案:通常开发过程中,所有Hibernate应用中都会访问Hibernate的5个核心接口:Configuration接口、SessionFatory接口、 Session接口、Transaction接口、 Query和C
15、riteria接口。3、 简述Hibernate 3 Web应用的开发步骤。答案:Hibernate 3 Web应用的开发一般经过以下几个步骤:(1)创建数据库。(2)将Hibernate所需的JAR包复制到WEB-INF/lib下。(3)创建Hibernate的配置文件。(4)利用Hibernate的第三方工具或Eclipse的有关插件从数据库中创建出相应的实体对象及其ORM映射文件。(5)创建Hibernate的SessionFactory类。(6)通过SessionFactory创建Session实例。(7)通过创建的Session实例进行持久化对象的管理。(8)通过创建的Transac
16、tion实例进行事务管理。(9)通过创建的Query或Criteria实例实现数据库的查询。4、 简述Hibernate配置文件支持的两种形式过程。答案:Hibernate配置文件支持两种形式,一种是xml格式的配置文件,另一种是Java属性文件格式的配置文件,采用“键=值”的形式。建议采用xml格式的配置文件。xml配置文件可以直接对映射文件进行配置,并由Hibernate自动加载,而properties文件则必须在程序中通过编码加载映射文件。方法1:在 Hibernate.cfg.XML中加入元素 、,放置在类路径(classpath)的根目录下。 方法2:创建Java属性文件格式的配置文
17、件,将 Hibernate.properties 放置放在类路径的根目录下。 5、 简述HQL查询步骤。1) 答案:获取Hibernate Session对象2) 编写HQL语句3) 以HQL语句作为参数,调用Session的createQuery方法创建查询对象4) 如果HQL语句包含参数,则调用Query的setXxx方法为参数赋值5) 调用Query独享的list()或uniqueResult()方法返回查询结果列表 三、上机操作题1、验证本章实例6-1到实例6-2的实验。2、测试不同数据库的连接使用(Oracle、MySQL和SQL Server等)。英文版简答题答案 1. Brief
18、ly describe the ORM concept of object relation mapping. Answer: Object relational mapping ( ORM ) is a technology to solve the mismatch between object-oriented and relational databases. In short, ORM is to automatically persist objects in Java programs into relational databases by using metadata tha
19、t describes the mapping between objects and databases. Essentially, it is to transform data from one form to another. 2. What are the five core interfaces of Hibernate? Answer: In general, during the development process, all Hibernate applications will access five core interfaces of Hibernate: confi
20、guration interface, session interface, session interface, transaction interface, query and criteria interface. 3. Briefly describe the development steps of Hibernate 3 web application. Answer: Hibernate 3 web application development generally goes through the following steps: ( 1 ) Create a database
21、. ( 2 ) Copy the jar package needed by Hibernate to we b - INF / lib. ( 3 ) Create Hibernates configuration file. ( 4 ) Using Hibernates third-party tools or eclipses related plug-ins to create corresponding entity objects and their ORM mapping files from the database. ( 5 ) Create Hibernates sessio
22、n factory class. ( 6 ) Create a session instance through the session factory. ( 7 ) Managing persistent objects through the created session instance. ( 8 ) Conduct transaction management through the created transaction instance. ( 9 ) Query the database through the created query or criteria instance
23、. 4. Briefly describe two forms of processes supported by Hibernate configuration files. Answer: Hibernate configuration files support two forms, one is configuration files in XMLformat, and the other is configuration files in Java property file format, which take the form of key = value. Configurat
24、ion files in XMLformat are recommended. XMLconfiguration files can directly configure mapping files, which are automatically loaded by Hibernate, while properties files must be loaded by encoding in the program. Method 1: Add the elements and to Hibernate.cfg.XMLand place them in the root directory
25、of class path. Method 2: Create a configuration file in Java property file format, and place Hibernate.properties in the root directory of the classpath. 5. Briefly describe HQL query steps. 1 ) Answer: get Hibernate session object 2 ) Write HQL statement 3 ) Using HQL statement as a parameter, calling the create query method of session to create a query object 4 ) If HQL statement contains parameters, call querys setxxx method to assign values to the parameters 5 ) Call the query exclusive list ( ) or unique result ( ) method to return the query result list