(信息工程系)
综合实训总结报告
课程名称: 企业网站综合实训
实训课题: 网站设计与实现
姓 名:______ 杨 静
班 级:_ __ _ 10 计算机应用
学 号:______ _ 201019007
指导教师:______ 刘永志
实训时间:_ _20##-2013 学年第一学期
一、实训目标
1、知识目标:
(1)熟练掌握JSP程序基本流程;
(2)熟练掌握JDBC及SQL语句;
(3)熟练掌握JSP的常用内置对象的使用;
(4)掌握JavaBean的使用;
(5)理解Ajax的使用;
2、技能目标:
(1)编程的良好习惯;
(2)软件调试和测试的能力;
(3)查阅文献的能力。
二、实训环境
l、硬件环境:
(1)PC机;
(2)软件环境:WindowsXP、SQL Server 2000(Acess 2000)、JDK1.5,Tomcat,JCreator。
三、实训内容
JSP综合实训
四、实训步骤
1. 数据库设计
登录表如表1.1所示:
表1.1 登录表(stu1)
新闻表如表1.2所示:
表1.2 新闻表(news)
2. 用户登录界面。如图1所示:
用户登录代码如下:
<%@ page contentType="text/html; charset=gb2312" import="mybean.mydb,java.sql.*" %>
<% String xh=request.getParameter("xh");//获取xh的值
String mm=request.getParameter("mm");
String yzm=request.getParameter("yzm");
String rand = (String)session.getAttribute("rand");
mydb testdb=new mydb();//实列化
String path=application.getRealPath("/")+"school.mdb";//取得虚拟路径
testdb.setdbPath(path);
testdb.initdb();//初始化
String sql="select* from stu1 where xh='"+xh+"'and mm='"+mm+"'";
testdb.setsqlselyj(sql);
ResultSet rs1=testdb.selyj();
if(rs1.next()&&yzm.equals(rand))//判断是否有记录并且验证码是否正确
{ out.print("登录成功 2秒后,自动跳转到主界面!");
session.setAttribute("stu",rs1.getString("xm")); }
else
{ out.print("学号或密码错误,请重新输入!");
response.setHeader("refresh","2;url=index1.jsp");
}
该系统通过输入学号、密码、验证码而实现登录功能。启动Tomcat服务器后,在IE地址栏输入http://127.0.0.1:8080/myjsp/index.jsp。
图1登录界面
在登录系统时必须输入正确的用户名、密码、验证码后才能进入系统。这就测试了登录模块时的用户名、编号和密码是否属于数据表中的相关信息资料;如果不属于数据表相关资料则无法进入该系统。图2登录成功界面,图3登录失败界面。
图2登录成功界面
图3登录失败界面
3. 用户注册界面。如图4所示:
注册代码如下:
<%@ page contentType="text/html; charset=gb2312" import="mybean.mydb,java.sql.*" %>
<% String xh=request.getParameter("xh");//获取xh的值
String xm=request.getParameter("xm");
String mm=request.getParameter("mm");
String mm1=request.getParameter("mm1");
String xb=request.getParameter("xb");
String yx=request.getParameter("yx");
String ll=request.getParameter("ll");
byte[]a=xm.getBytes("iso-8859-1");
xm=new String(a);
byte[]b=xb.getBytes("iso-8859-1");
xb=new String(b);
byte[]c=yx.getBytes("iso-8859-1");
yx=new String(c);
byte[]d=ll.getBytes("iso-8859-1");
ll=new String(d);
mydb testdb=new mydb();//实列化
String path=application.getRealPath("/")+"school.mdb";//取得虚拟路径
testdb.setdbPath(path);
testdb.initdb();//初始化 String sql="insert into stu1 values('"+xh+"','"+xm+"','"+mm+"','"+xb+"','"+yx+"','"+ll+"')";testdb.setsq lxgyj(sql);
int i=testdb.xgyj();
if(i>0)
{out.print("注册成功 2秒后,自动跳转到主界面!");
response.setHeader("refresh","2;url=index1.jsp");}
else
{out.print("注册失败");
response.setHeader("refresh","2;url=zc.jsp");} %>
用户填写必要资料注册成功后,才能进入该系统进行登录。注册成功后如图5所示 。
图4用户注册界面
图5注册成功界面
4. 新闻界面,如图6所示:
新闻分类代码如下:
<%@ page contentType="text/html;charset=gb2312" import="java.sql.*" %>
<% int currentPage=0;
String fl=request.getParameter("fl");
String p=request.getParameter("page");
if(p==""||p==null)
{ currentPage=1;}
else
{ currentPage=Integer.parseInt(p);
if(currentPage<1)
currentPage=1; }
Connection con;//定义连接
Statement st;//定义查询
ResultSet rs; //结果集,保存查询结果
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加载驱动
String url="jdbc:odbc:driver={microsoft access driver (*.mdb)};dbq="+application.getRealPath("/")+"school.mdb";//定义连接字符串
con=DriverManager.getConnection(url); //初始化连接
String sql1="select * from news where xwfl='"+fl+"'";
st=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs=st.executeQuery(sql1); rs.last();
int maxR=rs.getRow();
int pageR=5;//取得每页的记录条数
int countPage=0;
if(maxR%pageR==0)
{countPage=maxR/pageR;}
else
{countPage=maxR/pageR+1;}
rs.next(); rs.absolute((currentPage-1)*pageR+1); %>
<table width="900" height="200" border="0" align="center" cellpadding="0" cellspacing="0">
<tr> <th width="333" align="center">标题</th> <th width="367" align="center"> 发布时间</th> </tr>
<% String bt,xwrq; int i=0;
while(i<5&&!rs.isAfterLast())
{ bt=rs.getString("bt");
xwrq=rs.getString("xwrq");
out.print("<tr>");
out.print("<td align=left><a href="+rs.getString("dz")+">"+bt+"</a></td><td align=center>"+xwrq+"</td>");
out.print("</tr>");
i++; rs.next(); } %>
</table>
<form action="fenye.jsp">
<div align="center">转到第
<input type="text" name="page" size="5" />页</input>
<input name="submit" type="submit" value="Go" /> </input>
<%= "共"+countPage+"页" %> <%= "第"+currentPage+"页" %>
<% if(currentPage!=0)
{%>
<a href="fenye.jsp?page=<%= currentPage-1 %>">上一页</a>
<% } %>
<% if(currentPage<countPage)
{%>
<a href="fenye.jsp?page=<%= currentPage+1 %>">下一页</a>
<% } %>
</div></form>
点击图6中的更多按钮将会链接到新闻分页界面,可以实现上一页、下一页、转到第几页等功能,如图7所示。
图6新闻界面
图7新闻分页界面
五、实验总结
在这段的实训过程中,我学习到了很多的知识,也得到了很多同学的帮助,例如:dbq="+application.getRealPath("/")+"wzgl.mdb",若是这样,那么相应的数据库要放到d:/Tomcat 5.0/webapps/ROOT下才行,或者采用虚拟路径方法:打开server,加入一句<Context path="/myjsp" docBase="E:/yzm"></Context>即可。
这段实训期间特别感谢老师和同学对我的耐心指导和帮助,没有老师和同学的帮助我也不可能做出好的动态网页效果,在此期间我通过时间了解并掌握了很多不同的程序和知识,为我们将来的实践打下了良好的基础,使我受益非浅。以上就是我在实训的心得和感受!
第二篇:jsp实训报告模板
JSP课程实训报告
课程:JSP实现的个人通讯录管理系统 学号: 1010090 姓名: 田芳 班级: 10软件01班
江西应用技术职业学院
信息工程系
日期:20xx年 4 月
1、设计名称:
JSP实现的个人通讯录管理系统
2、设计内容:
个人通讯录管理系统由JSP实现,首先通过用户名和密码登录本系统,其中用户名和密码保存在数据库中。本系统的基本功能包括:查看我的通讯录,内容包括电话号码和email,在查看我的通讯录功能中要实现分页显示功能,避免日后使用中通讯录资料过多,不容易显示;查询功能,根据姓名查询相应的电话和email,添加人员和删除人员。
3、设计目的与要求:
学习用JSP 实现一个小型系统,学习使用JSP中的重要技术,包括Java Bean 和Java Severlet,以及连接数据源问题。同时,要通过设计本小型系统,了解软件开发的基本理念与要求。
4、设计环境或器材、原理与说明:
装有Windows XP系统的电脑,并安装JDK以及Tomcat 。 原理:使用JSP+ACCESS进行编程。
5、设计过程(步骤)或程序代码:
6、设计结果与分析(可以加页):
7、设计体会与建议:
设计成绩:
教师签名:年 月 日