各位好,有一个问题请教大家,在这里先谢谢大家了!
描述:我使用的是spring3.0.5,在配置packagesToScan时,出了点问题。我有几个model,分别在不同的包下。之前只有一个包的时候,配置packagesToScan下面只有一个list,是可以的。当配置两个包的时候,启动服务的时候不报错,但使用的时候,另一个包的实体没有自动生成数据表。当配置文件中只配置之前不生成数据表的那个包时,启动就报错了,原因是在这个包中,通过ManyToOne使用到另一个包(没有被配置到packagesToScan),而这个包没有配置到packagesToScan,所以报错了。我使用过的方法有:<property name="packagesToScan">
<list>/不报错,但是第二个包下面的类没有自动创建数据表
<value>com.text.common.model</value>                             <value>com.text.system.model</value>
</list>
</property><property name="packagesToScan">
<list>
<!-- <value>com.text.common.model</value> -->//报错了,因为第二个包下在的实体使用到第一个包下面的了,而第一个包没有配置。
<value>com.text.system.model</value>
</list>
</property><property name="packagesToScan">
<list>
<value>com.text.common.model</value>                            <!--<value>com.text.system.model</value>-->//使用的时候报错,因为第二个包没有配置。
</list>
</property>
<value>com.text.*</value>//也不行
<value>com.text.*.model</value>//还是不行
还使用过这种:问题:packagesToScan如何监听多个个包下面的model?

解决方案 »

  1.   

    说实话 ,我也没怎么测试过,不过我现在的项目中这样配置的:
    <property name="packagesToScan" value="com.chenghui.entity" />
    没问题
      

  2.   

    这个只配置一个value是可以的,但是如果配置多个value,要怎么配置。
    还有,不可能所有的model都放在一个包下面,肯定会对model分类分包。大家又是怎么解决这个问题的呢?
      

  3.   

    为什么不可能把所有的model都放在一个包下面?看看编程规范。
      

  4.   

    如果model不都在一个包,这种情况要怎么解决呢?
      

  5.   

    谢谢各位,事实证明,不同的包,使用这种方式是可以的:
    <value>com.text.common.model</value>                 <value>com.text.system.model</value>问题已经解决。
    再闪谢谢各位!
      

  6.   

    <property name="packagesToScan">
                <list>
                    <value>com.text.common.model</value>
                    <value>com.text.system.model</value>
                </list>
    </property>
    我觉的你配的很正确,问题应该不是出在配置上。