打印

[Java] strut2+spring+hibernate配置问题,高手请指点!

strut2+spring+hibernate配置问题,高手请指点!

2008-7-2 3:43:37 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:Javajdk1.6.0_02in;.;C:WINDOWSSunJavain;C:WINDOWSsystem32;C:WINDOWS;D:Javajdk1.6.0_02jrein;D:/Java/jdk1.6.0_02/bin/../jre/bin/client;D:/Java/jdk1.6.0_02/bin/../jre/bin;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:Program FilesATI TechnologiesATI.ACECore-Static;D:Javajdk1.6.0_02in;D:apacheapache-ant-1.7.0in;d:StormIICodec;d:StormII;;C:PROGRA~1COMMON~1MUVEET~1\030625
2008-7-2 3:43:38 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2008-7-2 3:43:38 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 574 ms
2008-7-2 3:43:38 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2008-7-2 3:43:38 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.16
2008-7-2 3:43:38 org.apache.catalina.core.StandardContext addApplicationListener
信息: The listener "org.springframework.web.context.ContextLoaderListener" is already configured for this context. The duplicate definition has been ignored.
2008-7-2 3:43:39 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext
2008-07-02 03:43:39,187 [org.springframework.web.context.ContextLoader]-[INFO] Root WebApplicationContext: initialization started
2008-07-02 03:43:39,250 [org.springframework.web.context.support.XmlWebApplicationContext]-[INFO] Refreshing org.springframework.web.context.support.XmlWebApplicationContext@9770a3: display name [Root WebApplicationContext]; startup date [Wed Jul 02 03:43:39 GMT 2008]; root of context hierarchy
2008-07-02 03:43:39,390 [org.springframework.beans.factory.xml.XmlBeanDefinitionReader]-[INFO] Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext.xml]
2008-07-02 03:43:39,953 [org.springframework.web.context.support.XmlWebApplicationContext]-[INFO] Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@9770a3]: org.springframework.beans.factory.support.DefaultListableBeanFactory@166aab6
2008-07-02 03:43:40,093 [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer]-[INFO] Loading properties file from class path resource [jdbc.properties]
2008-07-02 03:43:40,125 [org.springframework.beans.factory.support.DefaultListableBeanFactory]-[INFO] Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@166aab6: defining beans [propertyConfigurer,dataSource,sessionFactory,transactionManager,baseTransactionProxy,baseDAO,columnDAO,columnService]; root of factory hierarchy
2008-07-02 03:43:40,234 [com.mchange.v2.log.MLog]-[INFO] MLog clients using log4j logging.
2008-07-02 03:43:40,296 [com.mchange.v2.c3p0.C3P0Registry]-[INFO] Initializing c3p0-0.9.0 [built 11-July-2005 00:43:29 -0400; debug? true; trace: 10]
2008-07-02 03:43:40,453 [org.hibernate.cfg.Environment]-[INFO] Hibernate 3.1.3
2008-07-02 03:43:40,453 [org.hibernate.cfg.Environment]-[INFO] hibernate.properties not found
2008-07-02 03:43:40,453 [org.hibernate.cfg.Environment]-[INFO] using CGLIB reflection optimizer
2008-07-02 03:43:40,468 [org.hibernate.cfg.Environment]-[INFO] using JDK 1.4 java.sql.Timestamp handling
2008-07-02 03:43:40,562 [org.hibernate.cfg.Configuration]-[INFO] configuring from url: file:/E:/workspace/AHLotteryWeb/web/WEB-INF/classes/hibernate.cfg.xml
2008-07-02 03:43:40,703 [org.hibernate.cfg.Configuration]-[INFO] Reading mappings from resource: com/szhelper/www/lottery/business/entity/article/ColumnEntity.hbm.xml
2008-07-02 03:43:40,843 [org.hibernate.cfg.HbmBinder]-[INFO] Mapping class: com.szhelper.www.lottery.business.entity.article.ColumnEntity -> column_type
2008-07-02 03:43:40,859 [org.hibernate.cfg.Configuration]-[INFO] Configured SessionFactory: null
2008-07-02 03:43:40,890 [org.hibernate.cfg.Mappings]-[INFO] duplicate import: com.szhelper.www.lottery.business.entity.article.ColumnEntity->com.szhelper.www.lottery.business.entity.article.ColumnEntity
2008-07-02 03:43:40,890 [org.hibernate.cfg.Mappings]-[INFO] duplicate import: com.szhelper.www.lottery.business.entity.article.ColumnEntity->ColumnEntity
2008-07-02 03:43:40,890 [org.hibernate.cfg.HbmBinder]-[INFO] Mapping class: com.szhelper.www.lottery.business.entity.article.ColumnEntity -> column_type
2008-07-02 03:43:40,890 [org.springframework.beans.factory.support.DefaultListableBeanFactory]-[INFO] Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@166aab6: defining beans [propertyConfigurer,dataSource,sessionFactory,transactionManager,baseTransactionProxy,baseDAO,columnDAO,columnService]; root of factory hierarchy
2008-07-02 03:43:40,890 [org.springframework.web.context.ContextLoader]-[ERROR] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.szhelper.www.lottery.business.entity.article.ColumnEntity
Caused by:
org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.szhelper.www.lottery.business.entity.article.ColumnEntity
        at org.hibernate.cfg.Mappings.addClass(Mappings.java:118)
        at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:154)
        at org.hibernate.cfg.Configuration.add(Configuration.java:386)
        at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:427)
        at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:608)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1202)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:428)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:284)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
        at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:516)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2008-7-2 3:43:40 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.szhelper.www.lottery.business.entity.article.ColumnEntity
