欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    《XML编程技术》马可课程设计报告.doc

    • 资源ID:52218930       资源大小:145KB        全文页数:18页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《XML编程技术》马可课程设计报告.doc

    <pictures> <picture> <title>test</title> <content>Robert_34_small.jpg</content> <datetime>2011-11-03 10:30 上午</datetime> <userid>Robert</userid> </picture> <picture> <title>test1</title> <content>sun_93_sun.jpg</content> <datetime>2011-11-04 13:30 下午</datetime> <userid>sun</userid> </picture> <picture> <title>jxf</title> <content>Robert_81_test.jpg</content> <datetime>2011-11-03 19:30 下午</datetime> <userid>Robert</userid> </picture></pictures>3、messages.xml:用来保存用户的留言信息 <messages> <message> <title>test</title> <content>My Messages</content> <datetime>2011-11-04 12:20 下午</datetime> <userid>Robert</userid> </message></messages>4、comments.xml:用来保存用户对相片的评论信息 <comments> <comment> <content>123</content> <filename>RL_35_Winter.jpg</filename> <datetime>2011-11-03 10:18 下午</datetime> <userid>RL</userid> </comment> <comment> <content>good</content> <filename>Robert_34_small.jpg</filename> <datetime>2011-11-03 10:43 下午</datetime> <userid>Robert</userid> </comment></comments>二、账户管理模块的设计为了保证系统的安全性,用户只有登录后才可以对系统进行操作,因此需要对用户登录信息验证,用户登录又分为管理员和普通用户,不同身份系统将给予不同权限。1、管理员登录输入账号密码把信息提交给DoLogin.Jsp 代码如下<% page contentType="text/html;charset=GBK"%><jsp:useBean id="UserAdmin" scope="page" class="com.qdu.sun.UserAdmin"/><%UserAdmin.setRootPath(application.getRealPath("/data/");String uid = request.getParameter("account");String pwd = request.getParameter("pwd");String result = UserAdmin.login(uid, pwd);if (result.equals("Admin") | (result.equals("User") session.setAttribute("LoginSign", "True"); session.setAttribute("UID", uid); session.setAttribute("Type", result); response.sendRedirect("loginsuccess.jsp"); else response.sendRedirect("loginfailed.jsp");%>2、注册账号注册新用户信息将被存到users.xml中由register()完成 代码如下<% page contentType="text/html;charset=GBK"%><jsp:useBean id="UserAdmin" scope="page" class="com.qdu.sun.UserAdmin"/><%UserAdmin.setRootPath(application.getRealPath("/data/"); String sex = request.getParameter("sex"); if (sex.equals("2") sex = "female" else sex = "male" if (UserAdmin.register(request.getParameter("account"), request.getParameter("pwd"), request.getParameter("name"), sex, request.getParameter("age"), request.getParameter("tel"), request.getParameter("address"), request.getParameter("email") out.print("<title>注册账号</title>");out.print("<body>");out.print("<font color=white size=2> 注册成功!</font>"); else out.print("<title>注册账号</title>");out.print("<body>");out.print("<font color=white size=2> 注册失败!</font>");%>3、修改账号信息用户在页面中修改账号信息单击保存按钮,把修改的信息保存到users.xml中,该操作由modify()完成,其代码如下<% page contentType="text/html;charset=GBK"%><jsp:useBean id="UserAdmin" scope="page" class="com.qdu.sun.UserAdmin"/><%UserAdmin.setRootPath(application.getRealPath("/data/"); String myUID = (String)session.getAttribute("UID"); String sex = request.getParameter("sex"); if (sex.equals("2") sex = "female" else sex = "male" if (UserAdmin.modify(myUID, request.getParameter("pwd"), request.getParameter("name"), sex, request.getParameter("age"), request.getParameter("tel"), request.getParameter("address"), request.getParameter("email") out.print("<title>修改帐号</title>");out.print("<body");out.print("<font color=black size=2> 修改成功!</font>"); else out.print("<title>修改帐号</title>");out.print("<body>");out.print("<font color=red size=2> 修改失败!</font>");%>一、 相片管理模块的设计登陆后可以上传和浏览评论照片,为了保护隐私用户之间不能互相访问。1、 上传相片单击上传 如图代码upload() 如下<% page contentType="text/html;charset=GBK"%><% include file = "./admin/CheckPermission.jsp" %><html> <head> <meta http-equiv="Content-Type"content="text/html; charset=gb2312"> <link href="./style.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="eeeeee"> <p align="center"> <form action="upload_post.jsp" method="post" enctype="multipart/form-data" name="form1"> 标题:<input name="title" type="input" id="file_title" size="100"> <br> <p align="center"> <input name="file_data" type="file" id="file_data" size="80"> <input type="submit" name="Submit" value="上传"> </p> </form> </body></html>2、浏览相片由browsephoto()完成 代码如下<% page contentType="text/html;charset=GBK"%><% include file = "./admin/CheckPermission.jsp" %><% include file = "./config.jsp" %><jsp:useBean id="pictureAdmin" scope="page" class="com.qdu.sun.PictureAdmin"/><% page import="com.qdu.sun.*" %><% page import="java.util.*" %><html> <head> <meta http-equiv="Content-Language" content="zh-cn"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>相片</title> </head><body> <p align="center"><font face="华文行楷" size="5">浏览照片</font></p> <br> <table border="0" cellspacing="16" style="border-collapse: collapse" bordercolor="#" width="100%" id="AutoNumber2" height="280"><% String uid = (String)session.getAttribute("UID"); pictureAdmin.setRootPath(application.getRealPath("/data/"); Vector pictures = pictureAdmin.getPictures(uid); int i = 0; while(i<pictures.size() %> <tr> <% /每行2列 for(int j=0;j<2;j+,i+) if (i<pictures.size() Picture picture = (Picture)pictures.get(i); if (picture!=null) String path = application.getRealPath("/") + PictureAdmin.UP_LOAD_FOLDER + "" + uid +"" String smallPath = path + "small" String filename = picture.getFileName(); if (pictureAdmin.createSmallPicture(picture, path, uid) %> <td width="33%" height="217"> <table border="0" cellspacing="0" width="100%" id="AutoNumber3" style="border-collapse: collapse; border-style: double; border-width: 0" bordercolor="#" height="100%" cellpadding="0"> <tr> <td width="100%" colspan="2" style="border-left-width: 3; border-right-width: 3; border-top-width: 3; border-bottom-style: dashed; border-bottom-width: 1; border-left-style:double; border-right-style:double; border-top-style:double" height="12" background="./images/login_top_gb.JPG"> 标题:<%=picture.getTitle()%> </td> </tr> <tr><td width="60%" height="97" style="border-left-style: double; border-left-width: 3; border-bottom-style: double; border-bottom-width: 3"><a href="photodetails.jsp?filename=<%=filename%>&title=<%=picture.getTitle()%>" target="mainFrame"><img src="./upload_img/<%=uid%>/small/<%=filename%>"> </img> </a> </td><td width="30%" height="97" style="border-right-style:double; border-right-width: 3; border-bottom-style: double; border-bottom-width: 3" align=left> <p align="left"><font size="1"> 用户名:<%=uid%> <br> 时间: <%=picture.getDateTime()%></font> </td> </tr> </table> </td> <% /if (picture!=null) /if (i<pictures.size() /for(int j=0;j<2;j+,i+) %> </tr> <% %> </table> </body></html>二、 留言管理模块的设计用户登录后可以添加和浏览留言,并可以删除自己发表的留言。1、添加留言输入标题和内容单击提交按钮把信息保存到message.xml中这个操作由addmessage()完成 代码如下<% page contentType="text/html;charset=GBK"%><% include file = "./admin/CheckPermission.jsp" %><% include file = "./config.jsp" %><jsp:useBean id="messageAdmin" scope="page" class="com.qdu.sun.MessageAdmin"/><jsp:useBean id="message" scope="page" class="com.qdu.sun.Message"/><% String uid = (String)session.getAttribute("UID"); String title = request.getParameter("title"); String content = request.getParameter("content"); if (uid=null) | (title=null) | (content=null) out.print("<title>添加留言</title>"); out.print("<body>"); out.print("<font color=white size=2> 添加失败,无效的系统参数!</font>"); else message.setTitle(title); message.setContent(content); message.setUser(uid); messageAdmin.setRootPath(application.getRealPath("/data/"); if (messageAdmin.add(message) /添加成功,重新显示留言页面 response.sendRedirect("msg.jsp"); else out.print("<title>添加留言</title>"); out.print("<body>"); out.print("<font color=white size=2> MessageAmin添加失败!</font>"); %>2、 删除留言单击删除留言由removemsg()完成<% page contentType="text/html;charset=GBK"%><% include file = "./admin/CheckAdminPermission.jsp" %><jsp:useBean id="messageAdmin" scope="page" class="com.qdu.sun.MessageAdmin"/><% page import="java.util.*" %><% page import="com.qdu.sun.*" %><html><head> <meta http-equiv="Content-Language" content="zh-cn"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>用户留言</title></head><body> <p align="center"><font face="华文行楷" size="5">用户留言</font></p> <table width="100%" height="119" border="0" cellpadding="3" cellspacing="0"><% messageAdmin.setRootPath(application.getRealPath("/data/"); Vector messages = messageAdmin.getMessages(); for(int i=0;i<messages.size();i+) Message message = (Message)messages.get(i); if (message!=null) %> <tr align="center" valign="middle"> <td background="./images/login_top_gb.JPG" width="50%" height="40" rowspan="0"> <p align="left"> 标题:<font size="1"><%=message.getTitle()%></font> </td> <td background="./images/login_top_gb.JPG" width="10%" height="40"> <a href="./messages/Doremovemsg.jsp?index=<%=i%>"> <font size="2" color="FFFFFFFF">删除</font> </a> </td> <td background="./images/login_top_gb.JPG" width="25%" height="40"> <p align="left"> 时间:<font size="1"><%=message.getDateTime()%></font> </td> <td background="./images/login_top_gb.JPG" width="15%" height="40"> <p align="left"> 用户:<font size="1"><%=message.getUser()%> </font> </td> </tr> <tr bgcolor="eeeeee"> <td width="594" align="center" valign="top" colspan="4" height="92"> <p align="left"> <%=message.getContent()%> </td> </tr> <% %> </table></body></html>五、简介XML代表Extensible Markup Language(eXtensible Markup Language的缩写,意为可扩展的标记语言)。与HTML相似,XML是一种显示数据的标记语言,它能使数据通过网络无障碍地进行传输,并显示在用户的浏览器上。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。XML是元标记语言关于XML要理解的第一件事是,它不只是像超文本标记语言(Hypertext Markup Language,HTML)或是格式化的程序。这些语言定义了一套固定的标记,用来描述一定数目的元素。如果标记语言中没有所需的标记,用户也就没有办法了。这时只好等待标记语言的下一个版本,希望在新版本中能够包括所需的标记,但是这样一来就得依赖于软件开发商的选择了。但是XML是一种元标记语言。用户可以定义自己需要的标记。这些标记必须根据某些通用的原理来创建,但是在标记的意义上,也具有相当的灵活性。例如,假如用户正在处理与家谱有关的事情,需要描述人的出生、死亡、埋葬地、家庭、结婚、离婚等,这就必须创建用于每项的标记。新创建的标记可在文档类型定义(Document Type Definition,在以后的篇幅中常简称为DTD)中加以描述。在本书的第二部分中将会学到有关DTD的更多的知识。现在,只需把DTD看作是一本词汇表和某类文档的句法。例如,在Peter Murray-Rust的Chemical Markup Language (化学标记语言,简写为CML)中的MOL.DTD文件中描述了词汇表和分子科学的句法:其中包括chemistry(化学)、crystallography(结晶学)、solid state physics(固体物理)等词汇。它包括用于atoms(原子)、molecules(分子)、bonds(化学键)、spectra(光谱)等的标记。这个DTD可与分子科学领域中的许多不同的人共享。对于其他领域也有其他的DTD,用户还可以创建自己的DTD。XML定义了一套元句法,与特定领域有关的标记语言(如MusicML、MathML和CML)都必须遵守。如果一个应用程序可以理解这一元句法,那么它也就自动地能够理解所有的由此元语言建立起来的语言。浏览器不必事先了解多种不同的标记语言使用的每个标记。事实是,浏览器在读入文档或是它的DTD时才了解了给定文档使用的标记。关于如何显示这些标记的内容的详细指令是附加在文档上的另外的样式单提供的。例如,考虑薛定格(Schrodinger)方程:科学论文中充满了这一类方程,但是科学家还必须等待多年,才能让浏览器的开发商支持书写最基本的数学公式所需的标记。音乐家也有同样的局限性,因为Netscape Navigator和Internet Explorer还都不支持乐谱。有了XML就意味着不必等待浏览器的开发商来满足用户的需要了。用户可以创建自己需要的标记,当需要时,告诉浏览器如何显示这些标记就可以了。 XML标记描述的是文档的结构和意义。它不描述页面元素的格式化。可用样式单为文档增加格式化信息。文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。 XML 的起源和目的 1 9 9 6 年,万维网协会(或者叫W 3 C ,h t t p : / / w w w. w 3 c . o rg )开始设计一种可扩展的标记语言,使其能够将S G M L 的灵活性和强大功能与已经被广泛采用的H T M L 结合起来。这种后来变成X M L 的语言继承了S G M L 的规范,而且实际上就是后者的一个子集。从S G M L 入手使得该设计小组能够将精力集中在简化已有的成果上。S G M L 已经提供了一种可以无限扩展的语言,它允许任何人能够根据自己的需要加以扩充。X M L 之所以要较S G M L 更为简化,很大程度上是出于易用性的考虑:人们对标记的读写过程应该使用现有的、简便通用的工具,同时,我们也应当简化计算机对文档和数据交换的处理。由于有太多的可选功能,S G M L 变得过于复杂,以至于很难编写出针对这种语言的普通解释器,而X M L 的解释器则简单得多。此外,X M L 使得现有的I n t e r n e t协议和软件更为协调,从而简化了数据处理和传输。作为一个不错的S G M L 子集,X M L 还保持了对现有的面向S G M L 的系统的向下兼容性,这样,用X M L 标记过的数据就仍然可以在这些系统中使用,为基于S G M L 的行业节省了大笔的改造费用,同时,与We b 的结合也使得它们更便于被访问。1998 年2 月,XML 1.0 成为了W3C 的推荐标准。包括Extended Backus-Naur Form (EBNF) 中语法标识在内的这个正式的规范可以很容易地从W 3 C 的We b 站点(h t t p : / / w w w. w 3 c . o rg / T R / R E C - x m l )上得到;此外,X M L 规范的制定者之一Tim Bray 还在h t t p : / / w w w. x m l . c o m / a x m l / t e s t a x m l . h t m 上提供了一个有着非常不错的注解的版本。在http:/www.ucc.ie/xml/上,由Peter Flynn 等人代表W3C 的XML 研究组维护的一个XML 1.0FAQ 还提供了到其他与XML 相关的主题的链接。X M L 是一种界定文本数据的简便而标准的方法。它曾经被人称作“We b 上的A S C I I 码”。就好像你可以使用自己喜爱的编程语言来创建任何一种数据结构,然后同其他人在其他计算平台上使用的其他语言来共享一样。X M L 的标记用来说明你所描述的概念,而属性则用来控制它们的结构。所以,你可以定义自己所设计出的语法并同其他人共享。  XML的特点:1  使用有意义的标记(TAG)HTML:给浏览器读取,不能传达数据的语义。XML:具有语义。2  数据的语义与显示方式分开HTML:决定数据显示方式的语言。XML:描述数据内容的语言,本身并不决定数据该如何显示,数据的显示由XSL决定。3  可自定义的标记HTML:标记由少数权威团体制定,种类有限且不能随意添加。XML:可由用户按需要增加标记。如数学标记语言MATHML、财经标记语言FPML、电子商务标记语言EBXML等。4  严格的语法控制HTML:语法规则比较多元化,具有较大灵活性。文件结构比较松散,不能很容易的转换为其他类型格式,比较难用程序来做大量而有效的处理,数据再利用的潜力大为降低。XML:对语法有严格的要求,所有XML的文件都必须经过严格的“验证”过程才算完成,文件格式容易转换。 XML的优点1.XML允许各种不同的专业(如音乐、化学、数学等)开发与自己的特定领域有关的标记语言。这就使得该领域中的人们可以交换笔记、数据和信息,而不用担心接收端的人是否有特定的软件来创建数据。2.XML具有较好的保值性.过去40年来的大多数计算机数据都丢失了,不是因为自然损害或是备份介质的磨损,而只是因为没有人来写出如何读取这些数据介质和格式的文档。以不常用的格式保存的二进制数据,数据也许会永远地消

    注意事项

    本文(《XML编程技术》马可课程设计报告.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开