Orders 表
<hibernate-mapping>
<class name="cn.com.moisten.Orders" table="orders" schema="dbo">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="identity" />
</id>
<many-to-one name="User"
column="userId"
class="cn.com.moisten.User"
fetch="select"
not-null="true"
cascade="save-update"
/>
<property name="shopNumber" type="java.lang.Integer">
<column name="shopNumber" />
</property>
<property name="shopPice" type="java.lang.Integer">
<column name="shopPice" />
</property>
</class>
</hibernate-mapping>User 表
<hibernate-mapping>
<class name="cn.com.moisten.User" table="userTable" schema="dbo">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="identity" />
</id>
<property name="userName" type="java.lang.String">
<column name="userName" />
</property>
<property name="userPassword" type="java.lang.String">
<column name="userPassword" />
</property>
</class>
</hibernate-mapping>查询 Orders 表的时候不能得到 user表的信息
写入的时候没有问题。
<hibernate-mapping>
<class name="cn.com.moisten.Orders" table="orders" schema="dbo">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="identity" />
</id>
<many-to-one name="User"
column="userId"
class="cn.com.moisten.User"
fetch="select"
not-null="true"
cascade="save-update"
/>
<property name="shopNumber" type="java.lang.Integer">
<column name="shopNumber" />
</property>
<property name="shopPice" type="java.lang.Integer">
<column name="shopPice" />
</property>
</class>
</hibernate-mapping>User 表
<hibernate-mapping>
<class name="cn.com.moisten.User" table="userTable" schema="dbo">
<id name="id" type="java.lang.Integer">
<column name="id" />
<generator class="identity" />
</id>
<property name="userName" type="java.lang.String">
<column name="userName" />
</property>
<property name="userPassword" type="java.lang.String">
<column name="userPassword" />
</property>
</class>
</hibernate-mapping>查询 Orders 表的时候不能得到 user表的信息
写入的时候没有问题。
解决方案 »
- jetty 访问突然出现404错误
- SSH框架中实现级联查询出错 报附表的session木有开启
- 在iReport中如何配置spring loaded Hibernate connection
- webwork action 自动执行两次,奇怪的问题!
- 设置struts配置文件后仍然Cannot retrieve mapping for action /AdminLogin
- @@@@@@@@@@有关cookie的简单问题
- JBOSS中端口如何改变?
- 第一个j2ee程序,出错了~~~~~~~~~
- 装完ant后执行报错
- 高分求教 wsad5.0傻瓜问题
- 想做MES系统,但是对数据的采集不够清楚!
- struts-config.xml 必须放在 WEB-INF下吗,放在src目录下怎么读取
这样你的对象模型User中要加一个Order的集合,然后在配置文件中作相应的配置,才能在查询Orders的时候得到user表的信息
当然你设置成双向的肯定能查到
8楼说的对,我用的是hibernate 3 ,检索策略自动启用延迟加载 lazy="true",所以当我查询一个类的时候,只查询了这个类而没有去查询他的关联类,当我在
<set lazy="false" /> <many-to-one lazy="false" />中设置 lazy="false"!! 才能使用立即检索策略,
对于我的问题也可笑,因为我看得是 孙卫琴的 hibernate 2 书籍,而我练习的程序是 hibernate 3的。。嘎嘎。。
8楼说的确实对,当采用延迟加载策略的时候,在session没有关闭前对 持久化对象所关联对象 使用set或get方法就会触发 查询,而得到关联的类。