当前位置:文档之家› jsp程序设计书

jsp程序设计书

jsp程序设计书
jsp程序设计书

武汉理工大学华夏学院大作业报告书

课程名称:JSP程序设计

题目:基于JSP的用户管理系统的开发与设计系名:信息工程系

专业班级:计算机1112 姓名:高文奇

学号: 10210411205 指导教师:苏永红

2014年 5 月 23 日

1. 目的

1.1 实现管理员进入登录系统,进行查看、修改、删除普通用户信息的功能;

1.2 实现普通用户进入登录系统,进行查看、修改本身信息的功能;

1.3 实现用户和管理员在进行修改、查看等基本功能以外的其他功能,包括退出、返回和注册等。

2. 软件开发环境

2.1 MyEclipse软件

MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse 开发工具。

2.2 数据库系统

一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。一个SQL表由行集构成,一行是列的序列,每列与行对应一个数据项。一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。

3. 系统总体设计

3.1 功能介绍

3.1.1. 以管理员权限进入系统后可以进行对系统用户信息的管理、查询、输入用户信息以及删除等操作。

3.1.2. 以普通用户权限进入系统后可以对自己的基本信息进行查看,以及信息的修改。

3.2系统功能模块图

图1 系统结构图

3.3 系统数据库设计

3.3.1 数据库的建立

首先创建wb数据库,然后创建一个admin的表,再表中建立管理员的账号、密码。管理员可实现添加、修改、删除普通用户信息的功能。

图2 管理员的数据库界面

创建一个tb_userd的表,在表中建立普通用户的基本信息,包括姓名,性别,年龄,电话,地址等基本信息。

图3 普通用户的数据库界面

3.3.2数据库的信息导入

/*

MySQL Data Transfer

Source Host: localhost

Source Database: wb

Target Host: localhost

Target Database: wb

Date: 2013/9/12 23:19:36

*/

SET FOREIGN_KEY_CHECKS=0;

-- Table structure for admin

-- 创建管理员表,注册管理员账号、密码----------------------------

CREATE TABLE `admin` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`adid` varchar(50) DEFAULT NULL,

`adname` varchar(50) DEFAULT NULL,

`adpass` varchar(50) DEFAULT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------

-- Table structure for tb_user

--创建用户表,填写用户信息 ---------------------------- CREATE TABLE `tb_user` (

`uid` int(11) NOT NULL AUTO_INCREMENT,

`username` varchar(50) DEFAULT NULL,

`upass` varchar(50) DEFAULT NULL,

`sex` varchar(50) DEFAULT NULL,

`age` int(11) DEFAULT NULL,

`email` varchar(50) DEFAULT NULL,

`tel` varchar(50) DEFAULT NULL,

`qq` varchar(50) DEFAULT NULL,

`descr` varchar(50) DEFAULT NULL,

PRIMARY KEY (`uid`)

) ENGINE=InnoDB DEFAULT CHARSET=gbk;

-- ----------------------------

-- Records

--数据库信息 ----------------------------

INSERT INTO `admin` VALUES ('1', '1', 'gwq', '123');

