当前位置:文档之家› JavaWeb程序设计教程课后练习答案

JavaWeb程序设计教程课后练习答案

第1章 Web应用开发简介习题答案1.Web在组成上包括______和______两部分。

答案:服务器客户端2.谈谈对面向对象的认识。

答案:面向对象将将要解决的问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙解决问题中的各个步骤中的行为。

面向对象编程方式是建立在面向过程编程方式基础上,其最重要的改变在于面向对象编程中,程序将围绕被操作的对象来设计,而不是操作本身。

面向对象编程方式以类作为构造程序的基本单位,具有封装、抽象、继承、多态性等特点。

3.介绍几种常用的框架技术。

答案:Java中常用的框架。

1.StrutsStruts是Apache 基金会Jakarta 项目组的一个开源项目,是一个基于Sun J2EE平台的MVC框架,它将Servlet和JSP标签作为实现自身功能的一部分。

2.WebWorkWebWork是由OpenSymphony组织开发的,是一个基于Web的MVC框架。

它在运行时通过Interceptor(拦截器)自动应用,因此脱离了Action类。

3.Struts 2Struts 2是Apache基金会的一个开源项目,它建立在Struts框架与WebWork框架基础之上,继承了二者的优点,是目前非常流行的一个Web框架。

4.SpringSpring是一个以IoC和AOP为核心的轻量级容器框架。

它提供了一系列的Java EE开发解决方案,包括表示层的Spring MVC、持久层的Spring JDBC以及业务层事务管理等众多的企业级应用技术。

5.HibernateHibernate是一个ORM(对象关系映射)框架,它对JDBC进行了轻量级的封装。

通过使用Hibernate框架,开发人员能够以面向对象的思维方式来操作数据库。

6.Ibatis相对于Hibernate而言,Ibatis是一个“半自动化”的ORM实现框架,它主要致力于POJO与SQL之间的映射关系,是对“全自动化”ORM框架的一种有益补充。

7.EasyJWebEasyJWeb是一个核心基于模板技术实现的MVC框架,主要致力于Java Web应用程序的快速开发。

4.IDE的用途是什么?答案:IDE是一种用于辅助开发人员开发应用程序的应用软件,它一般包括代码编辑器、编译器、调试器和图形用户界面工具,有的还包括版本控制系统、性能分析器等更多工具,因此IDE也就具有了编写、编译、调试等多种功能。

正是基于这些功能,使用IDE能够减少项目的开发周期,减轻程序员的工作量,提高应用程序的开发效率等。

5.Web应用服务器的用途是什么?Web应用服务器是为创建、部署、运行以及管理Web应用提供多种运行时服务(如事务、安全等等)的分布式系统,它是应用程序运行的一个基本环境。

第2章 Java EE运行及开发环境习题答案1.配置JDK环境变量时,需要编辑______变量,需要新增______变量和_______变量。

答案:PathJava_Homeclasspath2.Tomcat的启动和停止程序位于其安装路径的______文件夹中。

答案:bin3.Tomcat中______文件用于配置服务器端口连接等信息。

答案:server.xml4.在MyEclipse中,打开MyEclipse->______->Tomcat结点,选择Tomcat6.0结点,进入Tomcat6.0配置界面。

答案:Servers5.以下三个选项,______用于工程的发布。

答案:1 21 3第3章 JSP和Servlet习题答案(1)JSP的九个内置对象分别为___,___,___,___,___,___,___,___,___。

答案:request对象response对象session对象out对象page对象application对象pageContext对象config对象exception对象(2)画出JSP的工作原理图?答案:JSP的工作原理图:(3)page指令的作用?答案:page指令用于定义JSP页面中的全局属性。

(4)jsp:useBean指令的作用?答案:jsp:useBean指令用来在JSP页面内创建一个JavaBean实例。

(5)<load-on-startup>元素的作用?答案:<load-on-startup>元素用于要求服务器启动时就加载和初始化Servlet。

(6)举一个声明的例子。

