- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
快递状态查询系统java课程设计
目 录
1 课题介绍 1
1.1 课程设计目的 1
1.2 课程设计要求 1
2 总体设计 2
2.1 程序的模块划分 2
2.2 程序模块图 2
2.3程序测试效果图 2
3 详细设计 3
3.1 文件下载模块的实现 3
3.2 XML解析模块的实现 4
3.3 图形界面模块的实现 5
4 问题与解决 8
5 课程设计心得 9
6 参考文献 10
1 课题介绍
1.1 课程设计目的
课程设计题目:快递状态查询系统
通过java下载网上提供的XML接口文件,并将获取的XML数据解析后以文字或图片形式显示到图形界面上。
1.2 课程设计要求
将在网上下载的XML进行数据解析后以文字或图片形式显示到图形界面上榜。
2 总体设计
2.1 程序的模块划分
根据课题要求和程序需求,本快递状态查询系统总体上划分为如下四个模块:图形界面外模块(Frame类)、图形界面内模块(MyFrame类),文件下载模块(Downloader类)和XML数据解析模块(XML类)。程序的模块结构如图2-1所示。
(1)图形界面模块
先在图形界面上设置标签,文本框,按钮,文本区,调用Downloader类下载文件,然后写入文件”kuaidi.xml”中,调用XML类解析文件。
(2)文件下载模块
创建一个URL对象,创建Http链接,调用openConnection方法,使用IO流输出数据,每次读取一行数据,将它添加到StringBuffer对象后面,抛去异常,关闭IO流,将数据转为String对象返回出去。
(3)文件解析模块
创建一个解析器工厂,在其基础上创建一个解析器,开始解析文件。解析文件中的元素,若标签中的元素和正在解析的标签的名字一样,输出标签内的内容。
2.2 程序模块图
图2-1 程序流程图
2.3程序测试效果图
2-2 程序效果图
3 详细设计
3.1 文件下载模块的实现
首先从程序主界面上的文本输入框中获取用户输入的待查询订单号,并将该订单号作为参数拼接到课题所规定的服务器查询地址中。比如:若用户在界面输入“6215530004”,则拼接得到的查询地址为“/apione?com=yuantong”。
然后将该查询地址传递给文件下载模块,通过该地址即可实例化一个URL对象,该URL对象打开一个HTTP连接后,通过该HTTP连接的getInputStream()方法将获取到服务器对上述查询地址响应的XML接口数据字节流。
最后将该字节流转换为字符流(InputStreamReader),再将字符流转换为带缓冲区的字符流(BufferReader),就可以利用BufferReader类提供的readLine()方法按行读取服务器返回的XML接口数据了。
以上过程的具体实现代码如下:
public class Downloader{
private URL url = null ;
public String download(String urlStr){
StringBuffer sb = new StringBuffer();//字符缓冲区
String line = null ;
BufferedReader buffer = null ;//字符输入流
try {
url = new URL(urlStr);
HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();//使用 ur1 创建 HttpsURLConnection。
buffer = new BufferedReader(new InputStreamReader(urlConn.getInputStream(),UTF-8));
while((line = buffer.readLine())!=null){
sb.append(line);
}
}catch(Exception e){
e.printStackTrace();
}finally{
try{
buffer.close();
}catch(Exception e){
e.printStackTrace();
}
}
return sb.toString();
}
}
3.2 XML解析模块的实现
先创建一个SAXParserFactory,然后引用characters类得到标签里面的内容。
以上过程的具体实现代码如下:
public class XML extends DefaultHandler { //适配器模式
public String str=,str1=;
您可能关注的文档
最近下载
- 家庭与社区的变化与发展.pptx VIP
- 丙肝防治培训课件.pptx VIP
- 《食物链》.ppt VIP
- 2025年辽宁丹东市融媒体中心招聘6人笔试模拟试题参考答案详解.docx VIP
- 2018湖北省市政工程定额(第十一册措施项目)PDF版.pdf VIP
- 4.1和面、揉面、饧面、搓条(课件)- 《中式面点制作基础教程》同步教学(劳保版).pptx VIP
- 2025年丹东市融媒体中心招聘考试笔试试题.docx VIP
- 铁路技术管理规程(普速铁路部分)题库 .pdf VIP
- 中国失眠症诊断和治疗指南(精选PPT).pptx VIP
- 2025年马鞍山市公安局第三季度招聘警务辅助人员139名笔试参考题库附答案解析.docx VIP
文档评论(0)