INSERT INTO `tb_user` VALUES ('1', '1', '1', '000', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('2', '2', '2', '000', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('3', '3', '3', '000', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('4', '4', '4', '111', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('5', '5', '5', '111', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('6', '6', '6', '000', '22', '123456', '123456', '123456', '123456');

INSERT INTO `tb_user` VALUES ('7', '7', '7', '111', '22', '123456', '123456', '123456', '123456');

5.系统测试与运行

5.1 运行截图

图4 登陆界面

图5 管理员登入界面

图6 管理员查看信息界面

图7 管理员修改信息界面

图8 普通用户登录界面

图9 普通用户修改界面

7. 总结

这次结课作业是培养学生综合运用所学知识 ,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程。

在这次结课考核中,我们独立的完成课程设计。在任务中,第一步,明确设计的设备以及具体内容;第二步,按照要求正确的编译、调试每一部分得程序,一定要确保程序正确;第三步,开始试验运行,以及记录实验结果,调试程序直到达到预期的效果。

通过这次课程任务,使我对jsp、java以及数据库都有了更进一步的认识和了解,要想学好这些课程要重在实践,要通过不断的上机操作才能更好地学习它,我也发现我的好多不足之处,首先是自己在实际操作能力上还有不足,通过本次课程任务也有所改进;在这次课程任务中,我认识到学好计算机语言要重视实践操作,不仅仅是学习jsp、java、数据库,还是其它的课程,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机语言。在课程任务过程中,收获知识,提高能力的同时,我也学到了很多人生的哲理,懂得怎么样去制定计划,怎么样去实现这个计划,并掌握了在执行过程中怎么样去克服心理上的不良情绪。最后,谢谢老师在设计过程中的详细指导。

参考文献

[1] 王国辉 JSP程序设计教程【M】人民邮电出版社 2012年8月

[2] 张建伟数据库技术与应用——SQL Sever 2005 [M] 人民邮政出版社 2009年2月

[3] 邱珊 JAVA语言程序设计[M ]科学出版社 2012年11月

[2] 高金兰数据库原理与SQLServer应用[M] 科学出版社 2009年11月

附录系统核心代码

admin_index:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+p ath+"/";

%>

导航页面

欢迎<%=request.getSession().getAttribute("username") %>,登录!

查看用户信息

注册新用户

切换帐号

Login:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme() + "://"

+ request.getServerName() + ":" + request.getServerPort()

+ path + "/";

%>

登陆界面



        

欢迎您的登录:



帐号:        

密码:
     




  

  


Index:

<%@ page language="java" import="java.util.*,com.softeem.model.*" pageEncoding="utf-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+p ath+"/";

List list = (List) request.getAttribute("list");

%>

导航页面

欢迎<%=request.getSession().getAttribute("username") %>,登录!


           切换帐号

>

<%

for (int i = 0; i < list.size(); i++) {if(i%2==0){

%>

<% }else { %>

<% } %>

<%

}

%>

id

账号

性别

年龄

QQ

邮箱

电话

个人描述

编辑

<%=list.get(i).getUid()%>

<%=list.get(i).getUsername()%>

<%=list.get(i).getSex()%>

<%=list.get(i).getAge()%>

<%=list.get(i).getQq()%>

<%=list.get(i).getTel()%>

<%=list.get(i).getEmail()%>

<%=list.get(i).getDescr()%>

修改

LoginServlet:

package com.softeem.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import https://www.doczj.com/doc/5c10160167.html,erDAO;

import https://www.doczj.com/doc/5c10160167.html,er;

public class LoginServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

request.setCharacterEncoding("utf-8");

//获取信息

String adname=request.getParameter("username");

String adpass=request.getParameter("upass");

String id=request.getParameter("id");

//System.out.println("username="+username);

//System.out.println("upass="+upass);

if(id.equals("管理员")){

UserDAO ud=new UserDAO();

boolean flag=ud.loginadmin(adname, adpass);

if(flag){

//可以登陆

//将我们胡用户名放入session会话

request.getSession().setAttribute("username", adname);

request.getSession().setAttribute("upass", adpass);

response.sendRedirect("admin_index.jsp");

}else{

//不能登陆

response.sendRedirect("login.jsp");

}

//response.sendRedirect("admin_index.jsp");

}

else{

UserDAO ud=new UserDAO();

boolean flag=ud.login(adname, adpass);

if(flag){

//可以登陆

//将我们胡用户名放入session会话

request.getSession().setAttribute("username", adname);

List list=ud.findselfinfo(adname, adpass);

//将数据传输到页面上去

request.setAttribute("list",list);

request.getRequestDispatcher("index.jsp").forward(request, response);

// request.getRequestDispatcher("index.jsp").forward(request, response);

}else{

//不能登陆

response.sendRedirect("login.jsp");

}//不能登陆

//response.sendRedirect("index.jsp");

}

}

}

FindAllServlet:

package com.softeem.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import https://www.doczj.com/doc/5c10160167.html,erDAO;

import https://www.doczj.com/doc/5c10160167.html,er;

public class FindAllServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("-FindAllServlet--doGet");

//从数据库中取出user表中的数据,

UserDAO ud=new UserDAO();

List list=ud.findAll();

//将数据传输到页面上去

request.setAttribute("list",list);

//服务器跳转

request.getRequestDispatcher("allinfo.jsp").forward(request, response);

//response.sendRedirect("allinfo.jsp");

}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("-FindAllServlet--doPost");

this.doGet(request, response);

}

}

DeleteByIdServlet:

package com.softeem.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import https://www.doczj.com/doc/5c10160167.html,erDAO;

public class DeleteByIdServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("-----doGet-");

//删除

//我要知道我删除的是哪一条数据?

String _uid=request.getParameter("uid");

//强制将String转换为int

int uid=Integer.parseInt(_uid);

if(uid!=6){

//调用删除方法

UserDAO ud=new UserDAO();

ud.deleteById(uid);

}

response.sendRedirect("FindAllServlet");

}

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("-----dopost-");

}

}

Jsp程序设计复习试题

