首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

Spring 中配置 jdbc.properties 有关问题

2013-02-28 
Spring 中配置 jdbc.properties 问题!我在Spring中配置 jdbc.properties但总报 找不到该文件报错信息INFO

Spring 中配置 jdbc.properties 问题!
我在Spring中配置 jdbc.properties  但总报 找不到该文件
报错信息
INFO - Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
INFO - SQLErrorCodes loaded: [DB2, HSQL, MS-SQL, MySQL, Oracle, Informix, PostgreSQL, Sybase]
Hibernate: select user0_.id as id, user0_.user_cname as user2_4_, user0_.user_spellname as user3_4_, user0_.user_password as user4_4_, user0_.user_role as user5_4_, user0_.user_whichtechnic as user6_4_, user0_.projectId as projectId4_, user0_.projectName as projectN8_4_, user0_.deleted as deleted4_, user0_.last_updatedate as last10_4_, user0_.last_updatetime as last11_4_ from user user0_ where user0_.user_spellname=? and user0_.user_password=?
INFO - Loading XML bean definitions from file [C:\Tomcat 5.5\webapps\YW\WEB-INF\applicationContext.xml]
INFO - Bean factory for application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=23141412]: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [propertyConfigurer,YW_DataSource,sessionFactory,UserDAO,/login,ProjectDAO,/project,/account,TaskDAO,/task,ModuleDAO,/module]; root of BeanFactory hierarchy
INFO - 12 beans defined in application context [org.springframework.context.support.FileSystemXmlApplicationContext;hashCode=23141412]
INFO - Loading properties file from file [C:\Tomcat 5.5\bin\WEB-INF\jdbc.properties]
WARN - Unhandled Exception thrown: class org.springframework.beans.factory.BeanInitializationException
ERROR - Servlet.service() for servlet action threw exception
org.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.io.FileNotFoundException: WEB-INF\jdbc.properties (系统找不到指定的路径。)
java.io.FileNotFoundException: WEB-INF\jdbc.properties (系统找不到指定的路径。)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at org.springframework.core.io.FileSystemResource.getInputStream(FileSystemResource.java:85)
at org.springframework.core.io.support.PropertiesLoaderSupport.loadProperties(PropertiesLoaderSupport.java:183)
at org.springframework.core.io.support.PropertiesLoaderSupport.mergeProperties(PropertiesLoaderSupport.java:162)
at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:69)
at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:373)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:295)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:89)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:74)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:65)
at cn.yw.bo.AEDTask.<init>(AEDTask.java:18)
at cn.yw.action.TaskAction.execute(TaskAction.java:48)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)


at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at cn.yw.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at cn.yw.util.AuthFilter.doFilter(AuthFilter.java:57)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at cn.yw.util.NoCacheFilter.doFilter(NoCacheFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:831)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:639)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1203)
at java.lang.Thread.run(Thread.java:595)

以下是我的代码摘要 
applicationContext.xml

 <bean id="propertyConfigurer" 
            class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
         <property name="location"> 
            <value>/WEB-INF/jdbc.properties</value> 
         </property> 
    </bean> 
     <bean id="YW_DataSource"
class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName">
<value>${jdbc.driverClassName}</value>
</property>
<property name="url">
<value>${jdbc.url}</value>
</property>
<property name="username">
<value>${jdbc.username}</value>
</property>
<property name="password">
<value>${jdbc.password}</value>
</property>
         </bean>

jdbc.properties(肯定放在WEB-INF下了 并且名称是一致的)
#连接设置
jdbc.driverClassName=org.gjt.mm.mysql.Driver
jdbc.url=jdbc:mysql://localhost:3306/yw
jdbc.username=root
jdbc.password=1



我很奇怪的是 我第一次登录的时候没问题  但登录后点任意按钮连接都会报上边的错误
但我把jdbc.properties放在src下 改成这样就没事

<bean id="propertyConfigurer" 
            class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
         <property name="location"> 
            <value>classpath:jdbc.properties</value> 
         </property> 
    </bean> 

为什么呢?  是不是哪没配啊  新手没什么经验 请指导以下。
[解决办法]
 在配置jdbc.properties时候用classpath获取路径
[解决办法]
你直接放到src下面就行了
他会自动编译到web-inf下的classes目录下的
[解决办法]
汗。你那在src下面就可以了。在项目发布出去。他会放到web-inf了。楼主,你要考虑一下。src下面的代码是放在那里的。源代码与发布后的代码间的关系。这些你去了解一下。这个问题就解决了。
C:\Tomcat 5.5\bin\WEB-INF\jdbc.properties 这个在tomcat启动的时候,是在bin里面启动的。他会以bin做为目录去找你指定的bin下面的WEB-INF\jdbc.properties文件。而classpath不一样。这是相对路径。会根据你的项目地址去找web-inf下面的

热点排行
Bad Request.