JSP作业课程设计--QQ登陆系统.doc_第1页
JSP作业课程设计--QQ登陆系统.doc_第2页
JSP作业课程设计--QQ登陆系统.doc_第3页
JSP作业课程设计--QQ登陆系统.doc_第4页
JSP作业课程设计--QQ登陆系统.doc_第5页
免费预览已结束,剩余14页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学院JSP大作业报告题 目 QQ登陆系统 学生姓名 专业班级 计算机10-1 指导教师 职称 讲师 所在单位 教研室主任 完成日期 2013年5月22日摘 要QQ是腾讯公司开发的一款基于Internet的即时通信软件。腾讯QQ作为当下中国最流行的聊天工具之一,必有他成功的理由。所以我希望基于JSP能模仿QQ的登陆系统,一方面向腾讯QQ学习他的登陆界面,以便日后可以把它成功的运用到网页游戏或者是网站的一些会员登录中,另一方面也可以帮我巩固在JSP课上学习到的知识。用JSP编辑的网站中,一般要求用户提供登陆该网站的用户名称和密码等信息,在注册页面中用SQL语句在数据库中查询该用户名和密码是否存在于数据库中。该系统用到的关键技术,使用JSP编程、建立数据库、采用HTML超文本链接等编程技术。关键字:QQ登录系统;JSP编程;数据库;学习目 录1总体设计11.1本系统的主要功能11.2系统包含的类及类之间的关系11.3java源文件及其功能12详细设计12.1类AddBean12.2类QueryBean22.3类Query22.4类ReadFiles32.5类RandomArr33 运行效果43.1 系统登陆界面43.2 更改密码界面53.2 个人主界面53.2 注册信息界面5参考文献6附录1 软件源程序7课程设计实践总结:16大连科技学院课程设计报告1总体设计1.1本系统的主要功能 本系统为QQ登陆系统仿照QQ的登陆界面完成学习目的,功能包括了帐号、密码的注册、清空及登录,而注册界面包含了帐号、密码、姓名、年龄等信息,还加入了修改密码的界面,简单地说就是QQ登陆界面的简化版本。1.2系统包含的类及类之间的关系本系统共包括5个java源文件,7个jsp文件1.3java源文件及其功能1.AddBean.java该文件用于添加用户编号、密码、年龄、名字等信息2. QueryBean.java该文件为查询用户信息组件的文件,通过QueryBean扩展查询功能3. Query.java该文件为查询用户信息文件4. ReadFiles.java该文件为读取文件5. RandomArr.java该文件随机生成帐号的文件2详细设计2.1类AddBean(1)成员变量见表2-1表2-1 主要成员变量(属性)成员变量描述变量类型名称用户名及帐号Stringname,number年龄、密码、添加信息Intage,pass,addMessage(2)方法见表2-2表2-2 主要方法方法名功能备注AddBean()添加组件扩充添加程序setName()设置用户名字符串型setAge()设置年龄整型setPass()设置密码整型setNumber()设置账号字符串型getAddMessage()获取添加信息注册(3)源代码见文件AddBean.java2.2类QueryBean(1)成员变量见表2-3表2-3 主要成员变量成员变量描述变量类型名称数据库名、密码、用户名、表名StringdatabaseName=,secret=,user=,tableName=(2)方法见表2-4表2-4 主要方法方法名功能备注QueryBean()查询组件JavaBean组件类似COM组件getQueryResult()获取查询结果将获取的信息汇总setDatabaseName()设置数据库名设置需要传参getDatabaseName()获取数据库名获取需要return返回setTableName()设置表名以下设置与获取的描述不再赘余,参考数据库设置与获取getTableName()获取表名setSecret()设置密码getSecret()获取密码setUser()设置用户名getUser()获取用户名(3)源代码见文件QueryBean.java2.3类Query(1)成员变量见表2-5表2-5 主要成员变量(属性)成员变量描述变量类型名称帐号Stringnumber密码及新密码Intpass,newpassword(2)方法见表2-6表2-6 主要方法方法名功能备注setNumber()设置账号将参数传参到帐号read()读取读取信息setNewpassword()设置新密码将参数传参到新密码(3)源代码见文件Query.java2.4类ReadFiles(1)成员变量见表2-7表2-7 主要成员变量(属性)成员变量描述变量类型名称变量名、内容Stringpath,content(2)方法见表2-8表2-8 主要方法方法名功能备注setPath()设置变量名字符串型getContent()获取内容字符串型(3)源代码见文件ReadFiles.java2.5类RandomArr(1)成员变量见表2-9表2-9 主要成员变量(属性)成员变量描述变量类型名称帐号String number10位数组用作存储帐号int arrarri随机变量Inti(2)方法见表2-10表2-10 主要方法方法名功能备注getNumber()获取账号数组中的数字以字符串型作为账号Math.random()随机生成一个01之间的数 (int)(Math.random()*10)通常用作生成整数(3)源代码见文件RandomArr.java3 运行效果3.1 系统登陆界面图3-1 系统登陆界面3.2 更改密码界面图3-2 更改密码界面3.2 个人主界面图3-2 个人主界面3.2 注册信息界面图3-2 注册信息界面 参考文献 1 程志艳等JSP实用简明教程,清华大学出版社,2005.122 李曙光JSP开发实例完全剖析,中国电力出版社,2006.43 孙延鹏等Web程序设计-JSP,人民邮电出版社,2008.54张阳等Java Web开发实践教程-从设计到实现,清华大学出版社,2008.95 刘彬编著,JSP数据库高级教程,清华大学出版社,2006附录1 软件源程序package tom.jiafei;import java.sql.*;public class AddBean int age,pass,addMessage;String name,number; public AddBean() try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch(Exception e) public void setName(String s) name=s.trim(); try byte bb=name.getBytes(ISO-8859-1); name=new String(bb,gb2312); catch(Exception e) public void setAge(int n) age=n; public void setPass(int n) pass=n; public void setNumber(String s) number=s; public int getAddMessage()throws Exception String uri=jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=factory; String user=sa; String password=sa; Connection con=DriverManager.getConnection(uri, user, password);/连接 Statement st=con.createStatement();/创建语句 String sql=insert into qq (number,pass,name,age)values(+number+,+pass+,+name+,+age+); addMessage=st.executeUpdate(sql); st.close(); con.close(); return addMessage; /*利用Random生成10个数且第一个数不为0*/package tom.jiafei;import java.io.*;public class RandomArr private StringBuilder sb=new StringBuilder(); String number; public String getNumber() int arr = new int 10; int i=0; while(iarr.length) arri=(int)(Math.random()*10); if(arr0=0) continue; /控制第一个数不为0else sb.append(arri);i+;number=sb.toString(); return number; package tom.jiafei;import java.io.*;public class ReadFilesprivate String path,content;public void setPath(String path)this.path=path; public String getContent()throws IOExceptionFileReader fr=new FileReader(path);BufferedReader br=new BufferedReader(fr);StringBuilder sb=new StringBuilder();String str=null;while(str=br.readLine()!=null)sb.append(str+);content=sb.toString();return content;package tom.jiafei;import java.sql.*;public class Query String number;int pass,newpassword;public void setNumber(String s)number=s;public void setNewpassword(int s)newpassword=s;public int read() throws ExceptionClass.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver);String uri=jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=factory;String user=sa;String password=sa;/建立连接Connection con=DriverManager.getConnection(uri, user, password);/创建语句Statement st=con.createStatement();ResultSet rs=st.executeQuery(SELECT number,pass,name,age FROM qq where number=+number+);while(rs.next()pass=rs.getInt(2);return pass;public int update() throws ExceptionClass.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver);String uri=jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=factory;String user=sa;String password=sa;Connection con=DriverManager.getConnection(uri, user, password);/连接Statement st=con.createStatement();/创建语句String sql=update qq set pass=+newpassword+ where number=+number+;int i=st.executeUpdate(sql);st.close();con.close();return i;package tom.jiafei;import java.sql.*;public class QueryBean String databaseName=; /数据库名 String tableName=; /表名 String user= ; /用户 String secret= ; /密码 StringBuffer queryResult; /查询结果 public QueryBean() queryResult=new StringBuffer(); try Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch(Exception e) public void setDatabaseName(String s) databaseName=s.trim(); queryResult=new StringBuffer(); public String getDatabaseName() return databaseName; public void setTableName(String s) tableName=s.trim(); queryResult=new StringBuffer(); public String getTableName() return tableName; public void setSecret(String s) secret=s.trim(); queryResult=new StringBuffer(); public String getSecret() return secret; public void setUser(String s) user=s.trim(); queryResult=new StringBuffer(); public String getUser() return user; public StringBuffer getQueryResult() Connection con; Statement sql; ResultSet rs; try queryResult.append(); String uri= jdbc:sqlserver:/127.0.0.1:1433;DatabaseName=+databaseName; String id=user; String password=secret; con=DriverManager.getConnection(uri,id,password); DatabaseMetaData metadata=con.getMetaData(); ResultSet rs1=metadata.getColumns(null,null,tableName,null); int 字段个数=0; queryResult.append(); while(rs1.next() 字段个数+; String clumnName=rs1.getString(4); queryResult.append(+clumnName+); queryResult.append(); sql=con.createStatement(); rs=sql.executeQuery(SELECT * FROM +tableName); while(rs.next() queryResult.append(); for(int k=1;k=字段个数;k+) queryResult.append(+rs.getString(k)+); queryResult.append(); queryResult.append(); con.close(); catch(SQLException e) queryResult.append(请输入正确的用户名和密码); return queryResult; 帐号 密码登录成功 请输入密码: 姓名: 年龄: %String str1=request.getParameter(num); /重定向String str2=request.getParameter(password);if(str1.length()=0|str2.l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论