Web程序设计JSP实验文档格式.docx

上传人:b****2 文档编号:4602353 上传时间:2023-05-03 格式:DOCX 页数:38 大小:730.75KB
下载 相关 举报
Web程序设计JSP实验文档格式.docx_第1页
第1页 / 共38页
Web程序设计JSP实验文档格式.docx_第2页
第2页 / 共38页
Web程序设计JSP实验文档格式.docx_第3页
第3页 / 共38页
Web程序设计JSP实验文档格式.docx_第4页
第4页 / 共38页
Web程序设计JSP实验文档格式.docx_第5页
第5页 / 共38页
Web程序设计JSP实验文档格式.docx_第6页
第6页 / 共38页
Web程序设计JSP实验文档格式.docx_第7页
第7页 / 共38页
Web程序设计JSP实验文档格式.docx_第8页
第8页 / 共38页
Web程序设计JSP实验文档格式.docx_第9页
第9页 / 共38页
Web程序设计JSP实验文档格式.docx_第10页
第10页 / 共38页
Web程序设计JSP实验文档格式.docx_第11页
第11页 / 共38页
Web程序设计JSP实验文档格式.docx_第12页
第12页 / 共38页
Web程序设计JSP实验文档格式.docx_第13页
第13页 / 共38页
Web程序设计JSP实验文档格式.docx_第14页
第14页 / 共38页
Web程序设计JSP实验文档格式.docx_第15页
第15页 / 共38页
Web程序设计JSP实验文档格式.docx_第16页
第16页 / 共38页
Web程序设计JSP实验文档格式.docx_第17页
第17页 / 共38页
Web程序设计JSP实验文档格式.docx_第18页
第18页 / 共38页
Web程序设计JSP实验文档格式.docx_第19页
第19页 / 共38页
Web程序设计JSP实验文档格式.docx_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Web程序设计JSP实验文档格式.docx

《Web程序设计JSP实验文档格式.docx》由会员分享,可在线阅读,更多相关《Web程序设计JSP实验文档格式.docx(38页珍藏版)》请在冰点文库上搜索。

Web程序设计JSP实验文档格式.docx

选择Myjsp项目,并单击Add,弹出ProjectDeployments对话框,

在对话框中,选择server为Tomcat6.x,并单击Finish

■运行测试

■启动Tomcat6.x

■运行JSP文件

浏览器中输入:

http:

〃localhost:

8080/Myjsp/firstJsp.jsp

3.编写一个JavaScript程序,在JSP页面上输出当前日期。

实验二JSP语法的应用

实验内容和要求:

1.实现客户在一个登录页面form,jsp(如图2-1)输入登录信息并单击“确定”后跳转

到另一个页面doForm.jsp(如图2-2)输出“用户名”和“口令”信息。

用户名:

密码:

图2-1

abc口令;

123

图2-2

要求:

分别用下列三种方法实现。

(1)创建一个JavaBeanUser类,该类含有两个属性username和password,给每个属

性增加相应的get和set方法。

在doForm.jsp页面中用<jsp:

useBean>动作标识实例化User类对象,再使用<jsp:

setProperty>动作标识来把客户在form,jsp表单中填写的值赋给对象,最后用〈jsp:

getProperty>在页面输出结果。

(2)创建一个JavaBeanUser类,该类含有两个属性username和password,给每个属

在doForm.jsp页面中采用Java以jsp脚本代码(scriptlet)方式实例化User类对象,用setAttribute()函数把对象写入request或session中,再使用<jsp:

setProperty>动作标识来把客户在form,jsp表单中填写的值赋给对象,最后用jsp表达式的方式把对象的信息输出到页面中。

(3)不创建JavaBeanUser类。

在doForm.jsp页面中用getParameter()来获取客户在

form,jsp表单中填写的值,最后输出相关信息。

实验三JSP内置对象的应用

对实验二的内容进行扩展,必须实现以下4个jsp文件,采用jsp+JavaBean实现。

(1)login,jsp:

登录页面,如图2T所示。

(2)doLogin.jsp(无界面):

登录处理页面,假定正确的用户名为admin,口令为123。

如果用户名和口令不正确则显示登录错误信息,否则登录成功后,

重定向到messageBoard.jsp(留言板页面),可以进行留言。

(3)messageBoard.jsp:

留言板页面,能实现如图3T所示的留言。

▼|贮一http:

"

Whost:

T今c]百度搜索

文件®

I编辑⑥查看的收藏夹R)工具①帮助®

\100%

/

图3-1

(4)showMessage.jsp:

显示留言信息页面,如图3-2所示。

该页面能显示留言者(必须为login.jsp页面中输入的用户名)、标题和内容,要求能正确显示图3T所示的留言内容。

提示:

留言者的用session保存

图3-2

实验四Servlet的应用

用Servlet来完成实验三的所有任务,即先登录,然后留言,再显示留言。

采用JSP+JavaBean+Servlet开发模式。