《JSP 程序设计》复习题 一、 选择题 HTML 页面中加入( D )就构成了一个 JSP 页面文件。 A 、JAVA 程序片 B 、JSP 标签 C 、用“<%”、“%>”标记符号括起来的程序 2. 配置 JSP 运行环境,若 WEB 应用服务器选用 TOMCAT ,以下说法正确的是: ( A 、先安装 TOMCAT ,再安装 JDK ,再安装 TOMCAT B 、不需安装 JDK ,安装 TOMCAT 就可以了 C 、JDK 和 TOMCAT 只要都安装就可以了,安装顺序没关系 B ) 3. 对于“<%!”、“%>”之间声明的变量,以下说法正确的是:( B ) A 、不是 JSP 页面的成员变量 、多个用户同时访问该页面时,任何一个用户对这些变量的操作,都会影响到其他用 C 、多个用户同时访问该页面时,每个用户对这些变量的操作都是互相独立的,不会互 相影响 D 、是 JSP 页面的局部变量 4. 在客户端浏览器的源代码中可以看到( B A 、JSP 注释 C 、JSP 注释和 HTML 注释 D 、JAVA 注释 5. page 指令的作用是:( A ) JSP 页面的一些属性和这些属性的值 A 、用来在 JSP 页面内某处嵌入一个文件 B 、使该 JSP 页面动态包含一个文件 C 、指示 JSP 页面加载 Java plugin 6. page 指令的 import 属性的作用是( C A 、定义 JSP 页面响应的 MIME 类型 B 、 D 、定义 JSP 页面字符的编码 ) 7. ( C )可在 JSP 页面出现该指令的位置处,静态插入一个文件。 A 、page 指令标签 B 、page 指令的 import 属性 指令标签 D 、include 动作标签 8. 以下对象中的( D )不是 JSP 的内置对象。 A 、request B 、session C 、application

JSP程序设计与项目实训教程_第2版_课后习题和参考答案

第1章Web技术简介 1.7 习题 1.7.1 选择题 1. Web技术的设想于哪一年提出()。 A.1954年 B.1969年 C.1989年 D.1990年 2. JSP页面在第一次运行时被JSP引擎转化为()。 A.HTML文件 B.CGI文件 C.CSS文件 D.Servlet文件 3. JavaEE体系中Web层技术是()。 A.HTML B.JavaBean C.EJB D.JSP 参考答案:1.C 2.D 3.D 1.7.2 填空题 1.当前主流的三大动态Web开发技术是:PHP、ASP/https://www.doczj.com/doc/5c10160167.html,和______________。 2. JSP的两种体系结构是:______________和______________。 3. JSP开发Web站点的主要方式有:直接JSP、JSP+JavaBean、______________、______________和SSH。 参考答案: 1.JSP 2.JSP Model1和JSP Model2 3.JSP+JavaBean+Servlet、J2EE/JavaEE 1.7.3 简答题 1. 简述JSP的工作原理。 答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成以下操作: ●将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。 ●JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。 ●JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。 ●服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。 由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。 2. 简述JSP两种体系结构。

JSP程序设计实验代码与习题解答

第1章JSP概述 习题一解答 1.答:确保Tomcat服务器使用的是Java_home环境变量设置的JDK 2.答:见1.3.2中的新建Web服务目录。 3.答:在浏览器的地址栏中键入:http://IP:端口号/Web服务目录/子目录/JSP页面。4.答:修改Tomcat服务器安装目录中conf文件夹中的主配置文件:server.xml,只要没有其他应用程序正在占用80,就可以将端口号设置为80。

第2章JSP页面与JSP标记 习题二解答 1.答:“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号<%!、%>所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。 “<%”和“%>”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。 2. 答:两次。 3.答:不允许。允许。 4.答:第一个用户看到的sum的值是610,第二个用户看到的sum的值是1210 5. 答: <%@ page contentType="text/html;charset=GB2312" %> <% for(char c='A';c<='Z';c++) { out.print(" "+c); } %> 6.答:include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。include动作标记告诉JSP页面动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP页面合并一个新的JSP页面,而是告诉Java解释器,这个文件在JSP运行时(Java文件的字节码文件被加载执行)才被处理。如果包含的文件是普通的文本文件,就将文件的内容发送到客户端,由客户端负责显示;如果包含的文件是JSP文件,JSP引擎就执行这个文件,然后将执行的结果发送到客户端,并由客户端负责显示这些结果。 7. 答:

JSP程序设计实用教程期末考试试卷A及答案

《JSP程序设计实用教程》期末考试试卷(A卷) (考试时间90分钟,满分100分) 一、选择题(1~40题,每题1分,共40分) 下面各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂抹在答题卡相应的位置上,答在试卷上不得分。 1.在传统的HTML页面中加入()就构成了一个JSP页面文件。 A.JAVA程序片B.JSP标签 C.用“<%”、“%>”标记符号括起来的程序D.JAVA程序片和JSP标签 2.配置JSP运行环境,若WEB应用服务器选用TOMCAT,以下说法正确的是:()A.先安装TOMCAT,再安装JDK B.先安装JDK,再安装TOMCAT C.不需安装JDK,安装TOMCAT就可以了 D.JDK和TOMCAT只要都安装就可以了,安装顺序没关系 3.对于“<%!”、“%>”之间声明的变量,以下说法正确的是:() A.不是JSP页面的成员变量 B.多个用户同时访问该页面时,任何一个用户对这些变量的操作,都会影响到其他用户C.多个用户同时访问该页面时,每个用户对这些变量的操作都是互相独立的,不会互相影响 D.是JSP页面的局部变量 4.在客户端浏览器的源代码中可以看到()。 A.JSP注释 B.HTML注释 C.JSP注释和HTML注释 D.JAVA注释 5.page指令的作用是:()。 A.用来定义整个JSP页面的一些属性和这些属性的值 B.用来在JSP页面内某处嵌入一个文件 C.使该JSP页面动态包含一个文件 D.指示JSP页面加载Java plugin 6.page指令的import属性的作用是()。 A.定义JSP页面响应的MIME类型 B.定义JSP页面使用的脚本语言 C.为JSP页面引入JAVA包中的类 D.定义JSP页面字符的编码 7.page指令的()属性可以设置JSP页面是否可多线程访问。 A.session B.buffer C.isThreadSafe D.info 8.()可在JSP页面出现该指令的位置处,静态插入一个文件。 A.page指令标签 B.page指令的import属性 C.include指令标签

jsp编程基础第五章习题

第五章使用JavaBean 一、选择题 1.下面哪一项属于工具Bean的用途?() A)完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。 B)负责数据的存取 C)接受客户端的请求,将处理结果返回客户端 D)在多台机器上跨几个地址空间运行 2.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp 动作指令?() A) B) C) D) 3.关于JavaBean,下列的叙述哪一项是不正确的?() A)JavaBean的类必须是具体的和公共的,并且具有无参数的构造器 B)JavaBean的类属性是私有的,要通过公共方法进行访问 C)JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册 D)JavaBean属性和表单控件名称能很好地耦合,得到表单提交的参数4.JavaBean的属性必须声明为private,方法必须声明为()访问类型。 A)private B)static C)protect D)public 5.JSP页面通过()来识别Bean对象,可以在程序片中通过xx.method形式来调用Bean 中的set和get方法。 A)name B)class C)id D)classname 6.JavaBean的作用范围可以是page、request、session和()四个作用范围中的一种。 A)application B)local C)global D)class 7.下列哪个作用范围的bean,请求响应完成则该Bean即被释放,不同客户的Bean互不相同。() A)application B)request C)page D)session 8.下列哪个作用范围的Bean,被Web服务目录下所有用户共享,任何客户对Bean属性的修改都会影响到其他用户。() A)application B)request C)page D)session 8.下列哪个作用范围的Bean,当客户离开这个页面时,JSP引擎取消为客户该页面分配的Bean,释放他所占的内存空间。() A)application B)request C)page D)session 9.使用动作标记可以在JSP页面中得到Bean实例的属性值,并将其转换为什么类型的数据,发送到客户端。() A)String B)Double

