- 浏览: 500977 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (156)
- xml (4)
- web前端 (24)
- jQuery (18)
- java (38)
- SQL (9)
- perl (2)
- OTRS (1)
- GWT (4)
- Linux (32)
- Maven (2)
- Spring (2)
- Oracle Win7 (1)
- css (8)
- eclipse (3)
- mysql (11)
- tomcat (5)
- git (4)
- javascript (22)
- font (1)
- android (1)
- log4j (1)
- email (1)
- sublime plugin (1)
- html (2)
- matches (1)
- php (3)
- apache (3)
- gd (1)
- docker (5)
- rails (1)
- RabbitMQ (1)
- Ubuntu (3)
- L2TP VPN (1)
- nodejs (1)
- oraclejet (1)
- ubutun (1)
- ntp (1)
- ngix (1)
- ssl (1)
- https (1)
- Linux,Debian (2)
- dpkg (1)
- pac (1)
- vi (1)
- vim (1)
- java,http (0)
- httpClient (0)
- shutter (1)
- shell (1)
- redmine (1)
最新评论
-
纵观全局:
配置之后,连接显示不是私密连接
keytool生成证书与Tomcat SSL配置 -
zhuchao_ko:
可以 伪造
java获得ip地址 -
longhua2003:
代码太乱了
java下载文件 -
tomhat:
ccx410 写道 安装gwt报错,unable to ret ...
GWT CellTable -
ccx410:
安装gwt报错,unable to retrieve osgi ...
GWT CellTable
1、如果只是创建一个XML文件,那么只需要导入dom4j-1.6.1.jar就可以了,路径如下:
spring-framework-2.5.6\lib\dom4j\dom4j-1.6.1.jar
如果是需要读取或者修改,那么就需要导入这个库内的另外一个文件:
spring-framework-2.5.6\lib\dom4j\jaxen-1.1-beta-7.jar
<dependency>
<groupId>org.apache.directory.studio</groupId>
<artifactId>org.dom4j.dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1-beta-7</version>
</dependency>
// MyDom4j.java
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class MyDom4j {
/**
* 动态创建一个bean配置文件,包含HelloWorld这个bean,并添加初始值
* */
public void createXML(String xmlPath, String msg) throws IOException {
Document XmlDoc = DocumentHelper.createDocument();
XmlDoc.addDocType("beans", "-//SPRING//DTD BEAN//EN",
"http://www.springframework.org/dtd/spring-beans.dtd");
//首先创建beans根节点
Element beansEle = XmlDoc.addElement("beans");
//注意:dom4j是支持类似于jQuery一样的链式操作的
Element beanHelloWorld = beansEle.addElement("bean")
.addAttribute("id", "HelloWorld")
.addAttribute("class", "HelloWorld");
Element propertyHelloWorld = beanHelloWorld.addElement("property")
.addAttribute("name", "msg");
Element valueHelloWorld = propertyHelloWorld.addElement("value")
.addText(msg);
XMLWriter outXml = new XMLWriter(new FileWriter(new File(xmlPath)));
outXml.write(XmlDoc);
outXml.close();
}
/**
* 首先遍历一个bean配置文件里的所有bean,获取id和class的值, 然后修改HelloWorld这个bean的msg的值
* @throws IOException
* */
public void editXML(String xmlPath, String msg) throws DocumentException, IOException {
Document XmlDoc = new SAXReader().read(new File(xmlPath));
List xmlList = XmlDoc.selectNodes("/beans/bean");
System.out.println("\r\n遍历所有的bean获得id和class:");
for (Element element : xmlList) {
System.out.println("id:" + element.attributeValue("id")
+ " / class:" + element.attributeValue("class"));
}
System.out.println("\r\n动态修改HelloWorld这个bean的msg值:");
//用XPath来获取单一节点
Node valueHelloWorld = XmlDoc
.selectSingleNode("/beans/bean[@id='HelloWorld']/property[@name='msg']/value");
System.out.println("原始值为:" + valueHelloWorld.getText());
valueHelloWorld.setText(msg);
System.out.println("修改后的值为:" + valueHelloWorld.getText());
//修改完了以后记得保存,要不然你会纳闷为什么XML文件没变的,哈哈
XMLWriter outXml = new XMLWriter(new FileWriter(new File(xmlPath)));
outXml.write(XmlDoc);
outXml.close();
}
}
// HelloWorld.java
public class HelloWorld {
public String msg;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
// HelloWorldTester.java
import java.io.IOException;
import org.dom4j.DocumentException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.iteye.bolide74.action.HelloWorld;
import com.iteye.bolide74.action.MyDom4j;
public class HelloWorldTester {
public static void main(String[] args) {
String xmlPath = "/WebContent/WEB-INF/conf/config_dom4j.xml";
MyDom4j myBeans = new MyDom4j();
try {
myBeans.createXML(System.getProperty("user.dir") + xmlPath,
"Hello,world!this is created by dom4j!");
} catch (IOException e) {
e.printStackTrace();
}
ApplicationContext ac = new FileSystemXmlApplicationContext(xmlPath);
HelloWorld helloWorld = (HelloWorld) ac.getBean("HelloWorld");
System.out.println(helloWorld.getMsg());
try {
myBeans.editXML(System.getProperty("user.dir") + xmlPath,
"Hello,world!this is edited by dom4j!");
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// 重新获取bean配置文件
ac = new FileSystemXmlApplicationContext(xmlPath);
helloWorld = (HelloWorld) ac.getBean("HelloWorld");
System.out.println("\r\n" + helloWorld.getMsg());
}
}
spring-framework-2.5.6\lib\dom4j\dom4j-1.6.1.jar
如果是需要读取或者修改,那么就需要导入这个库内的另外一个文件:
spring-framework-2.5.6\lib\dom4j\jaxen-1.1-beta-7.jar
<dependency>
<groupId>org.apache.directory.studio</groupId>
<artifactId>org.dom4j.dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.1-beta-7</version>
</dependency>
// MyDom4j.java
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class MyDom4j {
/**
* 动态创建一个bean配置文件,包含HelloWorld这个bean,并添加初始值
* */
public void createXML(String xmlPath, String msg) throws IOException {
Document XmlDoc = DocumentHelper.createDocument();
XmlDoc.addDocType("beans", "-//SPRING//DTD BEAN//EN",
"http://www.springframework.org/dtd/spring-beans.dtd");
//首先创建beans根节点
Element beansEle = XmlDoc.addElement("beans");
//注意:dom4j是支持类似于jQuery一样的链式操作的
Element beanHelloWorld = beansEle.addElement("bean")
.addAttribute("id", "HelloWorld")
.addAttribute("class", "HelloWorld");
Element propertyHelloWorld = beanHelloWorld.addElement("property")
.addAttribute("name", "msg");
Element valueHelloWorld = propertyHelloWorld.addElement("value")
.addText(msg);
XMLWriter outXml = new XMLWriter(new FileWriter(new File(xmlPath)));
outXml.write(XmlDoc);
outXml.close();
}
/**
* 首先遍历一个bean配置文件里的所有bean,获取id和class的值, 然后修改HelloWorld这个bean的msg的值
* @throws IOException
* */
public void editXML(String xmlPath, String msg) throws DocumentException, IOException {
Document XmlDoc = new SAXReader().read(new File(xmlPath));
List xmlList = XmlDoc.selectNodes("/beans/bean");
System.out.println("\r\n遍历所有的bean获得id和class:");
for (Element element : xmlList) {
System.out.println("id:" + element.attributeValue("id")
+ " / class:" + element.attributeValue("class"));
}
System.out.println("\r\n动态修改HelloWorld这个bean的msg值:");
//用XPath来获取单一节点
Node valueHelloWorld = XmlDoc
.selectSingleNode("/beans/bean[@id='HelloWorld']/property[@name='msg']/value");
System.out.println("原始值为:" + valueHelloWorld.getText());
valueHelloWorld.setText(msg);
System.out.println("修改后的值为:" + valueHelloWorld.getText());
//修改完了以后记得保存,要不然你会纳闷为什么XML文件没变的,哈哈
XMLWriter outXml = new XMLWriter(new FileWriter(new File(xmlPath)));
outXml.write(XmlDoc);
outXml.close();
}
}
// HelloWorld.java
public class HelloWorld {
public String msg;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
// HelloWorldTester.java
import java.io.IOException;
import org.dom4j.DocumentException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.iteye.bolide74.action.HelloWorld;
import com.iteye.bolide74.action.MyDom4j;
public class HelloWorldTester {
public static void main(String[] args) {
String xmlPath = "/WebContent/WEB-INF/conf/config_dom4j.xml";
MyDom4j myBeans = new MyDom4j();
try {
myBeans.createXML(System.getProperty("user.dir") + xmlPath,
"Hello,world!this is created by dom4j!");
} catch (IOException e) {
e.printStackTrace();
}
ApplicationContext ac = new FileSystemXmlApplicationContext(xmlPath);
HelloWorld helloWorld = (HelloWorld) ac.getBean("HelloWorld");
System.out.println(helloWorld.getMsg());
try {
myBeans.editXML(System.getProperty("user.dir") + xmlPath,
"Hello,world!this is edited by dom4j!");
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// 重新获取bean配置文件
ac = new FileSystemXmlApplicationContext(xmlPath);
helloWorld = (HelloWorld) ac.getBean("HelloWorld");
System.out.println("\r\n" + helloWorld.getMsg());
}
}
发表评论
-
Apache HTTPClient 忽略证书
2019-01-25 15:03 1492/** * httpclient4.5.2版 * ... -
HTTP 返回码
2019-01-24 15:28 379HTTP1.1新增了五种请求方法:OPTIONS、PUT、PA ... -
Java SizeToHuman 大小转换为mb kb tb等
2017-08-21 15:12 1568public class TestSizeToHuman ... -
java常规格式化说明
2016-01-20 17:27 1333转 换 符说 明 ... -
java验证是否包含特殊字符/\:*?"<>
2016-01-05 15:25 8712public class MatchTest { ... -
JSP和JSTL获取服务器参数
2015-09-11 13:57 1157<%@ page language="java ... -
java计算时间差比较时间大小
2015-05-20 10:53 1058今天需要比较时间在网上找到然后写下: 比如:现在是:200 ... -
java发邮件
2014-11-19 15:37 1160一、 import java.util.Date; im ... -
java log4j.properties
2014-11-18 09:30 864log4j.properties配置文件如下: log4j ... -
java获得ip地址
2014-11-17 18:18 1269public String getIpAddr(Htt ... -
java下载文件
2014-11-07 10:57 1031// 文件名称中文乱码new String(filename. ... -
Android中RelativeLayout各个属性的含义
2014-10-11 15:06 830android:layout_above="@id ... -
Http发送请求
2014-09-17 15:01 846package wzh.Http; import j ... -
导出数据到excel
2014-09-03 16:20 1170/** * */ package com.chin ... -
Spring MVC @RequestBody接收JSON报HTTP 415/400问题的解决
2014-08-27 13:06 3755Ajax请求传@RequestBody(接收JSON)参数时, ... -
request获取各种路径
2014-08-06 17:06 909从request获取各种路径总结 request.getRea ... -
Linux下设置开机自启动tomcat
2014-07-23 11:51 1886centos7 设置tomcat开机自启动 在tomcat/ ... -
Linux 设置环境变量JAVA_HOME ,鼠标右键打开终端,修改hostname
2014-07-03 14:21 1716一、ubuntu永久修改主机名 1、查看主机名 在Ubunt ... -
keytool生成证书与Tomcat SSL配置
2014-07-02 17:03 18098一、Keytool介绍 Keytool是一个Java数据证书 ... -
Map的几种循环方式
2013-09-12 15:38 1482for(String dataKey : paraMap.ke ...
相关推荐
spring-2 演示了外部配置文件的引入(connection),spel(spring el)表达式 ,静态工厂方式及实例工厂方式及factorybean方式创建bean, spring的生命周期及BeanPostProcessor的使用,注解方式创建bean 及使用...
这里就要导入mybatis和spring的整合包了,这里sqlsession中也要导入mybatis的配置文件 2.6 spring-bean 配置mapper自动扫描 MapperScannerConfigurer将扫描basePackage所指定的包下的所有接口类(包括子类), ...
动态配置权限,角色和资源,权限控制到按钮粒度 采用token进行权限校验,禁用session,未登录返回401,权限不足返回403 采用redis存储token及权限信息 内置功能: 用户管理:用户查询、添加用户、修改用户、给...
9.5.4. 为不同的bean配置不同的事务语义 9.5.5. <tx:advice/> 有关的设置 9.5.6. 使用 @Transactional 9.5.6.1. @Transactional 有关的设置 9.5.7. 插入事务操作 9.5.8. 结合AspectJ使用 @Transactional 9.6. 编程式...
2.2 Spring配置文件 7 2.3 Spring API 8 3 Spring基本功能详解 8 3.1 SpringIOC 8 3.2别名Alias 11 别名拓展: 11 3.3 Spring容器内部对象的创建 12 Spring容器内部对象创建拓展: 12 3.3.1使用类构造器实例化(默认...
9.5.4. 为不同的bean配置不同的事务语义 9.5.5. <tx:advice/> 有关的设置 9.5.6. 使用 @Transactional 9.5.7. 插入事务操作 9.5.8. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 9.6.1. 使用 ...
9.5.4. 为不同的bean配置不同的事务语义 9.5.5. <tx:advice/> 有关的设置 9.5.6. 使用 @Transactional 9.5.7. 事务传播 9.5.8. 通知事务操作 9.5.9. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 ...
2.2.3 类包及Spring配置文件规划 2.3 持久层 2.3.1 建立领域对象 2.3.2 UserDao 2.3.3 LoginLogDao 2.3.4 在Spring中装配DAO 2.4 业务层 2.4.1 UserService 2.4.2 在Spring中装配Service 2.4.3 单元测试 2.5 展现层 ...
9.5.4. 为不同的bean配置不同的事务语义 9.5.5. <tx:advice/> 有关的设置 9.5.6. 使用 @Transactional 9.5.7. 事务传播 9.5.8. 通知事务操作 9.5.9. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 ...
9.5.4. 为不同的bean配置不同的事务语义 9.5.5. <tx:advice/> 有关的设置 9.5.6. 使用 @Transactional 9.5.7. 插入事务操作 9.5.8. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 9.6.1. 使用 ...
PropertySource:加载配置文件 Import:导入其他配置类 AOP 概念:面向切面编程,在不改变源码的情况下对方法进行增强,抽取横切关注点(日志处理,事务管理,安全检查,性能测试等等),使用AOP进行增强,使程序员只需要...
1.6.1 比较Spring和EJB 1.6.2 关于其他轻量级容器 1.6.3 Web框架 1.6.4 持久层框架 1.7 小结 第2章 装配Bean 2.1 容纳你的Bean 2.1.1 BeanFactory介绍 2.1.2 使用应用上下文 ...
2.2.3 类包及Spring配置文件规划 2.3 持久层 2.3.1 建立领域对象 2.3.2 UserDao 2.3.3 LoginLogDao 2.3.4 在Spring中装配DAO 2.4 业务层 2.4.1 UserService 2.4.2 在Spring中装配Service 2.4.3 单元测试 2.5 展现层 ...
创建springcloud-2.0-parent 42 Ribbon配置 45 配置Feign客户端超时时间 45 Api网关服务SrpingCloud Zuul 45 网关分类 46 网关设计 46 网关框架 48 网关作用 49 网关与过滤器区别 49 Nginx与Zuul的区别 49 ...
29.4.5 Spring Bean配置 226 29.4.6 LDAP属性和定制的UserDetails 227 29.5 Active Directory认证 228 29.5.1 ActiveDirectoryLdapAuthenticationProvider 228 活动目录错误代码 229 30. JSP标签库 230 30.1声明...
有了 Spring,只要用 JavaBean 属性和配置文件加入依赖性(协作对象)。然后可以很容易地在需要时替换具有类似接口的协作对象。} Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心...
5. 在java 对象和 数据库之间有做mapping 的配置文件,也通常是xml 文件。 mybatis实战教程(mybatis in action)之一:开发环境搭建 mybatis 的开发环境搭建,选择: eclipse j2ee 版本,mysql 5.1 ,jdk 1.7,mybatis...
动态配置权限,角色和资源,权限控制到按钮粒度 采用token进行权限校验,禁用session,未登录返回401,权限不足返回403 采用redis存储token及权限信息 用户管理:用户查询、添加用户、修改用户、给用户分配角色 ...
在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类(假设这个类名是A),分配的方法就是调用A的setter...
3. 修改配置文件 `src/main/resources/application.yml`,主要修改数据库连接的用户名和地址。 4. 启动项目。 5. 浏览器访问 `http://localhost:8080`,可以看到如下页面: 功能介绍 1. 项目启动时,会自动从数据库...