遇到相当诡异的事情……SSH框架之前已经整合好了,程序也可以正常运行!可是项目做着做着,本来交给spring管理的类上面的蓝色S标记莫名其妙的就不见了,只是不影响项目的运行我也就没在意。现在我的数据库表有更改,需要用工具重新生成一次dao,却发现springDAO那个选项是暗的(只能生成basic的DAO)。这到底是怎么回事,要怎么解决呀???

解决方案 »

  1.   

    你spring配置文件里面的sessionFactory有没有建,这个生成的dao是依赖sessionFactory
      

  2.   


    以下是sessionFactory配置代码:<bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property>
    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
    <prop key="hibernate.show_sql">true</prop>
    <prop key="hibernate.hbm2ddl.auto">update</prop>
    </props>
    </property>
    <property name="mappingResources">
    <list>
    <value>com/office/hibernate/pojo/Limits.hbm.xml
    </value>
           <value>com/office/hibernate/pojo/OnlineMassage.hbm.xml
    </value>
    <value>com/office/hibernate/pojo/Users.hbm.xml
    </value>
    <value>com/office/hibernate/pojo/Sex.hbm.xml
    </value>
    <value>com/office/hibernate/pojo/Groups.hbm.xml
    </value>
    </list>
    </property>
    </bean>
    sessionFactory已经注入dao了的! 不然项目没办法运行的啊……
      

  3.   

    这有时候是IDE的问题,以前我也遇到差不多的问题:第一次全部手动搭建,没有s标记,不能运行,后来改为自动生成的,就有s标记了,其他的都一样。希望得到正解……
      

  4.   

    IDE bug多多,实在不行自己写吧
      

  5.   

    IDE 没有管理你的spring配置文件,
      

  6.   

    你是用hibernate引擎反转生成dao的吧
    那么你在sessionFactory有一个属性一定要配
    <property name="configLocation"
       value="classpath:hibernate.cfg.xml">
    </property>