JSP程序设计试题二及答案

JSP程序设计试题二及答案 一、选择题(2’×5=10分) 1.对于预定义<%!预定义%>的说法错误的是(C)。 A、一次可声明多个变量和方法,只要以“;”结尾就行 B、一个声明仅在一个页面中有效 C、声明的变量将作为局部变量 D、在预定义中声明的变量将在JSP页面初始化时初始化 2.下述选项中不属于JDBC基本功能的是(D )。 A、与数据库建立连接 B、提交SQL语句 C、处理查询结果 D、数据库维护管理 3.Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是(D)。 A、<%@ page %>作用于整个JSP页面。 B、可以在一个页面中使用多个<%@ page %>指令。 C、为增强程序的可读性,建议将<%@ page %>指令放在JSP文件的开头,但不是必须的。 D、<%@ page %>指令中的属性只能出现一次。 4.关于JavaBean正确的说法是(A)。 A、Java文件与Bean所定义的类名可以不同,但一定要注意区分字母的大小写 B、在JSP文件中引用Bean,其实就是用语句 C、被引用的Bean文件的文件名后缀为.java D、Bean文件放在任何目录下都可以被引用 5.不能在不同用户之间共享数据的方法是(A )。 A、通过cookie B、利用文件系统 C、利用数据库 D、通过ServletContext对象 二、填空题(4'×5=20分) 1.Tomcat服务器的默认端口是8080 。

2.JSP主要内置对象主要分为输入/输出对象、作用域通信对象、Servlet对象和错误对象四类。 3.一个Bean由三部分组成:属性(Property) 、事件(Event) 、方法(Method) 。 4. Servlet的生命周期分为加载Servlet 、初始化、处理客户请求、卸载Servlet 。 5.application对象是所有客户共同拥有,而session对象则是每个客户专用的。 三、名词解释(5’×4=20分) 1.B/S模式 B/S(浏览器/服务器)模式采取了基于浏览器的策略,是目前Web应用程序开发中比较常用的一种开发模式。在这种开发模式中,软件开发人员只需专注于开发服务器端的程序,不需要单独开发客户端软件,用户通过浏览器就可以访问服务器端提供的服务。使用B/S 模式可加快Web应用程序开发的速度,提高开发效率,目前的各大门户网站、各种Web信息管理系统等大都采用这种模式。 2.Servlet Servlet是与平台无关的服务器端小程序,从本质上讲,Servlet是一个Java类,除图形界面以外,Java语言能实现的功能,Servlet基本上都能实现。Servlet主要用于处理客户端传来的HTTP请求,并将处理结果以HTTP形式返回客户端,从而生成动态网页。 3.JavaBean JavaBean是描述Java的组件模型,类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以扩充Java的程序功能,通过JavaBean的组合还可以快速生成新的应用程序。对于程序员来说,使用JavaBean可以实现代码的重复利用,使得程序更易维护。 4.Ajax Ajax(Asynchronous JavaScript and XML,异步JavaScript和XML)是一种Web应用程序开发的手段,其第一个字母A的意思是使用异步方式调用,采用回调方式处理数据,会让用户感觉到桌面软件处理方式的便利。除此之外,Ajax还能使网站可以从不同的来源收集信息,然后把信息无缝地呈现在浏览者面前。Ajax由XHTML、CSS、JavaScript、XML、XMLHttpRequest、XSTL和DOM等组成。

2012年JSP程序设计期末试卷A

9.在JSP 中,( A )动作用于将请求转发给其他JSP 页面。 A.forward B.include https://www.doczj.com/doc/5c10160167.html,eBean D.setProperty 10.JSP 中使用标记时,不会出现的属性是:(C )。 https://www.doczj.com/doc/5c10160167.html, B.property C.value D.以上皆不会出现 11.在标记中包含哪个标记( D )? A.case B.choose C.check D.when 12.下面哪个标记产生的结果同<%=var%>( C )。 A. B. C. D. 13.每次传递请求或响应时调用Filter 的( B )方法。 A.init() B.doFilter() C.destroy() D.getInitParameter 14.Struts Bean 的( B )标记检索Web 应用程序资源的结果。 A.define B.include C.message D.page 15.Servlet 程序的入口点是:(A ) A.init () B.main () C.service () D.doGet () 1. JSP 是______sun_______ 公司倡导,由多家公司参与一起建立的一种动态网页技 术标准,主要用于开发动态网页。 2. 指令元素分为三种:它们分别是:Page 、Include 、和Taglib 。 3. JDBC 的主要任务是: 与数据库建立连接 、 发送SQL 语句 、 处理结 果 。 4. Servlet 的生命周期分三个时期: 装载Servlet 、 创建一个Servlet 实例 、 销毁 。 5. 在JSP 中,当执行了查询操作时,一般将查询结果保存在 ResultSet 对象中。 6. 在JSP 规范中,可以使用两种格式的注释:一种是输出注释;别一种 是隐藏注释 。 7. 在JSP 内置对象中,与请求相关的对象是 Request 对象。 8. 客户端向服务器端提交数据的方式通常有两种:一种是Get 提交方式;另一种是Post 提交方式。 9. 在JSP 中,可以使用 操作来设置Bean 的属性,也可以使用 操作来获取Bean 的值。 10. 异常的处理,可在该 方法的代码段中包含3类代码:try 、 catch 和finally 代码块。 11. JDBC 中为Statement 接口提供了3种执行方法,它们是:executeUpdate 方法、 executeQuery 方法 、execute 方法 。 12. 取表单(

)提交的参数,通常使用的内部对象是request ,方法是 getParameter 。 二、填空题:本大题共12小题,20个空,每空1分,共 20分,将正确答案填在相应的空格处。