<%!int number=0;//声明一个变量public int getNum(int i){//声明一个方法return i;}%>第4章 SQL与JDBC习题答案1.简述SQL的组成部分。

答案:SQL语言由以下3部分组成,分别是:●数据库模式定义语言(DDL):CREATE、DROP、ALTER等语句。

●数据操纵语言(DML):INSERT、UPDATE、DELETE、SELECT语句。

●数据控制语言:GRANT、REVOKE、COMMIT、ROLLBACK等语句。

2.简述JDBC的执行步骤。

答案:(1)加载JDBC驱动程序通过静态类Class类加载数据库驱动。

(2)取得数据库连接通过DriverManager类中的getConnection()获取数据库的连接对象Connection(3)执行各种SQL语句将Connection对象转换成Statement对象,通过该对象的executeUpdate()执行添加、修改以及删除的SQL语句。

(4)获取查询结果将Connection对象转换成Statement对象,通过该对象的executeQuery()执行查询的SQL 语句,该方法返回ResultSet对象。

(5)关闭数据库连接通过Connection对象的close()方法关闭数据库连接,并抛出异常。

3.Statement对象可以处理哪些类型的SQL语句,处理这些SQL语句的主要方法是什么?答案:Statement接口的executeUpdate(String sql)方法将执行添加(insert)、修改(update)和删除(delete)的SQL语句,执行成功后,将返回一个int型数值,该数值为影响数据库记录的行数。

该接口还可以通过executeQuery()方法查询的SQL语句。

4.PreparedStatement对象可以处理哪些类型的SQL语句,处理这些SQL语句的主要方法是什么?答案:PreparedStatement接口的executeUpdate(String sql)方法将执行添加(insert)、修改(update)和删除(delete)的SQL语句,执行成功后,将返回一个int型数值,该数值为影响数据库记录的行数。

该接口还可以通过executeQuery()方法查询的SQL语句。

5.CallableStatement对象可以处理哪些类型的SQL语句,处理这些SQL语句的主要方法是什么?答案:CallableStatement接口的executeUpdate(String sql)方法将执行添加(insert)、修改(update)和删除(delete)的数据库的存储过程,执行成功后,将返回一个int型数值,该数值为影响数据库记录的行数。

该接口还可以通过executeQuery()方法查询的数据库存储过程。

6.在SQL Server数据库系统中,创建一个数据库,并且在该数据库下创建学生信息表,含有学生的基本信息,并通过JDBC实现对该数据表内容实现添加、修改、删除和查询的操作。

答案:JDBC的代码如下:import java.sql.*;public class JDBConnection {private final String dbDrive="com.mysql.jdbc.Driver";private final String url = "jdbc:mysql://localhost:3306/db_text?characterEncoding=gb2312";private final String userName = "sa";private final String password = "";private Connection con = null;public JDBConnection() { //通过构造方法加载数据库驱动try {Class.forName(dbDrive).newInstance();} catch (Exception ex) {System.out.println("数据库加载失败");}}public boolean creatConnection() { //创建数据库连接try {con = DriverManager.getConnection(url, userName, password);con.setAutoCommit(true);} catch (SQLException e) {}return true;}public boolean executeUpdate(String sql) { //对数据表的增加、修改和删除的操作if (con == null) {creatConnection();}try {Statement stmt = con.createStatement();int iCount = stmt.executeUpdate(sql);System.out.println("操作成功,所影响的记录数为" + String.valueOf(iCount));return true;} catch (SQLException e) {return false;}}public ResultSet executeQuery(String sql) { //对数据库的查询操作ResultSet rs;try {if (con == null) {creatConnection();}Statement stmt = con.createStatement();rs = stmt.executeQuery(sql);return null;} catch (Exception e) {return null;}return rs;}}public void closeConnection(){ //关闭数据库连接if(con==null){try {con.close();} catch (SQLException e) {}}}}将MYSQL数据库驱动的类包加载在工程中后,读者可以通过上代码,调用相应的方法,实现对学生信息表进行各种操作。

相关主题