Java 无法自动连线sessionFactory
我无法自动连接context.xml中定义的sessionFactory bean:Java 无法自动连线sessionFactory,java,xml,spring,hibernate,postgresql,Java,Xml,Spring,Hibernate,Postgresql,我无法自动连接context.xml中定义的sessionFactory bean: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.s
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQL9Dialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.current_session_context_class">thread</prop>
<prop key="hibernate.connection.url">jdbc:postgresql://localhost:8080/come_to_blog_db</prop>
<prop key="hibernate.connection.driver_class">org.postgresql.Driver</prop>
<prop key="hibernate.connection.username">postgres</prop>
<prop key="hibernate.connection.password">admin</prop>
</props>
</property>
<property name="annotatedClasses">
<list>
<value>com.lime.model.User</value>
</list>
</property>
</bean>
</beans>
org.hibernate.dialogue.postgresql9dialogue
真的
线
jdbc:postgresql://localhost:8080/come_to_blog_db
org.postgresql.Driver
博士后
管理
com.lime.model.User
可能其他cfg文件也有帮助,web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>web-dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>web-dispatcher</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/web-dispatcher-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
</web-app>
Web应用程序创建的原型
网络调度器
org.springframework.web.servlet.DispatcherServlet
1.
网络调度器
*.htm
上下文配置位置
/WEB-INF/WEB-dispatcher-servlet.xml
org.springframework.web.context.ContextLoaderListener
dispatcher-servlet.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">
<context:annotation-config />
<context:component-scan base-package="com.lime" />
<mvc:annotation-driven />
<mvc:default-servlet-handler />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
有什么不对劲?我有所有3个文件在同一个目录,谢谢你的建议。
编辑:堆栈跟踪:由于您的servlet名为
web dispatcher
,并且您的servlet xml文件为web dispatcher servlet.xml
,您不需要在configLocation
中指定它,Spring将使用[servletName]-servlet.xml在类路径中找到它。但是您需要指定Spring需要知道的context.xml
(以便配置SessionFactorybean和其他bean)
上下文配置位置
类路径:context.xml
我不能自动连线的确切意思是什么。提供错误和stacktraces。请显示自动编辑sessionfactory和stacktrace的代码。这里是stack trace:我已经向context.xml添加了侦听器并更新了session-factory.xml,但我还没有其他bean。我更新了我的帖子,但我有一个问题,我应该将什么导入contextConfigLocation(在上下文参数标记中),Dispatcher或context???因为SpringContextLoaderListener
需要了解您的xml上下文文件。我更新了我的帖子谢谢,它似乎已解决,但我收到另一个错误:/,警告,maven严重,然后出现异常,我花了2天时间配置webapp,但我仍然无法连接我的数据库:/Jesus Christ cmon和kil我,我没有注意到我写的是错误的connection.url,我输入的是8080而不是5432,awwwrh..但是你能检查我的另一个问题吗?我似乎终于连接到了我的数据库,但是:org.hibernate.hibernateeexception:createSQLQuery在没有活动事务的情况下无效
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:context.xml</param-value>
</context-param>