14计5班Jsp程序设计复习试题1

《JSP程序设计》复习题 一、选择题 1.在传统的HTML页面中加入(D)就构成了一个JSP页面文件。 A、JAVA程序片 B、JSP标签 C、用“<%”、“%>”标记符号括起来的程序 D、JAVA程序片和JSP标签 2.配置JSP运行环境,若WEB应用服务器选用TOMCAT,以下说法正确的是:(B) A、先安装TOMCAT,再安装JDK B、先安装JDK,再安装TOMCAT C、不需安装JDK,安装TOMCAT就可以了 D、JDK和TOMCAT只要都安装就可以了,安装顺序没关系 3.在客户端浏览器的源代码中可以看到(B) A、JSP注释 B、HTML注释 C、JSP注释和HTML注释 D、JAVA注释 4.page指令的作用是:(A) A、用来定义整个JSP页面的一些属性和这些属性的值 B、用来在JSP页面内某处嵌入一个文件 C、使该JSP页面动态包含一个文件 D、指示JSP页面加载Java plugin 5.page指令的import属性的作用是( C) A、定义JSP页面响应的MIME类型 B、定义JSP页面使用的脚本语言 C、为JSP页面引入JAVA包中的类 D、定义JSP页面字符的编码 6.( C)可在JSP页面出现该指令的位置处,静态插入一个文件。 A、page指令标签 B、page指令的import属性 C、include指令标签 D、include动作标签 7.以下对象中的(D )不是JSP的内置对象。 A、request B、session C、application D、bean 8.在JSP中,内置对象(B)封装了用户提交的信息,使用该对象可以获取用户提交的 信息。 A、session B、request C、response D、out 9.request对象可以使用(A)方法获取表单中某输入框提交的信息。 A、getParameter(String s) B、getValue(String s) C、getParameterNames(String s) D、getParameterValue(String s)

Jsp程序设计复习试题

