您好,欢迎来到宝玛科技网。
搜索
您的当前位置:首页JSP实验指导书

JSP实验指导书

来源:宝玛科技网


目 录

试验一:熟悉JSP开发环境1 .......................................................... 2 试验二:熟悉JSP开发环境2 .......................................................... 3 试验三:熟悉jsp代码编写方式 ...................................................... 4 试验三:基本内置对象的使用(application,session,out) ............ 4 试验四:基本内置对象的使用(request,execption) .................... 5 试验五:页面信息跟踪传递 ............................................................ 6 试验六:JavaBean使用 .................................................................... 8 试验七:数据库基本访问处理 ...................................................... 10 试验八:数据库连接池使用 .......................................................... 11 试验九:Struts基本结构 ............................................................... 12 试验十:Struts文件上传 ............................................................... 14 试验十一:Hibernate基本支持 ..................................................... 18

试验一:熟悉JSP开发环境1

一 实验目的:

1. 熟悉JSP开发环境。 二 实验内容:

安装JDK,Tomcat,MyEclipse/Eclipse,并建立一个简单Web应用且发布测试。 三 实验步骤: 1. 安装JDK; 2. 安装Tomcat;

3. 安装MyEclipse或Eclipse;

4. 建立一个Web应用,在index.jsp中显示“您好,这是我的第一个JSP站点。”; 5. 发布测试。 四 主要代码:

1. index.jsp页面代码:

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

My JSP 'index.jsp' starting page   

 您好,这是我的第一个JSP站点。
 

试验二:熟悉JSP开发环境2

一 实验目的:

1. 熟悉基本web工程的创建以及基本的jsp页面的建立和代码的编写。 二 实验内容:

建立一个Web应用,在主页面实现登录见面,在其中输入用户名,密码,发送到登录验证页面,登录成功,显示成功提示,登录失败,显示失败页面。 三 实验步骤: 1. 设计登录见面; 2. 编写登录处理代码; 3. 编写成功提示页面; 4. 编写失败提示页面。 四 主要代码:

1. index.jsp页面代码:

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

登录…   



 

