myeclipse中类的格式


上面中的RunMain.java为程序执行的入口,JdbcUtil.java为实体类,XmlDocumentUtil.java执行解释xml文件与获取里面的属性,程序所需要导入的包为dom4j-1.6.1.jar与jaxen-1.1-beta-6.jar,jdbc.cfg.xml文件为需解释的xml文件
此程序下载

jdbc.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<jdbc-configurat5ion>
<jdbc-properties>
<driverClass>com.mysql.jdbc.Driver</driverClass>
<url>jdbc:mysql://192.168.0.254:3306/haiyin</url>
<username>root</username>
<password>root</password>
</jdbc-properties>
</jdbc-configurat5ion>

RunMain.java

package main;
import util.XmlDocumentUtil;
/**
* 程序运行入口-设定xml文件名后调用程序
* @author CccccYj
*/
public class RunMain {
public static void main(String[] args) {
String FILE_PATH = "config/jdbc.cfg.xml";
new XmlDocumentUtil(FILE_PATH);
}
}

RunMain首先定义文件的路径FILE_PATH,然后以此路径调用XmlDocumentUtil.java文件的有参构造函数进行执行XmlDocumentUtil.java类。

JdbcUtil.java

package pojo;
/**
* jdbc-实体类
* @author CccccYj
*
*/
public class JdbcUtil {
/** 数据库驱动 */
private String driverClass;
/** 数据库连接字段 */
private String url;
/** 用户名 */
private String username;
/** 用户密码 */
private String password;
public String getDriverClass() {
return driverClass;
}
public void setDriverClass(String driverClass) {
this.driverClass = driverClass;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

实体类,对应xml文件里面的属性。

XmlDocumentUtil.java

package util;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import pojo.JdbcUtil;
/**
* 获取xml文件与里面的properties属性
* @author CccccYj
*
*/
public class XmlDocumentUtil {
JdbcUtil jdbcUtil = new JdbcUtil();
/** 获取xml文件 */
public XmlDocumentUtil(String FILE_PATH) {
SAXReader saxReader = new SAXReader();
try {
Document doc = saxReader.read(FILE_PATH);
jdbcProperties(doc);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/** 获取xml文件中的properties属性 */
private void jdbcProperties(Document doc){
Element driverClass = (Element) doc
.selectObject("/jdbc-configurat5ion/jdbc-properties/driverClass");
jdbcUtil.setDriverClass(driverClass.getStringValue());
System.out.println("FILE_PATH:"+doc.selectObject("/jdbc-configurat5ion"));
System.out.println("driverClass:"+jdbcUtil.getDriverClass());
}
}

saxReader.read(String file)方法读取xml文件,此时是dom4j-1.6.1.jar包在起作用。
.selectObject方法进行对xml文件里面属性的读取,注意到jdbc-configurat5ion了没有?就是说xml里面的属性名可以自定义的。

读取XML文件内容的更多相关文章

  1. Qt QtXml读取xml文件内容

    Qt QtXml读取xml文件内容 xml文件内容 <?xml version="1.0" encoding="UTF-8"?> <YG_RT ...

  2. 通过Java读取xml文件内容

    读取XML中的内容就需要对XML进行解析,目前对XML进行解析的方法分为四种: 下面解析的方法是DOM4J,需要下载jar包dom4j:https://dom4j.github.io/ package ...

  3. php读取xml文件内容,并循环写入mysql数据库

    <?php $dbconn = mysql_connect("localhost","root","root"); $db = mys ...

  4. JS通过ajax动态读取xml文件内容

    http://www.sharejs.com/codes/javascript/8178 HTML文件代码如下 <!DOCTYPE html> <html> <head& ...

  5. dom4j读取XML文件内容

    <?xml version="1.0" encoding="UTF-8"?> <RESULT> <VALUE> <NO ...

  6. 读取xml文件内容到数据库

    前言 前言不搭后语·················· 内容 听某个大牛说他们的公司常常会涉及到从xml文件中读数据到写入到数据库,序列化的时候会遇到这这个问题,将要持久化的数据到xml文件存储起来, ...

  7. 用Java读取xml文件内容

     在AXP中,DOM解析器是1 Document Builder类的一个实例,该实例由 DocumenBailderfactorv类负责创,步如下  DocumentBuilderFactory fa ...

  8. java Domj4读取xml文件

    先概括,再以代码形式给出. 获取节点: Iterator  Element.nodeIterator();  //获取当前标签节点下的所有子节点 获取 标签: Element Document.get ...

  9. selenium-python读取XML文件

    首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?><info> <ba ...

随机推荐

  1. Confluence 6 workbox 包含从 Jira 来的通知

    如果你的 Confluence 站点链接了一个 Jira 应用,你可以包含从 Jira 应用来的通知,例如 Jira 软化或 Jira 服务器桌面. 希望包含有从 Jira 应用来的通知: 你的 Ji ...

  2. 【JS】中ajax的URL中包含中文,后台接收乱码

    [问题]ajax提交get请求,url中参数包含中文,后台接收到显示乱码. [解决方案]前台: function getSiteInfoByName(siteName){ var res; $.aja ...

  3. 后RCNN时代的物体检测及实例分割进展

    https://mp.weixin.qq.com/s?__biz=MzA3MzI4MjgzMw==&mid=2650736740&idx=3&sn=cdce446703e69b ...

  4. css 选择器/table属性/type 属性

    css   style样式---要写单位px style=" width: 200px; height :300px;" ;是结束符              

  5. flutter No material widget found textfield widgets require a material widget ancestor

    Error states that TextField widgets require a Material widget ancestor. Simply wrapping your whole l ...

  6. 三.NFS存储服务

    01. 课程回顾 备份服务概念介绍(rsync备份服务利用相应算法,实现增量数据同步) 备份服务工作方式说明: 1. 本地数据备份同步方式(类似cp命令) 2. 远程数据备份同步方式(类似scp命令) ...

  7. Linux基础实操六

    实操一: 临时配置网络(ip,网关,dns)+永久配置 #ifconfig ens33 192.168.145.134/24 #vim /etc/resolv.conf #route add defa ...

  8. 常见的排序算法(直接插入&选择排序&二分查找排序)

    1.直接插入排序算法 源码: package com.DiYiZhang;/* 插入排序算法 * 如下进行的是插入,排序算法*/ public class InsertionSort {    pub ...

  9. 2018.8.1 状压 CF482C 题解

    noip2016考了一道状压dp,一道期望dp 然而这题是状压期望dp... 所以难度是什么,省选noi吗... 怎么办... 题目大意: 给定n个字符串,甲从中任选出一个串(即选出每个串的概率相同为 ...

  10. reactnative的js里的super的作用

    class Blink extends Component{ constructor(props){ super(props); this.state = { showText: true }; se ...