程序设计》复习题《JSP选择题一、 页面文件。在传统的HTML页面中加入( D )就构成了一个JSP1. 标签 B、JSP、AJAVA 程序片 标签“%>”标记符号括起来的程序 D、JAVA程序片和JSPC、用“<%”、)WEB应用服务器选用TOMCAT,以下说法正确的是:(B 2.配置JSP运行环境,若JDK 、先安装ATOMCAT,再安装TOMCAT B、先安装JDK,再安装就可以了C、不需安装JDK,安装TOMCAT 只要都安装就可以了,安装顺序没关系D、JDK和TOMCAT %>“”之间声明的变量,以下说法正确的是:(B)3.对 于“<%!”、页面的成员变量A、不是JSP、多个用户同时访问该页面时,任何一个用户对这些变量的操作,都会影响到其他用B 户、多个用户同时访问该页面时,每个用户对这些变量的操作 都是互相独立的,不会互C 相影响页面的局部变量D、是JSP )B4.在客户端浏览器的源代码中可以看到( 注释 B、HTMLA、JSP注释 D 、JAVA注释C、JSP注释和HTML注释 )指令的作用是:(A5. page 页面的一些属性和这些属性的值A、用来定义整个JSP 页面内某处嵌入一个文件B、用来在JSP 页面动态包含一个文件C、使该JSPJava plugin 、指示DJSP 页面加载属性的作用是( C)6.page指令的import 页面响应的类型MIMEJSPA、定义页面使用的脚本语言B、定义JSP 包中的类JSP页面引入JAVAC、为、定义JSP页面字符的编码D )可在JSP页面出现该指令的位置处,静态插入一个文件。7.( C import指令的属性 B、page A、page指令标签 include动作标签 D、 C、include指令标签 )不是JSP的内置对象。 8.以下对象中的( D A、request B、session C、application D、bean 《JSP程序设计》复习题第1页(共9页), )封装了用户提交的信息,使用该对象可以获取用户提交的中,内置对象(B9.在JSP 信息。request B、 A、session out 、 D C、response )方法获取表单中某输入框提交的信息。A 10.request对象可以使用( getValue(String s) 、 B、getParameter(String s)A getParameterValue(String s) 、 DC、getParameterNames(String s) JSP的内置对象中(A)对象可对客户的请求作出动态响应,向客户端发送数据。 11.request 、B A、response out D、 C、application )结束,被称为一个会话。 A )开始,到(12.从(A、访问者连接到服务器,访问者 关闭浏览器离开该服务器 B、服务器启动,服务器关闭 C、访问者连接到服务器,服务器关闭 D、服务器启动,访问者关闭浏览器离开该服务器B无效?()13.以下方法,哪个可使sessionsession.removeAttribute(String key) A、、 session.invalidate()B session.setAttribute(String key) C、session.getAttribute(String

jsp程序设计(第2版)习题解答

习题一 1.答:确保Tomcat服务器使用的是Java_home环境变量设置的JDK。 2.答:属于操作题,解答略。 3.答:Web服务目录的下的目录称为该Web服务目录下的相对Web服务目录。浏览器的地址栏中键入:http://IP:8080/Web目录名字/子目录名字/JSP页面。 4.答:修改Tomcat服务器安装目录中conf文件夹中的主配置文件:server.xml,只要没有其他应用程序正在占用80,就可以将端口号设置为80。 习题二 1.答:“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号<%!、%>所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。 “<%”和“%>”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。 2.答:两次。 3.答:第一个问题的答案是允许;第二个问题的答案是不允许。 4.答:第一个用户看到的sum的值是610,第二个用户看到的sum的值是1210 5.答: <%@ page contentType="text/html;charset=GB2312" %> <% for(char c='A';c<='Z';c++) { out.print(" "+c); } %> 6.答:include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。include动作标记告诉JSP页面动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP页面合并一个新的JSP页面,而是告诉Java解

jsp程序设计(第2版)习题解答,含题目

习题一 1.怎么启动和关闭Tomcat服务器 答:确保Tomcat服务器使用的是Java_home环境变量设置的JDK。 3.怎样访问Web服务目录子目录中的JSP页面 答:Web服务目录的下的目录称为该Web服务目录下的相对Web服务目录。浏览器的地址栏中键入:http://IP:8080/Web目录名字/子目录名字/JSP页面。 4.如果想修改Tomcat服务器的端口号,应当修改哪个文件?能否将端口号修改为80? 答:修改Tomcat服务器安装目录中conf文件夹中的主配置文件:server.xml,只要没有其他应用程序正在占用80,就可以将端口号设置为80。 习题二 1.“<%!”和“%>”之间声明的变量与“<%”和“%>”之间声明的变量与有何不同 答:“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,称为JSP页面的成员变量,成员变量的有效范围与标记符号<%!、%>所在的位置无关。所有用户共享JSP页面的成员变量,因此任何一个用户对JSP页面成员变量操作的结果,都会影响到其他用户。 “<%”和“%>”之间声明的变量称为局部变量,局部变量在JSP页面后继的所有程序片以及表达式部分内都有效。运行在不同线程中的Java程序片的局部变量互不干扰,即一个用户改变Java 程序片中的局部变量的值不会影响其他用户的Java程序片中的局部变量。当一个线程将Java程序片执行完毕,运行在该线程中的Java程序片的局部变量释放所占的内存。 2.如果有两个用户访问一个JSP页面,该页面中的Java程序片将被执行几次?答:两次。 5.请编写一个简单的JSP页面,显示大写英文字母表。 答:<%@ page contentType="text/html;charset=GB2312" %> <% for(char c='A';c<='Z';c++) { out.print(" "+c); } %> 6.请简单叙述include指令标记和include动作标记的不同。 答:include指令标记的作用是在JSP页面出现该指令的位置处,静态插入一个文件,即JSP页面和插入的文件合并成一个新的JSP页面,然后JSP引擎再将这个新的JSP页面转译成Java文件。因此,插入文件后,必须保证新合并成的JSP页面符合JSP语法规则,即能够成为一个JSP页面文件。include 动作标记告诉JSP页面动态加载一个文件,不把JSP页面中动作指令include所指定的文件与原JSP 页面合并一个新的JSP页面,而是告诉Java解释器,这个文件在JSP运行时(Java文件的字节码文

JSP期末考试试卷(A卷)-2012.6

华南农业大学期末考试试卷(A 卷) 2011学年第2学期 考试科目: 软件开发基础(Java ) 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 答题说明:所有答案必须写在答卷的指定位置,考试结束时只交答卷。 一、选择题(本大题共20小题,每小题1分,共20分) 说明:将选项答案按序号写在答卷上。 1. HTML 页面中,定义浏览器标题的标记应该写在()标记中。 A <HTML></HTML> B <HEAD></HEAD> C <BODY></BODY> D <XML></XML> 2. 表单<FORM>的属性中,用来设定提交该表单的URL 地址的属性是()。 A action B method C name D target 3.下列关于JSP 应用程序执行的描述正确的是()。 A JSP 页面在每次执行前都必须经过翻译和编译后生成.class 文件。 B JSP 页面需要下载到本地浏览器中执行。 C JSP 页面的执行是在JSP 容器中完成的,需要JVM (Java 虚拟机)的支持。 D JSP 页面只需要有JVM (Java 虚拟机)就可以单独运行。 4.Servlet 开发人员在扩展HttpServlet 时如何处理HttpServlet 的 service()方法? A 必须覆盖service()方法 B 从doGet()或doPost()方法调用service()方法 C 从init()调用service()方法 D 至少覆盖一个doXXX()方法,如doPost()方法 5.以下哪个JSP 隐含对象不能存储属性(Attribute)? A request B response C session D application 6. 以下对JavaBean 的描述中正确的是哪一个? A JavaBean 必须继承java.io.Serializable 接口 B JavaBean 本质上就是一个Java 类 C 编译后的JavaBean 可以放置在Web 项目的任意目录下 D 在JSP 页面中只能使用<jsp:useBean>动作才能使用JavaBean 7. Java Web 应用程序的配置文件web.xml 存放在哪个位置? A /WEB-INF/classes B /WEB-INF C /WEB-INF/lib D /META-INF 8. 在某应用程序中有2个页面index.jsp 和test.jsp ,它们的代码分别如下:</p><h2>jsp程序设计项目教程答案</h2><p>第一章 1-1 jsp技术是由(java)语言作为脚本语言。 1-2 web是(表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)、超文本传输协议(HTTP)等。)。 1-3 http(超文本传输协议)是一种internet 上常见的协议,用于传输超文本标记语言编写的文件,也就是通常所说的网页。 1-4 网站一般分为3层,分别是(用户界面交互层、应用程序层、数据库层)。1-5 servlet的生命周期为(载入、初始化、执行、删除)。 1-6 jsp技术是(基于java语言的动态网页开发技术。(在传统的网页文件html 中加入java程序片段和jsp标记))。 1-7 什么是c/s结构?什么是b/s结构?两者有什么区别? c/s 是二层结构平台模式,要求客户端安装指定软件,客户端执行前端的数据处理,服务端进行后端的服务处理。 B/s 是三层体系结构要求客户端只要安装一个浏览器,客户端通过浏览器将请求发送给web服务器,web服务器负责与后端数据库服务器进行数据通信。 区别 服务器负荷量维护费用升级方便性选择性安全性 b/s 大小容易多高 c/s 小大困难少低 1-8 简述jsp技术和servlet 技术的区别和联系。 Servlet和jsp技术都是属于web层的技术,这两项技术都可以解决动态网页的生成问题,但最好的方式是取两项技术的各自的长处,jsp负责网页表现设计,servlet负责跳转控制。每一个jsp文件在执行之前都会被转化成servlet文件。 第二章 2-1 BufferedReader类的作用是(用来从字符输入流中读取文本并将字符存入缓冲区以便能提供字符、数组的高效读取)。 2-2 FileReader类的作用是(用来读取字符文件)。 2-3 FileOutputStream类的close()方法的作用是(关闭流)。 2-4 BufferedReader类的read()方法的作用是(D.读一个字符作为方法的返回值。如果返回值是-1,则表示文件结束。) 2-6 显示当前时间:<% Date time=new Date(); %> <%=time %> 第三章 3-1 HTML是(超文本标记语言),作用是(对www页面内容的格式进行说明)。3-2 JSP中的9个内建对象为(out、application、page、pageContext、config、exception、request、response、session)。 3-3 request对象的作用是(表示客户端对网页的请求,并使用HTTP协议处理客户端的请求),两个重要的方法为(getParameter(String name),getParameterValues(String name))。 3-4 response对象的作用是(用于处理JSP生成的响应并将响应发送给客户端),两个重要的方法为(void setContentType(String name),void sendRedirect(String name))。 3-5 在Java中连接数据库需要用(JDBC)。</p><h2>11-12-2 JSP程序设计 期末试卷(B)答案</h2><p>方法系部:信息工程系 班级: 姓名: 学号:</p><p>换为什么类型的数据,发送到客户端。( A ) A)String B)Double C)Object D)Classes 8.当利用request的方法获取Form中元素时,默认情况下字符编码是哪个(A) A)ISO-8859-1 B)GB2312 C)GB3000 D)ISO-8259-1 9.调用getCreationTime()可以获取session对象创建的时间,该时间的单位是(C)。 A)秒B)分秒C)毫秒D)微秒 10.JSP的Page编译指令的属性Language的默认值是:(A) A)Java B)C C)C#D)SQL 11.可以在以下哪个()标记之间插入变量与方法声明?(B) A)<% 和%> B)<%!和%> C)</ 和%> D)<% 和!> 12.<jsp:useBean id="bean的名称" scope="bean的有效范围" class="包名.类名"/>动作标记中,scope的值不可以是(D)。 A)page B)request C)session D)response 13.下列变量声明在()范围内有效。(C)。 <%! Date dateTime; int countNum; %> A)从定义开始处有效,客户之间不共享 B)在整个页面内有效,客户之间不共享 C)在整个页面内有效,被多个客户共享 D)从定义开始处有效,被多个客户共享 14.下面描述错误的是(C) A)HTML文件必须由<html>开头,</html>标记结束。 B)文档头信息包含在<head>与</head>之间。 C)在<head>和</head>之间可以包含<title>和<body>等信息。</p><h2>JSP程序设计技术教程</h2><p>JSP程序设计技术教程知识点 第三章脚本语言 HTML:超文本标记(链接)语言 标签: 1.单标签 2.双标签 3.标签属性 注:HTML标签属性无先后次序,且不区分大小写。 基本标签: 1.页面结构标签: a)<html></html> 分别放于最前与最后,标识HTML文档的开始与结束 b)<head></head>文档头部信息 标签对之中放有如<title> Eg:用以向浏 览器提供一些说明信息,描述HTML网页文档的属性 c) 其中的内容是HTML文档的主体部分。 2.页头标签: 标签对用来设定网页标题 3.标题标签: n,n越小,字越大。(文档内容中的标题,而不是页头) Eg:

