<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    瘋狂

    STANDING ON THE SHOULDERS OF GIANTS
    posts - 481, comments - 486, trackbacks - 0, articles - 1
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    hibernate annoation (四 lob)

    Posted on 2009-11-02 14:57 瘋狂 閱讀(758) 評(píng)論(0)  編輯  收藏 所屬分類: java 、hibernate

    hiberante sql映射對(duì)應(yīng)

     

    Java數(shù)據(jù)類型 Hibernate數(shù)據(jù)類型 標(biāo)準(zhǔn)SQL數(shù)據(jù)類型
    (PS:對(duì)于不同的DB可能有所差異)
    byte、java.lang.Byte byte TINYINT
    short、java.lang.Short short SMALLINT
    int、java.lang.Integer integer INGEGER
    long、java.lang.Long long BIGINT
    float、java.lang.Float float FLOAT
    double、java.lang.Double double DOUBLE
    java.math.BigDecimal big_decimal NUMERIC
    char、java.lang.Character character CHAR(1)
    boolean、java.lang.Boolean boolean BIT
    java.lang.String string VARCHAR
    boolean、java.lang.Boolean yes_no CHAR(1)('Y'或'N')
    boolean、java.lang.Boolean true_false CHAR(1)('Y'或'N')
    java.util.Date、java.sql.Date date DATE
    java.util.Date、java.sql.Time time TIME
    java.util.Date、java.sql.Timestamp timestamp TIMESTAMP
    java.util.Calendar calendar TIMESTAMP
    java.util.Calendar calendar_date DATE
    byte[] binary VARBINARY、BLOB
    java.lang.String text CLOB
    java.io.Serializable serializable VARBINARY、BLOB
    java.sql.Clob clob CLOB
    java.sql.Blob blob BLOB
    java.lang.Class class VARCHAR
    java.util.Locale locale VARCHAR
    java.util.TimeZone timezone VARCHAR
    java.util.Currency currency VARCHAR

     

    一,針對(duì)大字段也就是 colb,blob

     在hibernate annoation里面可以如下使用:

      @Lob
     public String getC() {
      return c;
     }
     @Lob
     public byte[] getB() {
      return b;
     }

     java.sql.Clob, Character[], char[] and java.lang.String 會(huì)被映射為 Clob. java.sql.Blob, Byte[], byte[] and serializable 會(huì)被映射為Blob.

      當(dāng)然我們可以使用正對(duì)不同的數(shù)據(jù)庫(kù)使用數(shù)據(jù)庫(kù)原始類型例如 mysql:使用@Column   (columnDefinition="longtext")(不推薦使用這種 防止有些數(shù)據(jù)庫(kù)的對(duì)clob和blob的不支持)

      對(duì)blob也可以不進(jìn)行任何注釋但是在使用的時(shí)候會(huì)有預(yù)想不到的錯(cuò)誤 例如 mysql 他會(huì)映射為TINYBLOB 其容量為 256 字節(jié)  如果加上lob注釋 則映射為L(zhǎng)ONGBLOB 容量為4g,可想而知 相見(jiàn)我的利益篇文章:

    http://ericjoe.javaeye.com/admin/blogs/443623

    則可以映射為數(shù)據(jù)庫(kù)對(duì)應(yīng)的clob內(nèi)省或者blob內(nèi)型 例如(mysql:b longblob, c longtext);

    存取的時(shí)候clob就可以按照string類型來(lái)處理 而blob可以以流的形式來(lái)處理 例如:

    存的時(shí)候:

    BufferedInputStream in = new BufferedInputStream(new FileInputStream(
        new File("d:\\19204.jpg")));
      byte[] b = new byte[in.available()];
      in.read(b);

    bean.setB(b);

    in.close();

    讀?。?/p>

    Session session = HibernateSessionFactory.getSession();
      User user = (User)session.get(User.class, 1);
      byte[] b = user.getB();
      BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(
        new File("d:\\192041.jpg")));
      out.write(b);
      out.close();

    主站蜘蛛池模板: 亚洲精品亚洲人成在线播放| 七次郎成人免费线路视频| 国产精品免费电影| 最近免费中文字幕中文高清| 亚洲乱码卡一卡二卡三| 亚洲AV中文无码乱人伦| 亚洲高清视频免费| 一区二区三区在线观看免费| 亚洲成人黄色在线观看| 亚洲精品国产va在线观看蜜芽| 日韩免费无码一区二区三区 | 亚洲高清国产拍精品26U| 一个人在线观看视频免费| 中国好声音第二季免费播放| 亚洲1区1区3区4区产品乱码芒果| 亚洲国产日韩成人综合天堂| 日本最新免费网站| 精品乱子伦一区二区三区高清免费播放| 亚洲成人在线免费观看| 久久亚洲中文字幕精品一区| 成年18网站免费视频网站| 免费成人在线视频观看| 国产精品亚洲va在线观看| 亚洲日韩国产精品无码av| 亚洲深深色噜噜狠狠爱网站| 浮力影院第一页小视频国产在线观看免费| 三年片在线观看免费| 国产精品亚洲va在线观看| 色偷偷女男人的天堂亚洲网| 久久夜色精品国产亚洲AV动态图| 免费中文字幕不卡视频| 国产三级在线观看免费| 最刺激黄a大片免费网站| 中国人免费观看高清在线观看二区| 亚洲av中文无码乱人伦在线观看 | 日本免费人成视频播放| 曰曰鲁夜夜免费播放视频| 国产成人AV片无码免费| 男女拍拍拍免费视频网站| 美女裸体无遮挡免费视频网站| 亚洲午夜久久久久久尤物|