xml在线相册系统论文Word文档格式.docx
- 文档编号:8234348
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:23
- 大小:44.48KB
xml在线相册系统论文Word文档格式.docx
《xml在线相册系统论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《xml在线相册系统论文Word文档格式.docx(23页珍藏版)》请在冰点文库上搜索。
1、账号管理:
将用户的账号信息存储于系统中,管理员登录后可以管理用户,例如普通用户登录、注册账号、修改账号信息等。
2、相片管理:
这是系统的核心功能,用户登录后可以上传相片和浏览相片,并可以对相片发表评论。
3、留言管理:
用户登录后可以执行添加留言的操作。
4、XML简介:
这是显示自己对XML总结。
根据这些功能要求,设计的系统功能模块如图1所示。
图1系统功能模块
根据上面的功能,运用XML+jsp+javaBean的技术设计出了如图2的在线系统网站。
图2
第二章系统XML文件的设计
根据系统的设计要求和模块功能分析,本节将分析和设计系统中用于存储数据的XML文件。
根据系统中所要存储的信息,我们需要创建如下XML文件。
user.xml。
pictures.xml。
messages.xml。
comments.xml。
这些XML文件的详细信息如下。
1、user.xml
users.xml文件用来保存管理员和普通用户的账号信息,该文件的定义格式如下:
<
?
xmlversion="
1.0"
encoding="
GBK"
>
users>
<
user>
userid>
YB<
/userid>
password>
222222<
/password>
name>
bob<
/name>
sex>
male<
/sex>
age>
20<
/age>
tel>
22222<
/tel>
address>
fafa<
/address>
email>
test@<
/email>
type>
User<
/type>
/user>
LWY<
111111<
liwenyan<
sex/>
21<
234235<
ffsaadds<
afaa@sdf.g<
Admin<
/users>
其中,第一行的<
是XML文件的根标签,每个<
表示一个账户的信息,第3行的<
标签表示帐号的用户名,第4行的<
标签表示帐号的密码,第5行的<
标签表示用户的姓名,第6行的<
标签表示用户的性别,第7行的<
标签表示用户的年龄,第8行的<
标签表示用户的电话,第9行的<
标签表示用户的地址,第10行的<
标签表示用户的邮箱地址,第11行<
标签表示用户的类型,如果上述标签为空标签则表示该标签的内容为空。
2.pictures.xml
Pictures.xml文件用来保存用户上传得相片信息,该文件的定义格式如下:
pictures>
picture>
title>
example1<
/title>
content>
YB_1320579219863_c.jpg<
/content>
datetime>
2011-11-0607:
33下午<
/datetime>
/picture>
example2<
liwenyan_1320579280995_a.jpg<
34下午<
example3<
liwenyan_1320579289496_b.jpg<
/pictures>
其中,第1行的<
标签时XML文件的根标签,每个<
标签表示一个相片的信息,第3行的<
标签表示相片的标题,第4行的<
标签表示相片的文件名,第5行的<
标签表示相片的上传时间,第6行的<
标签表示上传相片的帐号的用户名。
3.messages.xml
Messages.xml文件用来保存用户的留言信息,该文件的定义格式如下:
messages>
message>
test1<
ajfannnxn,mnjakyuikjhasfbn,.,lajkklfjaf;
sdht<
36下午<
/message>
test<
afaavvvvvvvvvvvvvvvvvvvvvvvvvv<
/messages>
其中,第1行的<
标签表示一条留言信息,id属性是自动添加的留言的编号,第3行的<
标签表示留言的标题,第4行的<
标签表示留言的内容,第5行的<
标签表示留言的添加时间,第6行的<
标签表示留言帐号的用户姓名。
ments.xml
comments.xml文件用来保存用户对相片的评论信息,该文件的定义格式如下:
comments>
comment>
beautiful<
filename>
/filename>
/comment>
ok<
43下午<
/comments>
其中,第1行的<
标签表示一条相片的评论信息,第3行的<
标签表示评论的内容,第4行的<
标签表示评论的相片的文件名,第5行的<
标签表示发表评论的时间,第6行的<
标签表示发表的评论的帐号的用户名。
第三章账户管理模块的设计
为保证系统的安全性,用户只有登录后才可以对系统进行操作,因此,需要对用户登录信息进行验证,用户登录又分为管理员登录和普通用户登录,不同身份的用户登录系统后将具有不同的操作权限,以管理员身份登录后可以注册新用户以及修改现有用户的信息。
3.1管理员登录
管理员登录页面主要用于接收管理员输入的帐号名称和密码,以便与XML文件中存储的帐号和密码进行比较。
管理员登录页面如图3所示。
图3
输入登录的管理帐号和密码后,单击“登录”按钮,将把登录信息提交给DoLogin.jsp页面,该页面的代码如下。
%@pagecontentType="
text/html;
charset=GBK"
%>
jsp:
useBeanid="
UserAdmin"
scope="
page"
class="
com.mg.admin.UserAdmin"
/>
%
UserAdmin.setRootPath(application.getRealPath("
/data/"
));
Stringuid=request.getParameter("
account"
);
Stringpwd=request.getParameter("
pwd"
Stringresult=UserAdmin.login(uid,pwd);
if((result.equals("
Admin"
))||(result.equals("
User"
))){
session.setAttribute("
LoginSign"
"
True"
UID"
uid);
Type"
result);
response.sendRedirect("
loginsuccess.jsp"
}else{
loginfailed.jsp"
}
在该页面的第4行设置获取XML文件的路径,第5—6行接收登录用户提交的帐号和密码,第7行调用JavaBean中的检查用户登录是否成功的方法,第8行判断登录用户的身份,并将用户登录成功的表示以及登录用户的级别保存在瑟session中,第12行表示登录成功则壮乡登录成功页面,第14行表示登录失败则转向登录失败页面。
在该页面中首先引入JavaBean类UserAdmin,在该类中定义了负责解析XML文件的方法,该类中的验证登录用户身份是否合法的login()方法的具体定义代码如下。
publicStringlogin(Stringuid,Stringpwd){
Documentdoc=getDoc();
if(doc!
=null){//获取根节点
Elementroot=doc.getRootElement();
Listlist=root.getChildren();
Iteratorlist_i=list.iterator();
while(list_i.hasNext()){//获取子节点
Elemente=(Element)list_i.next();
//获取二级子节点
Iteratorrow_i=e.getChildren().iterator();
while(row_i.hasNext()){
Elementee=(Element)row_i.next();
if(ee.getName().equals("
userid"
)){
if(!
ee.getText().equals(uid)){
break;
}}
password"
ee.getText().equals(pwd)){
type"
returnee.getText();
}}}}
return"
"
;
}
在该类中,第4行获取XML文档的根节点,第8行获取根节点的子节点,第9行获取根节点的二级子节点,第12-22行判断输入的登录帐号和密码是否与XML文档中存储的相吻合。
3.2注册帐号
以管理员的身份登录后,单击系统主页面左侧菜单栏中的“注册帐号”链接,将显示如图4所示的注册帐号页面。
图4
在该页面中可以输入新注册帐号的各种信息,其中,在输入新帐号名称的时候,可以单击右边的“检测帐号”链接来检测在系统中是否已经存在该名称的帐号。
这个操作将有JavaBean泪UserAdmin中的checkUser()方法完成,该方法的具体定义代码如下。
publicbooleancheckUser(Stringuid){
=null){
Listlist;
//获取根节点
list=root.getChildren();
if((ee.getName().equals("
))&
&
(ee.getText().equals(uid))){
returntrue;
returnfalse;
}
该方法中第5行获取XML文档的根节点,第9行获取子节点,第10行获取二级子节点,在第11-15行开始遍历所有子节点,用来检测是否新注册的用户名已经存在。
如果该方法返回false,则表示该用户名在系统中不存在,可以使用。
然后在页面中单击“注册”按钮,则可以将新注册的帐号信息保存到users.xml。
该操作将由JavaBean类UserAdmin中的register()方法完成,该方法的具体定义代码如下。
publicbooleanregister(Stringuid,Stringpwd,
Stringname,Stringsex,
Stringage,Stringtel,
Stringaddress,Stringemail){
booleanret=false;
Documentdoc=getDoc();
ElementnewE=newElement("
user"
ElementeUserID=newElement("
eUserID.setText(uid);
newE.addContent(eUserID);
ElementePassword=newElement("
ePassword.setText(pwd);
newE.addContent(ePassword);
ElementeName=newElement("
name"
eName.setText(name);
newE.addContent(eName);
ElementeSex=newElement("
sex"
eSex.setText(sex);
newE.addContent(eSex);
ElementeAge=newElement("
age"
eAge.setText(age);
newE.addContent(eAge);
ElementeTel=newElement("
tel"
eTel.setText(tel);
newE.addContent(eTel);
ElementeAddress=newElement("
address"
eAddress.setText(address);
newE.addContent(eAddress);
ElementeEmail=newElement("
email"
eEmail.setText(email);
newE.addContent(eEmail);
ElementeType=newElement("
eType.setText(USER_TYPE_USER);
newE.addContent(eType);
root.addContent(newE);
//list.add(newE);
//保存修改
save(doc);
ret=true;
returnret;
在该方法的第8行获取XML文档的根节点,第10-38行创建表示帐号信息的<
元素及其子元素,第39行调用底48-59行定义的save()方法,将添加的元素添加到根元素上。
3.3修改帐号信息
单击系统主页面左侧菜单栏中的“修改信息”链接,将显示如图5所示的修改帐号信息页面。
图5
我们可以看到,在该页面中将首相显示当前登录帐号的信息,这是由JavaBean类UserAdmin中的getUserInfo()方法完成的,该方法的具体定义代码如下。
publicHashtablegetUserInfo(Stringuid){
Hashtableht=newHashtable();
ElementuserNode=null;
userNode=e;
}}//找到user节点后,退出循环
if(userNode!
row_i=userNode.getChildren().iterator();
ht.put(ee.getName(),ee.getText());
}}}
returnht;
该方法的第5行获取XML文档的根节点,第10行获取根节点的子节点,第11行获取二级子节点,第12-18行对这些子节点进行循环遍历,直到第20行判断是否找到user节点,如果找到,则退出循环。
用户可以在页面中修改帐号的信息,修改完成后,点击“保存”按钮,将把修改后的账号信息保存到users.xml文件中。
该操作将由JavaBean类UserAdmin中的modify()方法完成,该方法的具体定义代码如下:
publicbooleanmodify(Stringuid,Stringpwd,
Stringname,Stringsex,
Stringage,Stringtel,
Stringaddress,Stringemail){
String[]params=newString[8];
params[0]=uid;
params[1]=pwd;
params[2]=name;
params[3]=sex;
params[4]=age;
params[5]=tel;
params[6]=address;
params[7]=email;
Elemente
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- xml 在线 相册 系统 论文
![提示](https://static.bingdoc.com/images/bang_tan.gif)