一级标题 属性align 可以取left——左对齐(默认),right——右对齐,center——居中 4.段落标签: align属性,clear属性 5.预定格式标签:
标签对可以保留已经排好版的内容,默认字体为10磅 6.格式排版标签: 
——文本换行
——直线属性:1.size 设置粗细 2.width 设置宽度3.noshade 不用赋值,取消水平线阴影(默认有阴影)4.align 对齐方式 5.color 颜色 eg:
7.文字格式标签: 标签对设置文字 属性:1. face 设置字体样式 2.size 设置大小,7个级别,整数,默认为3。 8.注释标签:

Servlet JSP程序设计课后练习题答案(清华大学出版社)

ServletJSP程序设计课后习题答案 第1章Web技术简介 1.6.1选择题 1.C 2.D 3.D 1.6.2填空题 1.JSP 2.JSP Model 1和JSP Model 2 3.JSP+JavaBean+Servlet、J2EE/JavaEE 1.6.3简答题 1.简述JSP的工作原理。 答:所有的JSP应用程序在首次载入时都被翻译成Servlet文件,然后再运行,这个工作主要是由JSP引擎来完成。当第一次运行一个JSP页面时,JSP引擎要完成以下操作: ●将JSP文件翻译成Servlet文件,Servlet文件是Java应用程序。 ●JSP引擎调用Java编译器,编译Servlet文件得到可执行的代码文件(.class文件)。 ●JSP引擎调用Java虚拟机解释执行.class文件,并将运行结果返回给服务器。 ●服务器将运行结果以HTML形式作为响应返回给客户端的浏览器。 由于一个JSP页面在第一次被访问时要经过翻译、编译和执行这几个步骤,所以客户端得到响应所需要的时间比较长。当该页面再次被访问时,它对应的.class文件已经生成,不需要再次翻译和编译,JSP引擎可以直接执行.class文件,因此JSP页面的访问速度会大为提高。 2.简述JSP的两种体系结构。 答:JSP规范中分别称作JSP Model 1 和JSP Model 2,它们的本质区别在于处理批量请求的位置不同。Model1,在Model1体系中,JSP页面独自响应请求并将处理结果返回客户。这里仍然存在显示与内容的分离,因为所有的数据存取都是由JavaBean来完成的。尽管Model1体系十分适合简单应用的需要,它却不能满足复杂的大型Web应用程序需要。不加选择地随意运用Model 1,会导致JSP页内被嵌入大量的脚本片段或Java代码。尽管这对于Java程序员来说可能不是什么大问题,但如果JSP页面是由网页设计人员开发并维护的这就确实是个问题了。从根本上讲,将导致角色定义不清和职责分配不明,给项目管理带来不必要的麻烦。Model2体系结构,是一种把JSP与Servlet联合使用来实现动态内容服务的方法。它吸取了两种技术各自的优点,用JSP生成表示层的内容,让Servlet完成深层次的处理任务。Servlet充当控制者的角色,负责管理对请求的处理,创建JSP页面需要使用的Bean和对象,同时根据用户的动作决定把哪个JSP页面传给请求者。在JSP页面内没有处理逻辑,它仅负责检索原先由Servlet创建的对象或JavaBean,从Servlet中提取动态内容插入静态模板。分离了显示和内容,明确了角色的定义以及实现了开发者与网页设计者的分开。项目越复杂,使用Model 2体系结构的优势就越突出。 3.简述JSP开发Web站点的主要方式。 答:JSP开发Web站点主要有以下几种方式。