Caused by: org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.szhelper.www.lottery.business.entity.article.ColumnEntity
        at org.hibernate.cfg.Mappings.addClass(Mappings.java:118)
        at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:154)
        at org.hibernate.cfg.Configuration.add(Configuration.java:386)
        at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:427)
        at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:608)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1202)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:428)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:284)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
        at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:626)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
        at org.apache.catalina.core.StandardService.start(StandardService.java:516)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2008-7-2 3:43:40 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2008-7-2 3:43:40 org.apache.catalina.core.StandardContext start
严重: Context [/ahfcgw] startup failed due to previous errors
2008-7-2 3:43:40 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
2008-7-2 3:43:41 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(E:workspacejxfcgwWebRootWEB-INFlibservlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
2008-7-2 3:43:41 org.apache.catalina.core.StandardContext addApplicationListener
信息: The listener "listeners.ContextListener" is already configured for this context. The duplicate definition has been ignored.
2008-7-2 3:43:41 org.apache.catalina.core.StandardContext addApplicationListener
信息: The listener "listeners.SessionListener" is already configured for this context. The duplicate definition has been ignored.
2008-7-2 3:43:41 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2008-7-2 3:43:41 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2008-7-2 3:43:41 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2008-7-2 3:43:41 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2008-7-2 3:43:41 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/32  config=null
2008-7-2 3:43:41 org.apache.catalina.startup.Catalina start
信息: Server startup in 3821 ms
以上是控制台消息;

==============================
ColumnEntity.hbm.xml
==============================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
      "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.szhelper.www.lottery.business.entity.article">
  <class name="ColumnEntity" table="column_type">
    <id name="id" column="id" type="int">
      <generator class="identity"/>
    </id>
    <property column="column_id" name="columnId" type="int"/>
    <property column="column_name" name="columnName" type="string"/>
  </class>
</hibernate-mapping>


===================
ColumnEntity.java
===================
package com.szhelper.www.lottery.business.entity.article;

import java.io.Serializable;

/**
* Title: ColumnEntity.java<br>
* Description: 这个类用于栏目表对应实体.<br>
* Copyright: Copyright (c) 2008.<br>
* Company: szhelper Tech Co.,Ltd.<br>
*
* @author 陈星
* @version 1.0
*/
public class ColumnEntity{

        private int id;//id
       
        private int columnId;//栏目id
       
        private String columnName;//栏目名称

        public int getId() {
                return id;
        }

        public void setId(int id) {
                this.id = id;
        }

        public int getColumnId() {
                return columnId;
        }

        public void setColumnId(int columnId) {
                this.columnId = columnId;
        }

        public String getColumnName() {
                return columnName;
        }

        public void setColumnName(String columnName) {
                this.columnName = columnName;
        }
}

=================
applicationContext.xml
=================

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

<beans>
    <bean id="propertyConfigurer"
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:jdbc.properties</value>
            </list>
        </property>
    </bean>
   
    <bean id="dataSource"
        class="com.mchange.v2.c3p0.ComboPooledDataSource"
        destroy-method="close">
        <property name="driverClass" value="${jdbc.driverClassName}" />
        <property name="jdbcUrl" value="${jdbc.url}" />
        <property name="user" value="${jdbc.username}" />
        <property name="password" value="${jdbc.password}" />
    </bean>
   
    <bean id="sessionFactory"
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="mappingLocations">
            <list>
                <value>
                    classpath:/com/szhelper/www/lottery/business/entity/article/ColumnEntity.hbm.xml
                </value>
            </list>
        </property>
        <property name="configLocation">
            <value>classpath:hibernate.cfg.xml</value>
        </property>
        <property name="dataSource">
            <ref local="dataSource" />
        </property>
    </bean>
      <bean id="transactionManager"
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>

    <bean id="baseTransactionProxy"
        class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
        abstract="true">
        <property name="transactionManager" ref="transactionManager" />
        <property name="transactionAttributes">
            <props>
                <prop key="*">
                    PROPAGATION_REQUIRED, -ApplicationException
                </prop>
                <prop key="load*">PROPAGATION_REQUIRED,readOnly</prop>
                <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
                <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
                <prop key="list*">PROPAGATION_REQUIRED,readOnly</prop>
            </props>
        </property>
    </bean>  
   
    <!-- Base DAO -->
    <bean id="baseDAO" abstract="true" class="com.szhelper.www.lottery.business.dao.BaseDAOImpl">
        <property name="sessionFactory">
            <ref bean="sessionFactory" />
        </property>
    </bean>

     <bean id="columnDAO" parent="baseDAO"
        class="com.szhelper.www.lottery.business.dao.article.ColumnDAOImp" >
    </bean>
    <bean id="columnService" parent="baseTransactionProxy">
        <property name="target">
            <bean class="com.szhelper.www.lottery.business.service.article.ColumnServiceImp">
                <property name="columnDAO" ref="columnDAO" />                          
            </bean>
        </property>
    </bean>
           
</beans>

========================
hibernate.cfg.xml
========================

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

        <session-factory>
        <!-- 数据URL -->
                <property name="connection.url">
                        jdbc:mysql://127.0.0.1:3306/ahfcgw
                </property>
        <!-- 数据库JDBC驱动 -->
                <property name="connection.driver_class">
                        com.mysql.jdbc.Driver
                </property>
        <!-- 数据库用户名 -->
                <property name="connection.username">root</property>
        <!-- 数据库密码 -->
                <property name="connection.password">root</property>
        <!-- dialect,每个数据库都应该有其对应的Dialect以匹配其平台特性 -->
                <property name="dialect">
                        org.hibernate.dialect.MySQLDialect
                </property>
        <!-- 是否输出运行时sql -->
                <property name="hibernate.show_sql">
                        true
                </property>
        <!-- 映射文件配置 -->
                <mapping resource="com/szhelper/www/lottery/business/entity/article/ColumnEntity.hbm.xml"></mapping>

        </session-factory>

</hibernate-configuration>


急,在线等...

TOP

看到错误先google
Duplicate class/entity mapping com.szhelper.www.lottery.business.entity.article.ColumnEntity

TOP

既然和spring整合了
<hibernate-configuration>

        <session-factory>
        <!-- 数据库URL -->
                <property name="connection.url">
                        jdbc:mysql://127.0.0.1:3306/ahfcgw
                </property>
        <!-- 数据库JDBC驱动 -->
                <property name="connection.driver_class">
                        com.mysql.jdbc.Driver
                </property>
        <!-- 数据库用户名 -->
                <property name="connection.username">root</property>
        <!-- 数据库密码 -->
                <property name="connection.password">root</property>
        <!-- dialect,每个数据库都应该有其对应的Dialect以匹配其平台特性 -->
                <property name="dialect">
                        org.hibernate.dialect.MySQLDialect
                </property>
        <!-- 是否输出运行时sql -->
                <property name="hibernate.show_sql">
                        true
                </property>
        <!-- 映射文件配置 -->
                <mapping resource="com/szhelper/www/lottery/business/entity/article/ColumnEntity.hbm.xml"></mapping>

        </session-factory>

</hibernate-configuration>
这个还要吗?

TOP

做事情要把原理先搞清楚, 蒙了头做是不行的

TOP

hibernate的配置是昨天配的,没删,不影响吧。

我google过了,都是不能解决问题的

告诉我改怎么做啊,谢谢了

TOP

http://www.chmhome.com/knowledge/java/20071007/111676_6.html
这是百度搜的同样的问题,未解决。
还有说HibernateSessionFactory 中 getSession() 方法加一个 synchronized 就可以实现
我试了,不行,还是那个错。

TOP

我去掉了hibernate的配置文件,可以了,不好意思。丢人丢到itpub上了,o(∩_∩)o...

TOP

引擎也找个好点的, 最好收索英文的,

TOP

没什么丢人的, 要注意方法

TOP

我重来没做过hibernate spring struts, 只是看过几篇文章, 看过他们该怎么整合。

TOP


感谢一直以来您对我们的支持!
当前时区 GMT+8, 现在时间是 2008-12-3 08:45 京ICP证060528 号

Designed By 17DST