针对view,我的办法是,不设置任何主键,在做hibernate映射文件的时候,在主键的策略上选择assiged那个,就是用程序去控制添加主键;再自动生成就ok了

解决方案 »

  1.   

    可以吗?
    我每次都选的是native
    试试看。
      

  2.   

    我觉得选了assiged后,生成的实体类和映射文件是一样的呢
      

  3.   

    maginn(maginn) :
    你能给我说详细点吗?谢谢了
      

  4.   

    当然不一样了,没有主键hibernate没有办法生成影射文件和对象,如果选择native是指主键生成策略是和使用的数据库相关的,而你的视图在创建的时候,应该是没有主键的(与table不一样),所以你要使用assiged来分配。
    不知道你用的什么数据库
    给你看一下我的view语句
    CREATE VIEW `****`.`view_table` AS  SELECT
             sale.saleid AS saleid,
             sale.imei as imei,
             sale.saledate as saledate,
             sale.mobileno as mobileno,
             sale.shopid as shopid,
             sale.inputflag as inputflag,
             sale.sm as sm,         shop.areaid as areaid,
             shop.shopname as shopname,
             shop.dealerid as dealerid,
             shop.saleDelegaterName as saleDelegaterName,
             shop.clientname as clientname,         imei.mobiletype as mobiletype,
             imei.agentname as agentname,
             imei.mobilestate as mobilestate  FROM
             sale_table as sale,
             shop_table as shop,
             imei_table as imei  where         sale.SHOPID = shop.SHOPID
             and
             sale.IMEI = imei.IMEI
      

  5.   

    ????
    冒看懂啊!
    我用hss的时候都用assiged
    但也要主键