JiveJdon Community Forums
在线296人   首页   主题总表   培训咨询   精华   查搜   注册    登陆
首页 » 论坛 » 项目工程开发经验谈
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
Go 总共有 1 回复 / 1
 发表新帖子   回复该主题贴
bosslee

悄悄话
发表文章: 26
注册时间: 2007年04月27日 23:26
使用Sping当中的Resource来获取Web项目资源路径 2007年08月30日 15:14 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
标签列表
以前好像使用过,但是很久没用了,结果给忘记了。最近在项目当中因为自己

定义了一个xml文件,测试的时候无所谓,结果当要发布的时候竟然发现无法方

便的获取自己配制的这个文件的相对路径 ,晕。。

但是记得当时解决过这个问题,就是想不起来,在网上查了资料结果就不是写

的一知半解就是写的很乱根本就没有写的明白点的,因自己受过苦,希望给与

那些还在用Spring框架但是因无法方便的使用相对路径的人方便。

package test.org.spring.resource;

import java.io.IOException;

import junit.framework.TestCase;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.core.io.Resource;

public class ResourceBeanTest extends TestCase {


public void testResource() throws IOException{

ApplicationContext context=new FileSystemXmlApplicationContext("OperationFile/ResourceTestFile.xml");

ResourceBean d=(ResourceBean)context.getBean("resourceBean");

assertNotNull(d);

Resource r=d.getResource();
System.out.println(r.getURL().getPath());
}
}

测试文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>

<bean id="resourceBean" class="test.org.spring.resource.ResourceBean">
<property name="resource" value="WEB-INF/config.xml"/>
</bean>
</beans>

spring配制文件



package test.org.spring.resource;

import org.springframework.core.io.Resource;

public class ResourceBean {


private Resource resource;

public Resource getResource() {
return resource;
}

public void setResource(Resource resource) {
this.resource = resource;
}
}

class代码。

运行一下一切都清楚了。

运行时记得吧包名改掉哦。。

其实看一下Spring源代码当中的恶core部分的Resource接口就知道了

最重要的是他把String形自动的改成了Resource形 。

如果有兴趣知道其中奥妙可以看一下Spring 的源代码

在这里我就不罗嗦了

[该贴被bosslee于2007年08月30日 15:17修改过]
[该贴被bosslee于2007年08月30日 15:18修改过]
banq

悄悄话
发表文章: 9313
注册时间: 2002年08月03日 17:08
回复:使用Sping当中的Resource来获取Web项目资源路径 2007年09月04日 18:30 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
必须将配置文件放在WEB-INF的classes的OperationFile目录下。

使用Spring的web.xml的context配置不是更好吗?

因为context配置会将Spring容器放入Web容器中,也就是servletContext中,这样Spring容器就有生命性,能够随着项目undeploy而消亡,防止内存泄漏。

你直接通过filer读取,那么Spring容器你就只能放入静态类中,而这很容易内存泄漏的。

这个主题有 1 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache 缓存 DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Seam Spring Struts
正在读取,请等待...
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
查询本论坛内 回复超过的热门帖子
     回复该主题贴
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
 

手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com
anti spam