JSP课程设计模板.doc

上传人:叶*** 文档编号:36070438 上传时间:2022-08-25 格式:DOC 页数:12 大小:83KB
返回 下载 相关 举报
JSP课程设计模板.doc_第1页
第1页 / 共12页
JSP课程设计模板.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《JSP课程设计模板.doc》由会员分享,可在线阅读,更多相关《JSP课程设计模板.doc(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、大 连 科 技 学 院JSP应用技术 题 目 QQ登陆系统 学生姓名 张娇专业班级 软件工程(茅)11-2 指导教师 刘瑞杰 职 称讲 师 所在单位 信息科学系软件教研室 系 主 任 王立娟 完成日期 2014年10月17日目 录1前言11.1 问题提出11.2 研究意义12系统需求分析221功能分析22.1系统包含的类及类之间的关系22.2 系统使用数据字典:33.数据库的概要结构设计53.1数据抽象53.2设计全局概念模式64.数据库的逻辑结构设计84.1 形成初始的关系模式85.系统的实现与调试95.1主界面运行效果96代码101前言1.1 问题提出随着嵌入式的发展,近年来,嵌入式在社会

2、发展中占据着越来越重要的地位。我们日常生活中的手机,电子手表,MP3, 医疗设备,汽车导航等等,到处可见嵌入式相关的东西。以前很多手动式的操作由嵌入式设备的代替后运行效率和方便程度都有了明显的提高。目前嵌入式相关的技术已经成为未来世界发展的主流方向。与此同时,网络的发展更是火遍了全球,几乎80%以上的人都会上网。可以说已经成为人们的生活的一部分。由以上可想而知,嵌入式联网功能定会是未来的一种趋势。TCP/IP(通常它是指传输控制协议/网际协议,Transmission Control Protocol / Internet Protocol)是发展至今最成功的通信协议,它被用于当今所构筑的最大

3、的开放式 网络系统Internet之上就是其成功的明证。Internet最初的设计是为了满足美国国防的需要,具体来讲就是使美国政府即使在遭受核打击时也能保证通信不间断,TCP/IP就是用于这个目的的。今天,Internet已经发展得更加商业化,更加面向消费者,尽管基本目的发生了改变,但其最初的所有质量标准(也就是开放式、抗毁性和可靠性)依然是必需的。这些特性包括可靠传输数据、自动检测和避免网络发生错误的能力。更重要的就是 TCP/IP是一个开放式通信协议,开放性意味着在任何组合间,不管这些设备的物理特征有多大差异,都可以进行通信。1.2 研究意义目前,嵌入式设备与TCP/IP协议的结合已经成为

4、了必然的趋势。但是嵌入式设备的容量小,处理速度慢等原因。不可能会使用像普通PC机那样一样的TCP/IP协议支持系统。所以要实现适合嵌入式设备的TCP/IP协议,是一个首要的问题。这就要考虑在原有的协议的基础上对TCP/IP协议进行裁剪,使之留下有用的功能更适合于我们的嵌入式系统。目前有部分的嵌入式设备上已经实现了相应的TCP/IP协议。不过对于ARM这种比较流行的芯片来说针对于部分型号芯片的TCP/IP协议的实现并没有实现。以LPC2124芯片为例,市面上很少会出现此类型号的匹配产品。为了让这些型号的芯片也能够使用上功能强大的TCP/IP协议。这就需要我们开发出具体针对这些芯片的TCP/IP协

5、议。为了使做出的协议更实用,成本更低。配合免费稳定的UCOSII等操作系统也是必不可少的。2系统需求分析21功能分析QQ登陆系统仿QQ的登陆界面完成学习目的,功能包括了帐号、密码的注册、清空及登录,而注册界面包含了帐号、密码、姓名、年龄等信息,还加入了修改密码的界面,简单地说就是QQ登陆界面的简化版本。2.1系统包含的类及类之间的关系本系统包含三个JAVA源文件,四个JSP页面。1.AddBean.java 该文件用于添加用户账号、密码、出生日期、名字等信息2.QueryBean.java 该文件为查询用户信息组件的文件,通过QueryBean扩展查询功能3Conditionbean.java

6、 该文件为条件查询用户信息文件输入调件查询用户信息查询用户组件信息添加用户信息QueryBeanAddBeanConditionBeanbean图2-1系统功能模块关系图信息规则查询认证数据库 输入数据 出错信息 输出数据用户登录信息信息规则更新认证 登录信息 正确并更新用户资料 个人更新信息 错误信息 图2-2数据流图2.2 系统使用数据字典:(1)成员变量名如表2-1数据元素数据类型数据长度姓名varChar()10账号String()50性别varChar()10地址Varchar()50还回信息bufferString()100(2)方法见表2-2方法名功能备注getAddmessag

7、e()向数据库添加数据还回字符串类型的,判断书否数据添加成功。queryResult()还回查询结果还回字符串类型的,查看用户的基本个人信息方法名功能备注setDatabaseName设置数据库名设置需要传参getDatabaseName获取数据库名获取需要return还回setTableName()设置表名设置和获取数据getTableName()获取表名setPwd设置密码setPwd获取密码3.数据库的概要结构设计 概念结构设计是将分析得到的用户需求抽象为信息结构(即概念模型)的过程,它是整个数据库设计的关键。为了把用户的数据要求清晰明确的表达出来,通常要建立一种面向问题的数据模型,按照

8、用户的观点来对数据和信息建模。最常用的概念性数据模型就是ER模型。以下是本系统涉及到数据抽象后的E-R图。3.1数据抽象姓名性别账号地址用户个人信息 基本信息表图3-1密保账号修改密码 修改表信息图3-2数据库名用户密码用户名表名 数据库 数据库信息图3-33.2设计全局概念模式各个局部视图即分E-R图建立好后,还需要对它们进行合并,集成为一个整体的概念数据结构即全局E-R图。 (1)合并分E-R图,生成初步E-R图合并分E-R图时并不能简单地将各个分E-R图画到一起,而是必须着力消除各个分E-R图中不一致的地方,以形成一个能为全系统中所有用户共同理解和接受的统一概念模型。合理消除各分E-R图

9、的冲突,合并分E-R图的主要工作与关键所在。E-R图中的冲突有三种:属性冲突,命名冲突结构冲突。 属性冲突属性域冲突:属性值的类型、取值范围或取值集合不同。 属性取值单位冲突。 命名冲突命名不一致可能发生在实体名、属性名或联系名之间,其中属性的命名冲突更为常见。一般表现为同名异义或异名同义。同名异义:不同意义的对象在不同的局部应用中具有相同的名字。 异名同义(一义多名):同一意义的对象在不同的局部应用中具有不同的名字。 命名冲突可能发生在属性级、实体级、联系级上。其中属性的命名冲突更为常见。解决命名冲突的方法是通常用讨论、协商等行政手段加以解决。 结构冲突(有三类结构冲突)同一对象在不同应用中

10、具有不同的抽象 解决方法:通常是把属性变换为实体或把实体变换为属性,使同一对象具有相同的抽象。变换时要遵循两个准则。同一实体在不同局部视图中所包含的属性不完全相同,或者属性的排列次序不完全相同。 解决方法:使该实体的属性取各分E-R图中属性的并集,再适当设计属性的次序。 实体之间的联系在不同局部视图中呈现不同的类型 解决方法:根据应用语义对实体联系的类型进行综合或调整。(2)消除不必要的冗余,设计基本E-R图冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其他联系导出的联系。冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难。 采用分析的方法来消除数据冗余,以数据字典和数据

11、流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。 前面图3-1和图3-2在形成初步E-R图后,以及消除冗余联系,便可得到基本的E-R模型,如下图3-3所示 地址性别姓名账号账号密保修改用户个人信息 1修改密码 1属于 N n用户密码用户名表名数据库名 1 1拥有数据库图3-3 优化后的全局E-R图4.数据库的逻辑结构设计概念结构是各种数据模型的共同基础。为了能够用某一DBMS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。一般的逻辑结构设计分为以下三个步骤: 1将概念结构转化为一般的关系、网状、层次模型。 2将转化来的关系、网

12、状、层次模型向特定DBMS支持下的数据模型转换。 3对数据模型进行优化。4.1 形成初始的关系模式(1)一个实体转换为一个关系模式。 关系的属性:实体的属性;关系的键:实体的键(2)一个m:n联系转换为一个关系模式。 关系的属性:与该联系相连的各实体的键以及联系本身的属性。关系的键:各实体键的组合。 (3)一个1:n联系可以转换为一个关系模式 关系的属性:与该联系相连的各实体的码以及联系本身的属性 关系的码:n端实体的键(4)一个1:1联系可以转换为一个独立的关系模式。 关系的属性:与该联系相连的各实体的键以及联系本身的属性 关系的候选码:每个实体的码均是该关系的候选码 将图3-3中四个实体分

13、别转换为关系模式(带下划线的为主键):用户(账号,姓名,性别,地址)密码(密保,账号)数据库(数据库名,表名)将图3-3中的四个联系也转换成关系模式:属于(账号,表名)修改(账号,密保,)拥有(账号,表名)5.系统的实现与调试用SQL Server 2000数据库管理系统建立数据库结构,加载数据,实现各种查询,根据系统功能建立视图等对象,并能对数据库做简单的维护操作。5.1主界面运行效果图 5-1 用户注册页面注册失败的话,就要按题示重新注册。图 5-2 MM登录6代码QueryBean.Java源代码package tom.jiafie;import java.sql.*;public cl

14、ass QueryBean String databaseName=;String tableName=;String user=;String secret=;StringBuffer queryResult;public QueryBean()queryResult=new StringBuffer();tryClass.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);catch(Exception e)public void setDatabaseName(String s)databaseName=s.trim();query

