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 声明事务 当业务方法打开是都会打开一个事务