猿问

hibernate 多对多 ,控制台只输出两条查询语句,没有 insert语句,困扰我一天了!

//测试代码

 public void test() {
  Project pro1 = new Project(1001, "pro001");
  Project pro2 = new Project(1002, "pro002"); 
  Employee emp1 = new Employee(1,"name1");
  Employee emp2 = new Employee(2,"name2");
 
  pro1.getEmployees().add(emp1);
  pro1.getEmployees().add(emp2);
  pro2.getEmployees().add(emp1);
  
  session.save(pro1);
  session.save(pro2);
 }


//project.hbm.xml

    <class name="com.baul.entity.Project" table="PROJECT">
        <id name="proid" type="int">
            <column name="proid" />
            <generator class="assigned" />
        </id>
        <property name="proname" type="java.lang.String">
            <column name="proname" not-null="true" />
        </property>
        <set name="employees" table="proemp" cascade="all">
            <key column="rproid" />
            <many-to-many class="com.baul.entity.Employee" column="rempid" />
        </set>
    </class>


//employee.hbm.xml

    <class name="com.baul.entity.Employee" table="EMPLOYEE">
        <id name="empid" type="int">
            <column name="empid" />
            <generator class="assigned" />
        </id>
        <property name="empname" type="java.lang.String">
            <column name="empname" />
        </property>
        <set name="projects" table="proemp" inverse="true" >
     <key column="rempid" />
            <many-to-many class="com.baul.entity.Project" column="rproid" />
        </set>
    </class>

//控制台输出结果

INFO: HHH000037: Columns: [rproid, rempid]
二月 29, 2016 3:45:46 下午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fk_rproid, fk_rempid]
二月 29, 2016 3:45:46 下午 org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [fk_rproid, fk_rempid]
二月 29, 2016 3:45:46 下午 org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
Hibernate: select employee_.empid, employee_.empname as empname2_0_ from EMPLOYEE employee_ where employee_.empid=?
Hibernate: select employee_.empid, employee_.empname as empname2_0_ from EMPLOYEE employee_ where employee_.empid=?



kele113
浏览 1818回答 1
1回答

慕粉4075985

transaction.commit();没写?
随时随地看视频慕课网APP

相关分类

Java
我要回答