1、网络交友系统综合实验:网际交友目录1系统模块构成 12数据库设计 23系统管理 23.1页面管理 23.2Javabean与Servlet管理 33.3配置文件 44会员注册 54.1模型(Javabean) 64.2控制器 74.3视图(JSP页面) 95会员登陆 115.1模型(Javabean) 115.2控制器(servlet) 125.3视图(JSP页面) 146上传照片 166.1模型(Javabean) 176.2控制器(servlet) 176.3视图(JSP页面) 217浏览会员信息 237.1模型(Javabean) 237.2控制器(servlet) 257.3视图(JS
2、P页面) 288修改密码 328.1模型(Javabean) 338.2控制器(servlet) 338.3视图(JSP页面) 359修改注册信息 379.1模型(Javabean) 379.2控制器(servlet) 389.3视图(JSP页面) 4010退出登录 431系统模块构成1.、会员注册2、会员登记3、上传照片4、浏览会员信息5、修改密码6、修改密码7、退出登录2数据库设计使用SQL Server 2005建立一个数据库MakeFriend,该库有一个表:member表。会员的注册信息存入member表中,member表的主键是logname。3系统管理本系统使用的Web服务目录是
3、mkfriend,实在Tomcat安装目录下建立的Web服务目录。3.1页面管理本系统使用的JSP页面全部保存在Web服务目录mkfriend中。所有页面将包括一个导航条,该导航条有注册、登陆、上传照片、会员浏览、修改密码、修干个人信息组成。为了便于维护,其他页面通过使用JSP的标记将导航条文件:head.txt嵌入到自己的页面中。Head.txt保存在Web服务目录mkfriend中,head.txt的内容如下:网络交友 会员注册 会员登录 上传照片 浏览会员 修改注册信息 修改密码 退出登录 返回主页 主页index.jsp由导航条、一个欢迎语和一幅图片welcome.jpg组成,welc
4、ome.jpg保存在mkfriend中。Index.jsp 欢迎您来这里结交朋友 3.2Javabean与Servlet管理本系统的Javabean类的包名均为mybean.data;Servlet类的包名均为myservlet.control。由于Servlet类中要使用Javabean,所以为了能顺利的编译Servlet类,首先将Javabean类和Servlet类分别保存到:D: myservletcontrolmybeandata和D: myservletcontrol目录中,分别进入上述目录,编译Javabean类和Servlet类。然后将编译通过的Javabean类和Servlet
5、类的字节码分别复制到mkfriendWEB-INFclassesmybeandata和mkfriendWEB-INFclasses myservletcontrol目录中。3.3配置文件本系统的servlet类的包名均为myservlet.control,需要配置Web服务目录的web.xml文件,根据本书使用的Tomcat安装目录及使用的Web服务目录,需要将下面的web.xml文件保存到D:apache-tomcat-6.0.13webappsmkfriendWEN-INF目录中。web.xml register myservlet.control.HandleRegister regis
6、ter /helpRegister login myservlet.control.HandleLogin login /helpLogin upload myservlet.control.HandleUpload upload /helpUpload lookRecord myservlet.control.HandleDatabase lookRecord /helpShowMember modifyPassword myservlet.control.HandlePassword modifyPassword /helpModifyPassword modifyOldMess myse
7、rvlet.control.HandleModifyMess modifyOldMess /helpModifyMess exit myservlet.control.HandleExit exit /helpExitLogin4会员注册当新会员注册时,该模块要求用户必须输入会员名、密码信息,否则不应许注册。用户的注册信息被存入数据库的member表中。该模块的模型Javabean描述用户的注册信息;该模块的视图部分由两个JSP页面构成,一个JSP页面负责提交用户的注册信息到控制块,另一个JSP页面负责显示注册是否成功的信息;该模块的控制器servlet负责将视图提交的信息写入数据库的memb
8、er表中,并负责更新视图。4.1模型(Javabean)下列Javabean的实例用来描述用户注册信息。Register.javapackage mybean.data;public class Register String logname=,password=,email=, phone=, message=; String backNews; public void setLogname(String name) logname=name; public String getLogname() return logname; public void setPassword(String
9、pw) password=pw; public String getPassword() return password; public void setEmail(String em) email=em; public String getEmail() return email; public void setPhone(String ph) phone=ph; public String getPhone() return phone; public String getMessage() return message; public void setMessage(String m)
10、message=m; public String getBackNews() return backNews; public void setBackNews(String s) backNews=s; 4.2控制器控制器servlet对象的名字是register。控制器register负责连接数据库,将用户提交的信息写入member表中,并将用户转发到showRegister.java页面查看注册反馈信息。HandleRegister.javapackage myservlet.control;import mybean.data.*;import java.sql.*;import jav
11、a.io.*;import javax.servlet.*;import javax.servlet.http.*;public class HandleRegister extends HttpServlet public void init(ServletConfig config) throws ServletException super.init(config); try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch(Exception e) public String handleString(
12、String s) try byte bb=s.getBytes(iso-8859-1); s=new String(bb); catch(Exception ee) return s; public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException Connection con; Statement sql; Register reg=new Register(); request.setAttribute(register,reg)
13、; String logname=request.getParameter(logname).trim(), password=request.getParameter(password).trim(), email=request.getParameter(email).trim(), phone=request.getParameter(phone).trim(), message=request.getParameter(message); String uri=jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=MakeFriend; if(logn
14、ame=null) logname=; if(password=null) password=; boolean isLD=true; for(int i=0;ilogname.length();i+) char c=logname.charAt(i); if(!(c=a)|(c=A)|(c=0) isLD=false; boolean boo=logname.length()0&password.length()0&isLD; String backNews=; try logname=handleString(logname); password=handleString(password
15、); phone=handleString(phone); email=handleString(email); message=handleString(message); String pic=public.jpg; String insertRecord=(+logname+,+password+,+phone+, +email+,+message+,+pic+); con=DriverManager.getConnection(uri,sa,sa); String insertCondition=INSERT INTO member VALUES +insertRecord; sql=
16、con.createStatement(); if(boo) int m=sql.executeUpdate(insertCondition); if(m!=0) backNews=注册成功; reg.setBackNews(backNews); reg.setLogname(logname); reg.setPassword(password); reg.setPhone(phone); reg.setEmail(email); reg.setMessage(message); else backNews=信息填写不完整或名字中有非法字符; reg.setBackNews(backNews)
17、; con.close(); catch(SQLException exp) backNews=该会员名已被使用,请您更换名字+exp; reg.setBackNews(backNews); RequestDispatcher dispatcher= request.getRequestDispatcher(showRegisterMess.jsp);/转发 dispatcher.forward(request,response); public void doGet(HttpServletRequest request,HttpServletResponse response) throws
18、 ServletException,IOException doPost(request,response); 4.3视图(JSP页面)本模块的视图有两个页面:register.jsp和showRegisterMess.jsp。register.jsp页面负责提供输入注册信息界面;showRegisterMess.jsp负责显示注册反馈信息,例如注册是否成功等。register.jsp 输入您的信息,会员名字必须由字母和数字组成,带*号项必须填写。 会员名称:* 设置密码:* 电子邮件: 联系电话: 输入您的简历和交友标准: showRegisterMess.jsp 注册的会员名称: 注册的电子邮件: 注册的联系电话: 您的简历和交友标准: 5会员登陆用户可以
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1