hibernate list null index column for collection

把invers="true" 去掉就ok了。不知道怎么回事

package cn.isvi.entity;

import java.util.ArrayList;
import java.util.List;

public class VideoClipMenu implements java.io.Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -4812042737317592088L;
	
	private Integer id;
	private String menuName;
	private VideoClipMenu parentMenu;
	
	private List<VideoClipMenu> children=new ArrayList<VideoClipMenu>();
	
	
	public void addMenu(VideoClipMenu menu){
		children.add(menu);
		menu.parentMenu=this;
	}

	
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getMenuName() {
		return menuName;
	}
	public void setMenuName(String menuName) {
		this.menuName = menuName;
	}

	public VideoClipMenu getParentMenu() {
		return parentMenu;
	}
	public void setParentMenu(VideoClipMenu parentMenu) {
		this.parentMenu = parentMenu;
	}
	public List<VideoClipMenu> getChildren() {
		return children;
	}
	public void setChildren(List<VideoClipMenu> children) {
		this.children = children;
	}

	
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    
<hibernate-mapping package="cn.isvi.entity">
   <class name="VideoClipMenu" 
   table="VideoClipMenu">
     <id name="id" column="id">
 		 <generator class="increment">
	 	</generator>
     </id>
     
     <property name="menuName"></property>
    	
      <list name="children" cascade="all" lazy="false"> //把invers="true"去掉
     	<key column="parentId"></key>
     	<list-index column="hello"></list-index>

     	<one-to-many class="cn.isvi.entity.VideoClipMenu"/>
     </list>
    
    
     <many-to-one name="parentMenu" column="parentId"></many-to-one>
   </class>
   
    <!-- 
       <set name="children" 
     	cascade="save-update" lazy="false" inverse="true">
     	<key column="parentId"></key>
     	<one-to-many class="cn.isvi.entity.Menu"/>
     </set>
    
      -->
   <!-- 
   private Integer id;//id
	private String title;//标题
	private String author;//作者
	private String content;//内容
	private Date pubDate;//发布日期
    -->
</hibernate-mapping>
 }

 

package cn.isvi.test;测试

import java.util.List;

import cn.isvi.dao.TemplateDAO;
import cn.isvi.dao.impl.TemplateDAOImpl;
import cn.isvi.entity.VideoClipMenu;

public class VideoClipMenuTest {
	
	public static void main(String args[]){
		TemplateDAO tdao=new TemplateDAOImpl();
//		VideoClipMenu all=new VideoClipMenu();
//		all.setMenuName("1级");
//		
//		VideoClipMenu s1=new VideoClipMenu();
//		s1.setMenuName("2级");
//		
//		all.addMenu(s1);
//	
//		
//		VideoClipMenu s2=new VideoClipMenu();
//		s2.setMenuName("3级");
//		
//		s1.addMenu(s2);
		List<VideoClipMenu> menus=null;
		try {
//			tdao.saveObj(all);
			menus=tdao.selectObjs(VideoClipMenu.class);
			 System.out.println(menus.size());
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		for(VideoClipMenu cm:menus){
			System.out.println(cm.getMenuName());
		}
	
	}
}
 

你可能感兴趣的:(DAO,Hibernate,.net,xml)