直接入题
我使用 hibernate 保存一个 node , node 关联 build
代码片段
@Entity
@Table(name = "tb_node" , uniqueConstraints = {@UniqueConstraint(columnNames = {"node_name"})})
public class Node implements Serializable { private static final long serialVersionUID = 5739459432161066845L;
private Long id;
private Building build;
。 @ManyToOne(fetch = FetchType.LAZY,cascade={CascadeType.MERGE,CascadeType.REFRESH})
@JoinColumn(name = "build_id", nullable = false)
public Building getBuild() {
return build;
}
public void setBuild(Building build) {
this.build = build;
}
当我添加Node之后
dao.save(node);
List<RuleIndex> indexlst = getNodeParam(node);
if(indexlst != null){
addDefaultRule(node , indexlst);
}
node.setBuild(b_dao.get(node.getBuild().getId()));
dao.createNodeDataTable(node); build 信息只有 id
我必须去手动载入 build 信息, 很是奇怪 延迟加载在这里没有用 既然我保存了Node 这个node也是持久态了 如何直接使用build 就是不行 , 不过我想 肯定是我有知识点还不知道 我想如何在这里使用延迟加载我使用了opensessioninviewfilter 这个就不说了 waiting for you
解决方案 »
- hibernate类型问题 java.lang.IllegalArgumentException: object is not an instance of
- Htipclient
- jsp标准动作中,value="${param.username}"的作用
- JSP 文件上传 下载 问题
- 请大家帮我看看这个Ibatis数据库映射文件错在哪里?
- 求助,关于用POST方法直接调用WSDL描述的WEB SERVICE的问题
- 10分 求高手写一个能 得到当前日期 的方法!
- 系统无法运行STRUTS架构的WEB 请高手帮忙解决啊
- 问题很麻烦.后果很严重
- 没有门槛的短信平台,并且有短信分成
- 为什么我的cascade="all"失效了?
- 关于在Redhat Enterprise Linux 5 下,request.getAttribute("javax.servlet.request.X509Certificate")为null的问题
<filter-name>openSessionInView</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>sessionFactoryBeanName</param-name>
<param-value>sf</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>openSessionInView</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>