小窝

Hibernate 与 Spring 的常用注解

发布时间:7年前作者:shine热度: 863 ℃评论数:

Hibernate的注解

@Entity    表示本类是一个实体类
@Table(name="t_talbe")        表示本类映射的table    (解决了类名和表名不一致的问题)
@Column(name="id")            表示类中的属性对应表中的字段名    (解决了属性名和字段名不一致的问题)
@Temporal(TemporalType.DATE)        表示该属性是时间格式
@Transient    改属性不会被映射到表中
@Enumerated(EnumType.STRING)    把枚举中的String存储到数据库中
@GeneratedValue    定义 id 的生成策略
@TableGenerate    定义表生成器
1.name:表示该表主键生成策略的名称,被引用在@GeneratedValue中设置“generator”值中
2.table:表示表生成策略所持久化的表名
3.catalog和schema:指定表所在的目录名或是数据库名
4.pkColumnName:表示在持久化表中,该主键生成策略所对应键值的名称
5. valueColumnName:表示在持久化表中,该主键当前所生成的值,它的值将会随着每次创建累加
6. pkColumnValue:表示在持久化表中,该生成策略所对应的主键
7.  initialValue:表示主键初识值,默认为0
8.allocationSize:表示每次主键值增加的大小

  •  Spring的注解

    @Server      表示该类是一个业务层的Bean
    @Resource    与@Autowired  类似  可以对成员变量、方法及构造函数进行标注,完成自动装配的工作, 可以消除set、get方法
    @Repository  表示该类是一个Bean  将数据库访问层(DAO)的类标识成为 Spring Bean
    @Component   是一个泛化概念  仅仅表示一个组件(Bean) ,可以做用在任何层次
    @Constroller 表示该类一个控制层的Bena
    @Scope       定义Bean的作用范围
    1.singleton       定义bean的范围为每个spring容器的一个实例(默认)
    2.protoype        定义bean可以被多次实例化(使用一次创建一次)
    3.request         定义bean的范围是http请求(spring mvc中有效)
    4.session         定义bean的范围是http会话(spring mvc中有效)
    5.global-session  定义bean的范围是全局http会话
    
    @Transactional 声明事务 当业务方法打开是都会打开一个事务


热门评论

手机扫码访问