JAVA资格认证:JAVA读取XML文件详解

JAVA资格认证:JAVA读取XML文件详解,第1张

JAVA资格认证:JAVA读取XML文件详解,第2张

1.有很多时候我们需要将相关的动态信息保存到XML文件中,这样就可以动态输入相关信息。特别是对于数据库操作,非常灵活。现在,如果项目中操作数据库的包是model,我们的XML文件db.xml就存储在其中。现在,让我们看看如何解析相关数据并调用它。
第一类:
套餐模式;
导入org . XML . sax . attributes;
import org . XML . sax . helpers . default handler;
导入org . XML . sax . sax exception;
导入Java . util . properties;
//使用DefaultHandler的好处是不用显示所有的方法。
public class config parser扩展default handler {
//定义一个属性来存储dbhost dbuser db password
Private Properties props的值;
私有字符串currentSet
私有字符串currentName
私有string buffer current value = new string buffer();
// Builder初始化props
public config parser(){
this . props = new properties();
}
public Properties get props(){
return this . props;
}
/定义开始分析元素的方法。这里提取了中的xxx这个名字。
Public Void StartElement(字符串URI,字符串本地名,字符串QName,属性Attributes)抛出sax exception {
current value . delete(0,current value . length());
this . current name = qName;
}
/这里是将值加到currentvalue之间
public void characters(char[]ch,int start,int length)抛出sax exception {
current value . append(ch,start,length);
}
/见面后将之前的名字和值一一对应保存在props中
public void end element(String uri,string local name,String qName)throws sax exception {
props . put(qName . tolowercase(),currentValue.toString()。trim());
}
}
可以直接复制使用。
第二类:
套餐模式;
导入Java . util . properties;
import javax . XML . parsers . parserconfigurationexception;
导入javax . XML . parsers . sax parser;
导入javax . XML . parsers . saxparserfactory;
导入org . XML . sax . sax exception;
导入Java . net . URL;
public class parse XML {
//定义一个属性来存储dbhost dbuser dbpassword的值
private Properties props;
//here ' s props
public properties get props(){
return this . props;
}
public void parse(string filename){
/objectify our parser
config parser handler = new config parser();
// Get SAX factory对象
saxparserfactory factory = saxparserfactory . new instance();
factory . setnamespace aware(false);
factory . set validating(false);
// Get SAX解析
SAX parser parser = null;
try {
parser = factory . newsaxparser();
} catch(Exception E1){
E1 . printstacktrace();
} URL confURL = null;
//获取配置文件myenv.xml所在的目录。在tomcat中是在we b-INF/classes
/在下面的例子中,BeansConstants是一个用来存储xml文件中的配置信息的类,它可以替换或定义
try {
con URL = parse xml . class . get .
//只需输入我们需要的XML文件的名称!
}catch(异常e){
system . out . print(e . tostring());
}
try
{//将解析器与被解析对象myenv.xml连接,开始解析
parser . parse(conurl . tostring(),handler);
//其他应用程序在获得解析成功的属性后,只需调用本程序的props
props = handler . get props(),即可提取属性名称和值;
}catch(异常e){
system . out . println(e . tostring());
} finally {
factory = null;
parser = null;
handler = null;
}
}
}
下面是我们需要调用的XML文件的内容:

localhost
Tianya _ speed _ test
root包括数据库主机地址、数据库名称、用户名和密码。好了,现在准备工作已经完成了。现在可以考虑一下如何调用我们刚刚解析的内容了:
public void init variable(){
parse XML test = newparsexml();
try {
test . parse(" model/db . XML ");//指示实际的XML文件位置。如果找不到,则空指针异常!
}catch(异常e){
system . out . print(e . tostring());
}
Properties pro = test . get props();//获取PRO对象,用它调用相关属性!
dbServer = pro . getproperty(" dbhost ");//相当于Python中的字典类型。
dbName = pro . getproperty(" dbName ");
dbUser = pro . getproperty(" dbUser ");
db pwd = pro . getproperty(" db password ");
}
TCP . valid node _ checking = yes
# IP允许访问
tcp.invited _ nodes = (ip1,ip2,...)
# IP不允许访问

以后,如果在项目过程中需要使用XML来配置数据库或其他相关信息,可以使用这种方法。简单实用!

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » JAVA资格认证:JAVA读取XML文件详解

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情