计算机科学与工程系天津理工大学计算机科学与工程系实验报告2011至2012学年第一学期课程名称J2EE程序设计学号学生姓名年级2009级专业计算机教学班号实验地点#7-215实验时间2011年12月3日第1节至第10节主讲教师董玉涛辅导教师董玉涛计算机科学与工程系2实验()实验名称用户登录处理Web程序软件环境JDK1.4或以上MyEclipse8.5+TomCat5.0+JDKDocsSQLServer2000+硬件环境Pc机实验目的熟悉使用servlet、jsp,制作Web程序,实现web程序与数据库的链接实验内容(应包括实验题目、实验要求、实验任务等)使用java的jsp及Servlet,结合jdbc制作一个简单的用户登录处理Web程序。在登录页面中输入正确的用户名、密码、确认密码则可以正常登录,并自动跳转到欢迎页面,并且在欢迎页面中显示当前所有已经登录的用户名列表。数据库中用户名不唯一,输入任何一个用户都可以实现正常登录。登录错误则自动跳转回到登录页面,并在登录页面中提示登录错误。数据库使用SQLServer2000+,数据库字段及内容自行设计,页面显示方式自行设计。数据库连接方式使用jdbc-odbc桥方式连接,也可以使用微软提供的软件包。提交内容为MyEclipse工程、数据库备份文件(LoginDB.bak)以及针对本程序的使用说明简述(readme.txt)。实验过程与实验结果(可包括实验实施的步骤、算法描述、流程、结论等)计算机科学与工程系3///////////////////////////////////////////////登录界面//////////////////////////////////////////////////////////////%@pagelanguage=javaimport=java.util.*pageEncoding=ISO-8859-1%%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlheadtitle登录界面/title/headbodycenterh2请先登录/h2/centerhr/formaction=check.jspmethod=posttableborder=10pxstyle=margin-right:auto;margin-left:auto;thcolspan=2用户登录/thtrtd用户名:/tdtdinputtype=textname=username//td/trtrtd密码:/tdtdinputtype=passwordname=password//td/trtrcolspan=2tdinputtype=submitvalue=提交//tdtdinputtype=resetvalue=重置//td/tr/table/form/body/html计算机科学与工程系4////////////////////////////////////////////////检查程序////////////////////////////////////////////////////////////////////////%@pagelanguage=javaimport=java.util.*pageEncoding=utf-8%%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%%@pageimport=java.sql.*%htmlhead/headbody%!//数据库属性配置publicstaticfinalStringDBDRIVER=com.microsoft.jdbc.sqlserver.SQLServerDriver;publicstaticfinalStringDBURL=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=t_user;publicstaticfinalStringDBUSER=sa;publicstaticfinalStringDBPASS=as;%%Connectionconn=null;PreparedStatementpstmt=null;ResultSetrs=null;booleanflag=false;Stringname=null;%%try{%%计算机科学与工程系5Class.forName(DBDRIVER);conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);Stringsql=selectnamefromuserwherename=?andpassword=?;pstmt=conn.prepareStatement(sql);pstmt.setString(1,request.getParameter(username));pstmt.setString(2,request.getParameter(password));rs=pstmt.executeQuery();if(rs.next()){//如果有数据可以执行flag=false;name=rs.getString(1);}//Stringsql=select*fromuser;//rs=pstmt.executeQuery(sql);//while(rs.next()){//如果有数据可以执行//Stringname1=rs.getString(name);//Stringpsw=rs.getString(password);//if(name1.equals(request.getParameter(username))&&psw.equals(request.getParameter(username))){//flag=true;//name=rs.getString(1);//break;//}//}%%}catch(Exceptione){System.out.println(e);}finally{try{rs.close();pstmt.close();conn.close();}catch(Exceptione){System.out.println(e);}}%计算机科学与工程系6%if(flag){%jsp:forwardpage=success.jspjsp:paramname=unamevalue=%=name%//jsp:forward%}else{%jsp:forwardpage=failure.jsp/%}%/body/html////////////////////////////////////登陆成功/////////////////////////////////////////////////////////////%@pagelanguage=javaimport=java.util.*pageEncoding=utf-8%%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlhead/headbodyh2登陆成功!/h2h2欢迎:%=request.getParameter(uname)%/h2/body/html/////////////////////////////////////登录失败/////////////////////////////////////////////////////%@pagelanguage=javaimport=java.util.*pageEncoding=utf-8%%Stringpath=request.getContextPath();StringbasePath=request.getScheme()+://+request.getServerName()+:+request.getServerPort()+path+/;计算机科学与工程系7%!DOCTYPEHTMLPUBLIC-//W3C//DTDHTML4.01Transitional//ENhtmlhead/headbodyh2登录失败/h2ahref=loginfrm.jsp重新登录.../a/body/html附录(可包括源程序清单或其它说明)