Ordinary hut

          人間一福地,勝似天仙宮
          posts - 61, comments - 50, trackbacks - 0, articles - 1
          是否這樣設置了一對多,比如父類是Customer
          <set name="orderses" lazy="true" cascade="all" inverse="true">

          其實很簡單,當子類要進行保存操作的時候,要先到數據庫里面去查詢是否已經存在了,如果存在了就調用update,否則就是insert,這就產生了那條select
          如果是多條Order的話,就會產生多個sql語句
          也不能說影響性能,正常寫jdbc的時候也需要這么判斷的

          如果想去掉這個查詢語句,那只有麻煩點了,就是去掉
          <set name="orderses" lazy="true" cascade="all" inverse="true">
          中的cascade="all"
          變為
          <set name="orderses" lazy="true" inverse="true">
          ,默認的cascade是null的
          然后手工保存子類(Orders),比如:
          session.save(cust)
          session.save(orders1)
          session.save(orders2)

          一堆多余的sql了,但是增加了代碼的工作量
          主站蜘蛛池模板: 安仁县| 井冈山市| 长岛县| 新竹市| 辛集市| 喀什市| 兴安县| 广河县| 洞头县| 扶绥县| 马龙县| 健康| 讷河市| 庆云县| 名山县| 富顺县| 咸宁市| 太康县| 遂昌县| 普格县| 苍溪县| 张家界市| 都昌县| 泰顺县| 太白县| 沐川县| 抚顺市| 海原县| 云南省| 武汉市| 辽阳县| 色达县| 扎鲁特旗| 镇原县| 静安区| 洛阳市| 得荣县| 吴旗县| 高雄县| 科技| 饶河县|