1、Spring的注解
关于配Bean用的
@Component
@Controller @Service @Repository
作用:都是用于创建bean对象。都有一个value属性,用于指定bean的id。
关于注入参数的
@Autowired:自动按照类型注入。
如果有多个类型都匹配时,它会使用变量名称作为bean的id。在容器中查找
找到了也能注入成功。找不到就报错。
@Qualifier:在按照类型注入的基础之上,再按照名称注入。
@Resource:直接就是按照名称注入。
指定bean的id的属性:name
//--------------以上三个都是用于注入其他bean类型的--------------------------------
@Value:用于注入基本类型以及String类型数据的
关于Bean的作用范围的
@Scope:指定bean的作用范围。
singleton:单例
prototype:多例
request
session
globalsession
关于事务控制的
@Transactional:用于控制事务。可以出现在接口上,类上和方法上。
出现在接口上,表示当前接口的所有实现类均有事务支持。
出现类上,表示当前类的所有方法都有事务的支持。
出现在方法上,表示当前方法有事务的支持。
优先级:就近原则。
2、Struts2的注解
@ParentPackage:指定当前包的父包。和配置文件中extends的属性作用一样。
@Namespace:指定当前类的访问名称空间。和配置文件中namespace属性作用一样。
@Results:用于指定多个结果视图。里面包含的都是@Result。
@Result:用于指定结果视图。
属性:name:和动作方法返回值一致。type:前往页面的方式(转发/重定向)
location:前往的页面。写法必须是/xxx/xxxx/..../xxx.jsp
//------------------以上四个注解都是写在动作类上的----------------------------
@Action:用于指定动作名称。和jsp页面上访问的动作名称应该保持一致。此处不需要也不能写后缀。
3、Hibernate的注解
@Entity:指定当前类是一个实体了,用于让hibernate扫描并生成映射配置。
@Table:指定当前类和数据库表的对应关系。
@Id:指定当前字段是主键字段。就是Hiberante中的OID。
@Column:指定当前字段和数据库表中的列的对应关系。
@GeneratedValue:指定主键的生成策略。
IDENTITY:支持数据库字段自增长
SEQUENCE:支持数据库序列自增长
AUTO:使用Hibernate中的高低位算法。
@OneToOne 一对一映射用
@ManyToOne 多对一映射用
@OneToMany 一对多映射用
@ManyToMany 多对多映射用