JSP程序的设计期末试卷A题目和答案

JSP 程序设计期末考试试卷(A 卷) 专业 级 JSP 程序设计 课程 . . A. .jps B. .jsp C. .java D. .JSP 2.在JSP 中如果要导入 java.io.* 包,应该使用( A )指令。 A. page B. taglib C. include D. forward 3.如果当前JSP 页面出现异常时需要转到一个异常页,需要设置page 指令的( D)属性。 A. Exception B. isErrorPage C. error D. errorPage 4.JSP 中的隐式注释为( C )。 A. // 注释内容 B. C. <%--注释内容--%> D. /* 注释内容 */ 5.使用response 对象进行重定向时使用的方法为( B )。 A.getAttribute( ) B. sendRedirect( ) C. setContentType( ) D. setAttribute( ) 6.如果把用户名变量UserName 放在session 对象中,下面语句正确的是( D) A.session.setName(UserName) B. session.setName(“name ”,UserName) C. session.setAttribute(UserName) D. session.setAttribute(“name ”,UserName) 7.在JSP 中,test.jsp 文件中有如下一行代码: 要使user 对象中一直存在于对话中,直至其终止或被删除为止,下划线中应填入( C )。 A.page B.request C.session D.application 8.在JSP 中,使用动作可以将javaBean 嵌入JSP 页面, 对JavaBean 的访问范围不能是( C )。 A. page B. request C. response D. application

相关主题
文本预览
相关文档 最新文档