现在采用struts2、spring、hibernate做一个项目。为了使结构更清晰把spring和struts2的配置文件都放在了WEB-INF/config目录下。在配置struts2的时候就遇到了问题,因为默认struts2是用classpath下加载配置文件。现在用spring测试框架进行单元测试,又遇到了配置文件无法加载的问题,搜了半天都没找到合适的解决方案,请问使用ssh的朋友们是怎么做的?
@ContextConfiguration(locations={"../WEB-INF/config/applicationContext.xml"}) public class TestSysUserService extends AbstractTransactionalJUnit4SpringContextTests { @Autowired private SysUserService userService; @Test public void testGetSysUserList(){ DataPage dataPage=userService.getUserList(1, 10); for(int i=0;i<dataPage.getData().size();i++){ System.out.println("用户姓名:"+((SysUser)dataPage.getData().get(i)).getName()); } } public SysUserService getUserService() { return userService; } public void setUserService(SysUserService userService) { this.userService = userService; } }
还是都放在src下方便些
[color=indigo]http://blog.sina.com.cn/s/blog_438308750100dsl6.html
这里有说明 你看下吧[/color]
[url]http://www.iteye.com/topic/20941[/url]
有人问过跟你一样的问题,只是解决很麻烦,我想在其中直接写文件系统的绝对路径不知道有没有用。。
[quote]为了使结构更清晰把spring和struts2的配置文件都放在了WEB-INF/config目录下[/quote]
struts2属于web层,放到web-inf下理所当然
至于spring容器,就一IOC工具和Bean容器,,还是放到src路径才比较合理吧。。
struts2、spring的配文件都放在在src上
Spring的配置文件默认是放在WEB-INF下面,但是一般会在web.xml中设置到classpath,因为在那里方便浏览,Struts2的就直接按照默认的classpath就OK了。你用”单元测试“基本上很难把Struts2的东西也拿进来,都是使用jUnit加载Spring配置文件来测试业务层的东西。Spring的测试优势在于集成测试。