基于Struts+Spring+JDBC架构的课程设计实训教学示例项目——《网上银行账户管理系统》——在项目中实现对XML文件进行解析的各种功能.doc
《基于Struts+Spring+JDBC架构的课程设计实训教学示例项目——《网上银行账户管理系统》——在项目中实现对XML文件进行解析的各种功能.doc》由会员分享,可在线阅读,更多相关《基于Struts+Spring+JDBC架构的课程设计实训教学示例项目——《网上银行账户管理系统》——在项目中实现对XML文件进行解析的各种功能.doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于Struts+Spring+JDBC架构的课程设计实训教学示例项目网上银行账户管理系统在项目中实现对XML文件进行解析的各种功能1.1.1 在项目中实现对XML文件进行解析的各种功能1、添加一个对XML进行解析的JavaBean组件的接口及实现类(1)接口名称为XMLInformationConfig,包名称为(2)设计该接口package com.px1987.webbank.util;import com.px1987.webbank.exception.*;public interface XMLInformationConfig public void xmlInit(String
2、 configFilePathAndName) throws WebBankException;2、为上面的接口提供一个实现类(1)添加SAXInformationConfig类类名称为SAXInformationConfig,包名称为,基类为tHandler(采用SAX技术)。(2)编程该SAXInformationConfig类package com.px1987.webbank.util;import org.xml.sax.helpers.DefaultHandler;import com.px1987.webbank.exception.WebBankException;import
3、 java.io.*;import org.xml.sax.Attributes;ion;import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;public class SAXInformationConfig extends DefaultHandler implements XMLInformationConfigprivate String marqueeText = ;public String getMarqueeText()return marqueeText;public SAXI
4、nformationConfig()/* * 读取配置文件信息,并设置相关参数。 * param configFileName String 配置文件路径及文件名。 */public void xmlInit(String configFilePathAndName) throws WebBankExceptionSAXParserFactory saxParserFactory = null;SAXParser saxParser = null;saxParserFactory = SAXParserFactory.newInstance(); /获取SAX工厂对象saxParserFact
5、ory.setNamespaceAware(false);saxParserFactory.setValidating(false);trysaxParser = saxParserFactory.newSAXParser(); /创建出SAX解析/*将解析器和解析对象XMLDOMData.xml联系起来,同时指定事件回调方法的对象开始解析*/saxParser.parse(new File(configFilePathAndName), this);catch (javax.xml.parsers.ParserConfigurationException pe)throw new WebBa
6、nkException(在SAXInformationConfig类中的xmlInit方法中出现ParserConfigurationException);catch (SAXException se)throw new WebBankException(在SAXInformationConfig类中的xmlInit方法中出现SAXException);catch (java.io.IOException ioe)throw new WebBankException(在SAXInformationConfig类中的xmlInit方法中出现IOException);catch (Exceptio
7、n ex)throw new WebBankException(在SAXInformationConfig类中的xmlInit方法中出现Exception);finallysaxParserFactory = null;saxParser = null;private String tagElementName = null;/定义开始解析元素的方法. 这里是将中的名称xxx提取出来.public void startElement(String uri, String localName, String qName, Attributes attributes)throws SAXExcep
8、tionthis.tagElementName = qName; /获得该标签的名称/这里是将之间的标签体的值加入到currentValuepublic void characters(char ch, int start, int length) throws SAXExceptionString tagBodyText = new String(ch, start, length); /获得标签体的文字串内容if (this.tagElementName.equals(marquee-text) & !tagBodyText.trim().equals()marqueeText = tag
9、BodyText;3、为SAXInformationConfig实现类提供一个工厂类XMLInformationConfigFactory(1)用来统一创建XMLInformationConfig接口的对象实例名称为XMLInformationConfigFactory类,包名称为 ,并且从类继承。(2)编程该XMLInformationConfigFactory类package com.px1987.webbank.factory;import java.util.Observable;import com.px1987.webbank.config.ClassNameConfig;ebba
10、nk.exception.WebBankException;import com.px1987.webbank.util.*;public class XMLInformationConfigFactory extends Observable public XMLInformationConfigFactory() public XMLInformationConfig newXMLInformationConfigBean(String xmlInformationConfigImpleClassName) throws WebBankExceptionXMLInformationConf
11、ig oneXMLInformationConfigImple=null;Class oneClass=null;try oneClass = Class.forName(xmlInformationConfigImpleClassName); catch (ClassNotFoundException e)int logImpleKind=Integer.parseInt(ClassNameConfig.getProperty(logImpleKind);this.addObserver(LogInfoFactory.newLogInstance(logImpleKind);this.set
12、Changed(); /注意要设置变化点notifyObservers(e);/当出现异常时将通知各个观察者throw new WebBankException(不能正确地获得+xmlInformationConfigImpleClassName+类);try oneXMLInformationConfigImple = (XMLInformationConfig)oneClass.newInstance(); catch (InstantiationException e)int logImpleKind=Integer.parseInt(ClassNameConfig.getPropert
13、y(logImpleKind);this.addObserver(LogInfoFactory.newLogInstance(logImpleKind);this.setChanged(); /注意要设置变化点notifyObservers(e);/当出现异常时将通知各个观察者throw new WebBankException(不能正确地创建+xmlInformationConfigImpleClassName+类的对象实例); catch (IllegalAccessException e)int logImpleKind=Integer.parseInt(ClassNameConfig.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上银行账户管理系统 基于 Struts Spring JDBC 架构 课程设计 教学 示例 项目 网上银行 账户 管理 系统 实现 XML 文件 进行 解析 各种 功能
链接地址:https://www.taowenge.com/p-61840968.html
限制150内