15、Result=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 ge

16、tSecret()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;tryqueryResult.append();String uri=jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=+

17、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);queryRes

18、ult.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.app

19、end(请输入正确的用户名和密码);return queryResult;AddBean.javapackage tom.jiafie;import java.sql.*;public class AddBean String zhanghao=, mima=, name=, nicheng=, sex=, birthday=, addrass=, answer=;String addMessage=;public AddBean()tryClass.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);catch(Exception e)

20、public void setZhanghao(String s)zhanghao=s.trim();public void setMima(String s)mima=s.trim();public void setName(String s)name=s.trim();public void setNicheng(String s)nicheng=s.trim();trybyte bb=nicheng.getBytes(ISO-8859-1);nicheng=new String(bb,gb2312);catch(Exception e)public void setSex(String

21、s)sex=s.trim();trybyte bb=sex.getBytes(ISO-8859-1);sex=new String(bb,gb2312);catch(Exception e)public void setBirthday(String s)birthday=s.trim();public void setAnswer(String s)answer=s.trim();trybyte bb=answer.getBytes(ISO-8859-1);answer=new String(bb,gb2312);catch(Exception e)public void Addrass(S

22、tring s)addrass=s.trim();trybyte bb=addrass.getBytes(ISO-8859-1);addrass=new String(bb,gb2312);catch(Exception e)public String getAddMessage()String insertCondition=insert QQ values(+zhanghao+,+mima+,+name+,+nicheng+,+sex+,+addrass+,+answer+,+birthday+);String str=;Connection con;Statement sql;trySt