实验步骤如下:

1.创建登录页面login.jsp

pagelanguage="

java"

import="

ja\autil.★“pageEncoding="

gb23I2飞〉

<

html>

head>

<

/head>

body>

formaction=vDoLoginf,method=Hget**>

!

―注意此处设为get方法一>

inputtype="

text"

name=Husername7>

br>

口令:

inputtype=^password,"

name=npassword

inputtype=value="

提交

inputtype=Hreset"

value="

重置7>

/form>

/body>

/html>

2.创建处理登录的Servlet:

DoLogin.java,过程如下:

选择项目中src文件夹,NewServlet,弹出CreateanewServlet对话框.设置如下(05为项目名称)

单击next后,见下图,只对Servlet/JspMappingURL:

作如下修改,单击finish.

此时,web.xml中应存在如下Servlet配置信息:

servlet>

description>

ServletExainple<

/description>

display-name>

firstServ1et<

/disp1ay-name>

servlet-name>

DoLogin<

/servlet-name>

servlet-class>

servlet.DoLogin<

/servlet-class>

/servlet>

serv1et-mapping>

servlet-naine>

url-pattern>

/DoLogin<

/url-pattern>

/servlet-mapping>

其中,<

url-pattern〉/DoLogin〈/url-pattern>

行表明❷该Servlet可以用这个URL访问,http:

//localhost:

8080/05/DoLogin

DoLogin.java代码如下

packageservlet;

import

java.

o.lOException;

o.PrintWriter;

javax

servlet.ServletException;

seiwlet.http.HttpServlet;

servlet.http.HttpServletRequest;

servlet.http.HttpServletResponse;

servlet.http.HttpSession;

publicclassDoLoginextendsHttpServlet{

〃因为登录表单是以get方式提交的,所以重写doGet方法,运行时调用此方法

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,lOException{

StringuserName=request.getParameter(nusernamew);

//获圾回户名

HttpSessionsession=request.getSessionO;

session.setAttribute(Mnamew,userName);

〃用户名写入session,显示留言时(showMessage.jsp)需要

Sti'

ingpassword=request,getParameter(*'

passwordw);

/获号工口令

if(userName.equals(MadminM)&

&

passWord.equals("

123"

))〃用户名和密码正确

response.sendRedirectCmessageBoard.jsp"

);

//重定向到留言页面

else

response.sendError(500,"

登陆错误,用户名或密码不正确!

);

3.创建留言页面messageBoard.jsp

?

二卷pagecontentType=ntext/html;

charset=gb2312%>

formaction=^DoMessage'

9method="

postX、一注意此处设为post方法一〉

tableborder=nl"

rules=ffrows

trheight—

td>

留言标题:

/td>

inputtype=°

text"

name="

title”size="

35个<

/tr>

tr>

留言内容:

textareaname="

contentHrows=cols=H34fl>

/textareaX/td>

tralign=Hcentervheight="

3。

>

tdcolspan=

suZ汹〃"

value="

提交,

inputtype=Hreset*value="

直爱》

/table>

/fonn>

4.创建值JavaBean:

Message,java同代码3-5

5.创建工具JavaBean:

Mytools.java同代码3-6

6.创建处理留言的Servlet:

DoMessage.java,如下图:

publicclassDoMessageextendsHttpServlet{

〃因为留言信息是以post方式提交的,所以重写doPost方法,运行时调用此方法

publicvoiddoPost(HttpServletRequestrequest.HttpSeiwletResponseresponse)throwsServletException,lOException{

bean.valuebean.Messagemessage=newbean.valuebean.Message();

message.setTitie(request,getParameter(wtitlen));

/保存留言标题

message.setContent(request.getParameter(^contentM));

//保存琦t:

内容

request.setAttribute(MmsgM,message);

〃将对象message保存到request中

〃下面2行实现转发到showMessage.jsp

RequestDispatcherdispatcher=request.getRequestDispatcher(^showMessage.jsp"

dispatcher,forward(request,response);

})

7.创建显示留言页面showMessage.jsp

%@pagecontentType=ntext/html:

%@pageimport=Hbean.toolbean.MyTools%>

%@pageimport=nbean.valuebean.Message

Messagemessage=(Message)request.getAtti'

ibute(wmsgn);

%>

〈title)显示留言信息

留言者:

%=session.getAttribute(wnamen)%>

留言标题:

%=MyTools.change(message.getTitleO)%>

留言内容:

%=MyTools.change(message.getContent())%>

实验五JSP访问数据库的应用

实验要求:

采用JSP+Servlet+JavaBean架构,设计通过下列JSP页面访问数据库(如表5-1),具体要求如下:

1.添加用户页面(AddUser.jsp),如图5T所示;

2.删除用户页面(Delete,jsp),如图5T所示;

3.查找和修改用户页面(SearchAndModify.jsp),如图5-3所示。

图5-1添加用户页面

图5-2删除用户页面

|n|x|

个查11^]修改用户-YindovsInternetExplorer

