<script src="http://style.blogcn.com/blogcnpage/publicjs/ajax/interface/comment.js" type=text/javascript></script> <script src="http://style.blogcn.com/blogcnpage/publicjs/ajax/interface/Rele.js" type=text/javascript></script> <script language=javascript> var htmltype = "diary_browse"; var objtitle="用Hibernate映射数据库视图View "; window.document.title = objtitle; var objid="14198640"; var articleid = 14198640; var diaryid=14198640; var commentlevel=1; var diary_tag=""; var obj_userid="918711"; var obj_username="imcb"; var obj_nickname="imcb"; var iscommentForm=true; if (commentlevel=="0"){ iscommentForm=false; } if(blogtype=='2') var resourcetype="5"; else var resourcetype="1"; </script> 用Hibernate映射数据库视图View 关于用Hibernate映射数据库视图View,在Hibernate官方文档里提到过,如下: There is no difference between a view and a base table for a Hibernate mapping, as expected this is transparent at the database level (note that some DBMS don't support views properly, especially with updates). Sometimes you want to use a view, but can't create one in the database (ie. with a legacy schema). In this case, you can map an immutable and read-only entity to a given SQL subselect expression: <class name="Summary"> <subselect> select item.name, max(bid.amount), count(*) from item join bid on bid.item_id = item.id group by item.name </subselect> <synchronize table="item"/> <synchronize table="bid"/> <id name="name"/> ... </class> Declare the tables to synchronize this entity with, ensuring that auto-flush happens correctly, and that queries against the derived entity do not return stale data. The <subselect> is available as both as an attribute and a nested mapping element |
用Hibernate映射数据库视图View
最新推荐文章于 2025-04-11 13:54:26 发布