Hibernate 缓存 关于注解方式

要引入

import org.hibernate.annotations.Cache;

在类前面添加:

@Cache(usage= CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)

可选项有:

  • read-only

  • read-write

  • nonstrict-read-write

  • transactional

完整示例:

package com.hlcg.main.bean;


import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

import javax.persistence.*;

/**
 * Created with IntelliJ IDEA.
 * User: HYY
 * Date: 13-10-20
 * Time: 下午1:04
 * To change this template use File | Settings | File Templates.
 */
@Entity
@Table(name = "hl_key_value")
@Cache(usage= CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class KeyValue {
    private Integer id;//主键
    private String key;
    private String value;
    private Integer type;//类型
    private String description;//描述、简介


    @Id
    @SequenceGenerator(name = "increment")
    @GeneratedValue(strategy = GenerationType.AUTO, generator = "increment")
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Column(name = "`key`", unique = true,nullable=false, length = 200)
    public String getKey() {
        return key;
    }

    public void setKey(String key) {
        this.key = key;
    }


    @Column(name = "`value`", length = 3000)
    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }

    @Column(name = "`type`")
    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    @Column(length = 300)
    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}

注意key,value都是数据库的关键字 要加上``才行。

 

posted @ 2013-11-26 20:05  无忧之路  阅读(711)  评论(0编辑  收藏  举报
无忧之路