▼[园]http:

8CB0/WyJsp/SearchAndModi£

yjsp

文件⑥编辑也)查看9收藏夹@)工具①帮助国)

查询和修改用户

输入查询的用户名:

的lEWEI

第入.亏户名后,里吉登这三户,找到见在下面复示结果,否史显示三户不考在

I

密码:

II

修改用户只允许整改专户匚令,因亏户名为关金宝

图5-3查询和修改用户页面

1.准备需要访问的数据库

■下载并安装MySQL5.0

■CopyMySQL5.0驱动mysql-connector-java-5.0.8-bin.jar到%丁0\£

八丁%\1诂文件夹下

■创建数据库及表:

数据库的设计如下表:

数据库采用MySQL5.0,数据库名:

db,表名:

user(用户表)

表57数据库的用户表

序号

列名

数据类型

长度

主键

允许空

默认值

说明

1

username

varchar

40

用户名

2

password

口令

创德过程如下:

(可选择使用MySQL的数据库管理和开发工具Navicat和MySQL-Front等)Stepl:

进入MySQL程序的MySQLCommandLineClient界面,如下图所示

分别执行下列命令:

〃支持中文

①创建数据库:

CREATEDATABASE

CHARACTERSET%tf8'

COLLATE'

utf8__general_cir;

USEDB;

②速表:

CREATETABLE'

users、(

username'

varchar(20)NOTNULLPRIMARYKEY.

password'

varchar(20)

)ENGINE=InnoDBDEFAULTCHARSET=utf8;

2.开发过程如下:

创建值JavaBean:

User.java,内容如下:

packagevalueBean;

publicclassUser{

privateStringusername;

//用户名

privateStringpassword;

//口令publicUserO(

this.username=*n;

this.password/"

}

publicvoidsetUsername(Stringusername){this.username=username;

publicStringgetUsernameO{returnusername;

publicvoidsetPassword(Sti'

ingpassword){this.password=password;

publicStringgetPasswordO{

returnpassword;

创建访问数据库的类一AccessUserFromDB.java,内容如下:

packagetoolBean.db;

importjava.sql.*;

importvalueBean.User;

publicclassAccessUserFromDB{

privatestaticConnectionconn=null;

privatestaticStatementstmt=null;

〃构造函数中完成对数据库进行初始化

publicAccessUserFromDB(){

〃创建连接

conn=this.getConnectionO;

try{

〃创建Statement

stmt=conn.createStatement();

}catch(SQLExceptione){

e.printStackTraceO;

〃将对象user添加到表中

publicvoidAdd(Useruser)throwsSQLException

{

Stringsql=uINSERTINTOuser(username,password)VALUES,"

+user.getUsername()+M*M+user.getPassword()+MM;

stmt.executeUpdate(sql);

〃根据用户名(关键字)从数据库删除相应的记录

publicvoidDelete(Stringusername)throwsSQLException

Stringsql=nDeleteFromuserWhereusername='

+username+"

'

stmt.executeUpdate(sql);

〃修改数据库中的user

publicvoidUpdate(Useruser)throwsSQLException

Stringsql=,rUPDATEusersetpassword:

+user.getPassword()+r,*whereusername=,M+user.getUsername()+r,stmt.executeUpdate(sql);

〃根据用户名称(关键字)从数据库中查找记录,并将找到的记录写入对象user中返回publicUsersearchByUsername(Stringusername)throwsSQLException

Useruser=newUser();

Stringsql=,,select*fromuserwhereusername=ru+username+Mr0;

ResultSetrs=stmt.executcQuery(sql);

while(rs.next())

Stringname=rs.getString(MusernameM);

if(name,equals(username))

〃将从数据库查找得到的记录存入对象user中

user.setUsername(name);

user.setPassword(rs.getString(°

password°

));

if(rs!

=null)

rs.close();

returnuser;

returnnull;

〃查找不到返回null

〃根据用户判断该记录是否存在

publicbooleanexists(Stringusername)

booleanrtn=false;

if(searchByUsername(username)!

=nul1)

rtn=true;

(catch(SQLExceptione){

e.printStackTrace();

returnrtn;

/〃建立与数据的连接

privateConnectiongetConnectionO

StringdriverClass=,,com.mysql.jdbc.Driver0;

Stringurl=〃与创建数据库的代码结合,保证访问数据库时不出现乱码ujdbc:

mysql:

//localhost:

3306/db?

useUnicode=true&

characterEncoding=UTF-8,F;

Stringusername="

root"

Stringpassword="

try)

Class.forName(driverClass);

//加载数据库驱动

}catch(ClassNotFoundExceptione){

conn=DriverManager.getConnection(ur1,username,password);

〃建立连接}catch(SQLExceptione){

System,out.print("

数据库连接失败!

”);

returnconn;

〃关闭与访问数据库有关连接

protectedvoidfinalize()

if(stmt!

stmt.close(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2