2. login.jsp代码:  <%

 String username=request.getParameter(\"username\");  String userpwd=request.getParameter(\"userpwd\"); 

if(username.trim().equals(\"test\")&&userpwd.trim().equals(\"123\"))  { %>

 <%}else{ %>

 <%} %>

试验三:熟悉jsp代码编写方式

一 实验目的:

2. 熟悉基本jsp代码编写方式。 二 实验内容:

建立一个Web应用,在主页面写入一段java代码,实现服务器系统时间获取功能。 三 实验步骤: 5. 设计登录见面; 6. 编写登录处理代码; 7. 编写成功提示页面; 8. 编写失败提示页面。 四 主要代码:

3. index.jsp页面代码:

4. <%@ page language=\"java\" import=\"java.util.*\" pageEncoding=\"UTF-8\"%> 5. 6. 7.

8. 登录… 9. 10. 11.

12.

13.

14.
15.

16.
17. 18.

19. 20.

试验三:基本内置对象的使用(application,session,out)

一 实验目的:

1. 熟悉application,session,out等常用对象的使用方法。 二 实验内容:

1. 建立一个Web应用,在主页面实现登录见面,在其中输入用户名,密码,发送到登录

验证页面,登录成功,显示成功提示,登录失败,显示失败页面。

2. 在登录成功之后,在成功页面中显示当前站点的被访问的次数,如果同一用户已经登录,

多次刷新此页面,不重计数。 三 实验步骤:

1. 在成功页面中增加计数处理代码。 四 主要代码:

<%//10秒后一个session自动失效,也就是10秒后再次刷新页面认为是一次新的登录。//获取系统生成的会话id。 String userSessionId=session.getId(); String storedSessionId=(String)session.getAttribute(\"storedSessionId\"); //站点访问次数处理 //如果以前没有用户访问,此次为第一次访问,则设置计数器值为1 if(application.getAttribute(\"webVisitedCount\")==null){ application.setAttribute(\"webVisitedCount\session.setAttribute(\"storedSessionId\ out.println(\"欢迎,您是第1位访客!\"); } else{ //如果以前已有用户访问,则根据次用户是新登录用户还是已经登录的用户决定是否计数。 if(!userSessionId.trim().equals(storedSessionId)) { //新登录用户,则进行一次新的计数,计数值增加1。 int i = } i++; application.setAttribute(\"webVisitedCount\ session.setAttribute(\"storedSessionId\ out.println(\"欢迎,您是第\"+i+\"位访客!\"); } else { //登已经登录用户,不计数。 int i = out.println(\"欢迎,您是第\"+i+\"位访客!\"); } Integer.parseInt((String)application.getAttribute(\"webVisitedCount\")); Integer.parseInt((String)application.getAttribute(\"webVisitedCount\")); %>

试验四:基本内置对象的使用(request,execption)

一 实验目的:

1. 熟悉request,execption等常用对象的使用方法。 二 实验内容:

1. 在工程中增加一个页面,在页面中实现加减乘除的运算页面,并实现运算结果的计算显

示功能。

三 实验步骤:

1. 实现加减乘除的运算页面; 2. 实现运算结果的计算显示功能。 四 主要代码:

计算测试


运算数1:
运算数2:


<%

double num1=0.0; double num2=0.0;

double result=0.0;

if(request.getParameter(\"num1\")!=null)num1=Double.parseDouble(request.getParameter(\"num1\"));

if(request.getParameter(\"num2\")!=null)num2=Double.parseDouble(request.getParameter(\"num2\"));

String operation=request.getParameter(\"operation\"); if(operation!=null) {

if(operation.trim().equals(\"+\")) {result=num1+num2; }

if(operation.trim().equals(\"-\")) {result=num1-num2; }

if(operation.trim().equals(\"*\")) {result=num1*num2; }

if(operation.trim().equals(\"/\")) {result=num1/num2; }

out.write(\"

\"+num1+operation+num2+\"=\"+result+\"

\"); } %>

试验五:页面信息跟踪传递

一 实验目的:

1. 熟悉URL方式信息跟踪; 2. 熟悉COOKIE方式信息跟踪; 3. 熟悉SESSION方式信息跟踪。 二 实验内容:

1. 在工程中增加一个页面,在页面分别添加URL方式信息跟踪、COOKIE方式信息跟踪和

SESSION方式信息跟踪。

三 实验步骤:

1. 增加信息跟踪主页面;

2. 增加URL方式信息跟踪页面; 3. 增加COOKIE方式信息跟踪页面; 4. 增加SESSION方式信息跟踪页面。 四 主要代码: traceInfo.jsp

页面信息共享,跟踪!


<% session.setAttribute(\"username\",\"Mike\"); Cookie cookie=new Cookie(\"username\",\"Mike\"); response.addCookie(cookie); %> URL方式信息跟踪
COOKIE方式信息跟踪
SESSION方式信息跟踪

urlInfo.jsp

URL方式信息跟踪


<% String username=request.getParameter(\"username\"); out.write(\"

\"+username+\"

\"); %> cookieInfo.jsp

COOKIE方式信息跟踪


<% Cookie[] cookies=request.getCookies(); String username=null; for(int i=0;i\"+username+\"\"); %>

sessionInfo.jsp

SESSION方式信息跟踪


<% String username=(String)session.getAttribute(\"username\"); out.write(\"

\"+username+\"

\"); %>

试验六:JavaBean使用

一 实验目的:

1. 熟悉的基本定义格式以及在页面的中的使用方法。 二 实验内容:

1. 在工程中增加一个页面,在页面中显示一个用户名密码输入表单,输入用户名、密码然

后使用JavaBean测试,并显示测试结果。

三 实验步骤:

1. 实现输入表单页面; 2. 实现JavaBean功能;

3. 进行测试代码编写。 四 主要代码:

package mypackage;//JavaBean基本代码 public class CheckUserBean { private String userName=null; private String userPwd=null; public String getUserName() { }

public void setUserName(String userName) {this.userName = userName;} public String getUserPwd() {return userPwd;}

public void setUserPwd(String userPwd) {this.userPwd = userPwd;} public boolean isValid()

{ if(userName!=null&&userPwd!=null) }

{ } else

{return false;}

if(userName.trim().equals(\"user\")&&userPwd.trim().equals(\"123\")) {return true;} else

{return false;} return userName;

}

页面基本代码

输入合法用户:


用户: 密码:

class=\"mypackage.CheckUserBean\"/>

测试结果:<%=testBean.isValid() %>

试验七:数据库基本访问处理

一 实验目的:

1. 熟悉JSP页面中数据库连接的基本处理方法,参数的基本设置。 2. 熟悉基本的SQL语句的使用。 二 实验内容:

1. 在mysql数据库中创建一个数据库test,在其中创建一张表user,表中添加字段:

name,pwd。

2. 建立工程,并创建页面test.jsp,在页面中实现数据库中信息的显示。 三 实验步骤: 四 主要代码:

<%

String SDriver=\"com.mysql.jdbc.Driver\";

String

String Suser=\"root\";

SConnstr=\"jdbc:mysql://localhost:3306/test?characterEncoding=utf-8\"; String Spwd=\"root\"; Connection con=null; try {

Class.forName(SDriver);

con=DriverManager.getConnection(SConnstr,Suser,Spwd);

e.printStackTrace();

} catch (ClassNotFoundException e) { }

PreparedStatement ps=con.prepareStatement(\"select * from user\"); ResultSet rs=ps.executeQuery();

if(rs!=null) {

while(rs.next())

{out.write(\"\"Name:\"+rs.getString(\"name\")+\+rs.getString(\"pwd\")+\"
\"); }

}

rs.close(); ps.close(); con.close();

}

试验八:数据库连接池使用

一 实验目的:

3. 熟悉JSP页面中数据库连接的基本处理方法,参数的基本设置。 4. 熟悉基本的SQL语句的使用。 二 实验内容:

3. 在mysql数据库中创建一个数据库test,在其中创建一张表user,表中添加字段:

name,pwd。

4. 建立工程,并创建页面test.jsp,在页面中实现数据库中信息的显示。 三 实验步骤: 四 主要代码:

<%

String SDriver=\"com.mysql.jdbc.Driver\";

String

String Suser=\"root\";

SConnstr=\"jdbc:mysql://localhost:3306/test?characterEncoding=utf-8\"; String Spwd=\"root\"; Connection con=null; try {

Class.forName(SDriver);

con=DriverManager.getConnection(SConnstr,Suser,Spwd);

e.printStackTrace();

} catch (ClassNotFoundException e) { }

PreparedStatement ps=con.prepareStatement(\"select * from user\"); ResultSet rs=ps.executeQuery();

if(rs!=null) {

while(rs.next())

{out.write(\"\"Name:\"+rs.getString(\"name\")+\+rs.getString(\"pwd\")+\"
\"); }

}

rs.close(); ps.close(); con.close();

}

server.xml

context.xml

试验九:Struts基本结构

一 实验目的:

5. 掌握Struts2支持的基本配置。 二 实验内容:

建立一个基本的工程,添加Struts2支持。 三 实验步骤: 四 主要代码:

Web.xml中的Struts2支持

struts2

org.apache.struts2.dispatcher.FilterDispatcher

struts2 /*

Struts.xml配置

\"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN\" \"http://struts.apache.org/dtds/struts-2.0.dtd\">

value=\"false\" />

/index1.jsp /index2.jsp /index.jsp

/login/main.jsp /login/login.jsp

1048576

/upload/result.jsp /upload/result.jsp

package test;

public class MainPageAction { private int id;

public String execute() { String result=\"error\";

public int getId() { }

public void setId(int id) { } }

this.id = id; return id;

if(id==1) result=\"page001\"; if(id==2) result=\"page002\"; return result;

}

试验十:Struts文件上传

一 实验目的:

6. 掌握Struts2支持的基本配置,文件上传。 二 实验内容:

建立一个基本的工程,添加Struts2支持。 三 实验步骤: 四 主要代码:

Web.xml中的Struts2支持

struts2

org.apache.struts2.dispatcher.FilterDispatcher

struts2 /*

Struts.xml配置

\"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN\" \"http://struts.apache.org/dtds/struts-2.0.dtd\">

value=\"false\" />

/index1.jsp /index2.jsp /index.jsp

/login/main.jsp /login/login.jsp

1048576

/upload/result.jsp /upload/result.jsp

文件上传主要代码 package test;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;

import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File;

import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.util.*;

public class UploadFileAction {

private static final long serialVersionUID = 572146812454l ; private static final int BUFFER_SIZE = 16 * 1024 ;

private File myFile;

private String contentType; private String fileName;

private String currentFileName;

public void setMyFileContentType(String contentType) { this .contentType = contentType; }

public void setMyFileFileName(String fileName) { this .fileName = fileName; }

public void setMyFile(File myFile) { this .myFile = myFile; }

try {

InputStream in = null ; OutputStream out = null ; try {

in = new BufferedInputStream( new FileInputStream(src), out = new BufferedOutputStream( new byte [] buffer = new byte [BUFFER_SIZE]; while (in.read(buffer) > 0 ) { out.write(buffer); } } finally {

if ( null != in) { in.close(); }

if ( null != out) { out.close(); } }

} catch (Exception e) { e.printStackTrace(); } }

private static String getExtention(String fileName) { int pos = fileName.lastIndexOf( \".\" ); return fileName.substring(pos); }

private static void copy(File src, File dst) {

BUFFER_SIZE);

FileOutputStream(dst), BUFFER_SIZE);

Calendar calendar = Calendar.getInstance(); currentFileName = new Date().getTime() + public String execute(){

getExtention(fileName);

if(myFile!=null) {

File cFile = new

File(ServletActionContext.getServletContext().getRealPath(\"/upload\") + \"/\"+ currentFileName); }

copy(myFile, cFile); return \"success\"; } else {

return \"error\"; } }

试验十一:Hibernate基本支持

一 实验目的:

7. 掌握Hibernate基本支持的基本配置。 二 实验内容:

建立一个基本的工程,添加Hibernate基本支持。 三 实验步骤:

1. 使用MyEcllipse的自动支持增加功能向导,实现基本支持的设置; 2. 使用Hibernate反转功能实现ORM处理; 3. 建立基本访问页面。 基本代码: <%

Session hsession=HibernateSessionFactory.getSession(); Query q=hsession.createQuery(\"from TStud\"); List list=q.list();

Iterator it=list.iterator(); while(it.hasNext())

{TStud stud=(TStud)it.next();

out.println(\"代码:\"+stud.getId()+\姓名:\"+stud.getName()+\班级:\"+stud.getTClass().getClassName()+\"
\"); }

hsession.close(); %>

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务