JSP技术学习总结报告
JSP技术是由SUN公司所倡导、众多公司参与建立的一种动态技术标准,它基于JAVA技术,具有良好的可伸缩行,与Java Enterprise API紧密结合,在网络数据库应用开发方面有着得天独厚的优势,具有广阔前景。
实训
实训一:forward动作
目的:根据客户端所发出的请求,从一个JSP页面转交给另一个JSP页面。
代码:
<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<form name="form1" action="myforward.jsp" method="post" >
程序示例链接:
<select name="goaddress" onchange="javascript:form1.submit()">
<option value="novalue"></option>
<option value="1">第一个页面</option>
<option value="2">第二个页面</option>
<option value="3">第三个页面</option>
</select>
</form>
<%// forward应用示例Java程序片
String s=null;
s=request.getParameter("goaddress");
if(s!=null)
{ switch(s.charAt(0))
{ case '1':%>
<jsp:forward page="top.html"/>
<%break; case '2':%>
<jsp:forward page="bottom.html"/><%
break;case '3':%>
<jsp:forward page="includeSample.jsp"/><%
break;default:
out.println("您没有选择。");}}
else
out.println("您没有选择。");%>
</body>
</html>
结果:
实训二:application对象的应用
目的:使用application对象设计一个简单的计数器。
代码:
<%@ page contentType="text/html;charset=gb2312"%>
<%Integer count =null;
synchronized(application)//同步处理
{//从内存当中读取访问量
count=(Integer)application.getAttribute("basic.counter");
if (count==null)//测试一个application属性是否已经存在。
count=new Integer(0);
count=new Integer(count.intValue()+1);
application.setAttribute("basic.counter",count);//将访问量保存到内存当中
}%>
<html>
<head>
<title>简单计数器</title>
</head>
<body>
<center><font size=10 color=blue>简单计数器<br></font><font size=5 color=blue>您好!您是本站的第<%=count%>位客人</font>
</center>
</body>
</html>
结果:
实训三:数据库的连接及访问
数据库:student
表:student表、score表
1访问数据库
目的:实现数据库访问 ,并显示访问者信息
环境配置:
代码:
<!--jspodbc.jsp-->
<%@ page contentType="text/html;charset=gb2312"import="java.sql.*" %>
<html>
<head>
<title>访问SQL Server数据库</title>
</head>
<body>
<h2 align="center">访问SQL Server数据库</h2>
<hr>
<% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
out.println("数据库驱动注册成功!<br>");
String url="jdbc:odbc:jspdb";
String user="sa";
String password="sa";
Connection conn= DriverManager.getConnection(url,user,password);
out.println("数据库连接成功!<br><hr>");
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
String sql="select * from student";
ResultSet rs=stmt.executeQuery(sql);
rs.first();%>
学生编号:<%=rs.getObject("stud_id")%><br>
学生姓名:<%=rs.getObject("name")%><br>
出生年月:<%=rs.getObject("birthday")%><br>
家庭住址:<%=rs.getObject("home")%><br>
电话:<%=rs.getObject("tel")%><br>
学历:<%=rs.getObject("resume")%><br>
<hr>
数据库访问成功! <br><%
rs.close(); //关闭rs
stmt.close(); //关闭stmt
conn.close(); //关闭conn%>
数据库已关闭!
</body></html>
结果:
2 连接数据库并查询学生成绩
目的:根据输入的学生姓名,查询出该生的学习成绩并在页面输出。
(1) 编写jsp页面,实现输入学生姓名。
代码:
<%@ page contentType="text/html;charset=GB2312" %>
<html>
<body>
<font size=1>
<form action="searchName.jsp" Method="post">
<P>成绩查询
<P>输入姓名:
<Input type=text name="name">
<Input type=submit name="g" value="提交">
</form>
</body>
结果:
(2) 写jsp页面,实现查询给定的学生成绩并显示。
代码:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<HTML>
<BODY bgcolor=pink ><Font size=1>
<%
String number=request.getParameter("number");
if(number==null){
number="";
}
String name=request.getParameter("name");
if(name==null){
name="";
}
byte c[]=name.getBytes("ISO-8859-1");
name=new String(c);
String math=request.getParameter("math");
if(math==null){math="-100"; }
String english=request.getParameter("english");
if(english==null){english="-100"; }
String physics=request.getParameter("physics");
if(physics==null){physics="-100"; }
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch(ClassNotFoundException event){}
try{
con=DriverManager.getConnection("jdbc:odbc:jspdb","sa","sa");
stmt =con.createStatement();
String condition="insert into score values(?,?,?,?,?)";
PrepareStatement pstmt = con.prepareStatement(condition);
pstmt.setString(1,number);
pstmt.setString(2,name);
pstmt.setString(3,math);
pstmt.setString(4,physics);
pstmt.setString(5,english);
pstmt.executeUpdate();
pstmt.close();
%>
<P>添加新记录后的表:
<%
rs=stmt.executeQuery("select * from score order by number");
out.print("<Table Border>");
out.print("<TR>");
out.print("<TH width=100>"+"学号");
out.print("<TH width=100>"+"姓名");
out.print("<TH width=50>"+"数学成绩");
out.print("<TH width=50>"+"物理成绩");
out.print("<TH width=50>"+"英语成绩");
out.print("</TR>");
while(rs.next()){
out.print("<TR>");
String n=rs.getString(1);
out.print("<TD >"+n+"</TD>");
String xingming=rs.getString(2);
out.print("<TD >"+xingming+"</TD>");
int intMath=rs.getInt("math");
out.print("<TD >"+intMath+"</TD>");
int intPhysics=rs.getInt("physics");
out.print("<TD >"+intPhysics+"</TD>");
int intEnglish=rs.getInt("english");
out.print("<TD >"+intEnglish+"</TD>");
out.print("</TR>") ; }
out.print("</Table>");
rs.close();
stmt.close();
con.close(); }
catch(SQLException event){ out.print(event.getMessage());}
%>
</FONT>
</BODY>
</HTML>
结果:
体会:
一次难忘的实训结束了。这次实训不仅让我的能力有了很大的提高,更重要的是,它让了解到自学的重要,了解到以后该注意什么。离开了学校,就要步入社会,这次实训给了我们提高了个缓冲的余地,了解到现实的社会,了解到企业,了解到以前在学校无法体会的方方面面。体会到程序员的不容易,体会到工作的不容易。但也正因为本次实训,使我们更有信心面对以后的工作,以后的生活。“一分付出,一分收获”,只要努力了,总会有收获的。所以,我有信心面对以后的工作,以后的生活。在此再次感谢全组人员与指导老师的帮助,是你们,让我进步,让我成长。相信自己,相信未来,明天会更好。
最后,通过本次实训使我学到很多东西,便于今后让我提早进入工作状态。因为我知道无论是今后的学习还是日后的工作生活中,我会清楚的知道自己想要做什么、如何做和怎样才能把它做到最好。
企业信息管理系统概述一企业信息管理需求分析1登录页面模块登录页面模块功能如下对登录页面进行设置要求输入用户名和密码正确之后才可登录…
一实习目的通过JSP的学习掌握编写在线网上购书系统连接SQLserver数据库掌握在线购物系统的需求分析系统设计代码编写和测试以及…
武汉职业技术学院计算机与软件工程学院JSP实训报告武汉职业技术学院计算机与软件工程学院JSP课程设计报告题目网上购物车指导教师钱宇…
西安航空职业技术学院实验设计用纸西安航空职业技术学院课程课程设计说明书设计题目专业班级学号姓名指导教师20xx年6月第1页共17页…
天津电子信息职业技术学院暨国家示范性软件职业技术学院题目姓名系别专业网站规划与开发技术班级指导教师设计时间动态网页编程实训Ipho…
一、实训项目简易记事本二、实训目的和要求本次实训是对前面学过的所有面向对象的编程思想以及JAVAWEB编程方法的一个总结、回顾和实…
天津电子信息职业技术学院暨国家示范性软件职业技术学院题目姓名系别专业网站规划与开发技术班级指导教师设计时间动态网页编程实训Ipho…
企业信息管理系统概述一企业信息管理需求分析1登录页面模块登录页面模块功能如下对登录页面进行设置要求输入用户名和密码正确之后才可登录…
计算机与信息工程学院jsp数据库系统原理实验报告一实验目的一个学生成绩管理系统能够实现对学生老师基本信息课程信息成绩信息的管理学生…
1苏州市职业大学实习实训报告名称JSP商务网站设计实训年月日至年月日共1周学院部计算机工程学院班级12网络技术2班学号126308…