23、ring uri=jdbc:microsoft:sqlserver:/127.0.0.1:1433;DatabaseName=factory;con=DriverManager.getConnection(uri,sa,sa);sql=con.createStatement();if(zhanghao.length()0&mima.length()0)int m=sql.executeUpdate(insertCondition);if(m!=0)str=账号申请成功啦!;elsestr=账号申请失败;elsestr=账号密码不能为空;con.close();catch(SQLExceptio

24、n e)str=请重新输入!;return str;ConditionBean.javapackage tom.jiafie;import java.sql.*;public class ConditionBeanString zhanghao,mima;StringBuffer queryResultByMima;StringBuffer queryResultByZhanghao;public ConditionBean()queryResultByZhanghao=new StringBuffer();queryResultByMima=new StringBuffer();tryCla

25、ss.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);catch(Exception e)public void setZhanghao(String s)zhanghao=s.trim();queryResultByZhanghao=new StringBuffer();queryResultByMima=new StringBuffer();public void setMima(String s)mima=s.trim();queryResultByMima=new StringBuffer();queryResultByZha

26、nghao=new StringBuffer();public String getZhanghao()return zhanghao;public String getMima()return mima;public StringBuffer getQueryResultByZhanghao()String condition=select * from QQ where zhanghao=+zhanghao+ and mima=+mima+;queryResultByZhanghao=f(condition);return queryResultByZhanghao;private Str

27、ingBuffer f(String condition)StringBuffer str=new StringBuffer();Connection con;Statement sql;ResultSet rs;tryString uri=jdbc:microsoft:sqlserver:/127.0.0.1:1433;DatabaseName=factory;con=DriverManager.getConnection(uri,sa,sa);sql=con.createStatement();rs=sql.executeQuery(condition);str.append();str.

28、append(th width=100+zhanghao);str.append(th width=100+name);str.append(th width=100+nicheng);str.append(th width=100+sex);str.append(th width=100+birthday);str.append(th width=100+addrass);while(rs.next()str.append();str.append(td+rs.getString(1);str.append(td+rs.getString(2);str.append(td+rs.getString(3);str.append(td+rs.getString(4);str.append(td+rs.getString(5);str.append(td+rs.getString(6);str.append();str.append();con.close();catch(SQLException e)System.out.println(e);return str;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图片设计 > 工程图纸

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com