一、认识注解
注解(Annotation)很重要,未来的开发模式都是基于注解的,JPA是基于注解的,Spring2.5以上都是基于注解的,Hibernate3.x以后也是基于注解的,现在的Struts2有一部分也是基于注解的了,注解是一种趋势,现在已经有不少的人开始用注解了,注解是JDK1.5之后才有的新特性
JDK1.5之后内部提供的三个注解
@Deprecated 意思是“废弃的,过时的”
@Override 意思是“重写、覆盖”
@SuppressWarnings 意思是“压缩警告”
范例:注解的应用:
1 package cn.gacl.annotation; 2 /** 3 * 此类是用来演示注解(Annotation)的应用的,注解也是JDK1.5新增加的特性之一 4 * JDK1.5内部提供的三种注解是:@SuppressWarnings(":deprecation")、@Deprecated、@Override 5 * @author 孤傲苍狼 6 * 7 */ 8 /** 9 * 类名的命名是有讲究的,类名、属性名、变量名一般是名词,或者是形容词+名词,方法一般是动词,或者是动词+名词, 10 * 以AnnotationTest作为类名和以TestAnnotation作为类名是有区别的, 11 * 前者是注解的测试,符合名词的特征,后者是测试注解,听起来就是一个动作名称,是方法的命名特征 12 */ 13 public class AnnotationTest { 14 /** 15 * @param args 16 */ 17 @SuppressWarnings(":deprecation") 18 //这里就是注解,称为压缩警告,这是JDK内部自带的一个注解,一个注解就是一个类,在这里使用了这个注解就是创建了SuppressWarnings类的一个实例对象 19 public static void main(String[] args) { 20 System.runFinalizersOnExit(true); 21 //The method runFinalizersOnExit(boolean) from the type System is deprecated(过时的,废弃的) 22 //这里的runFinalizersOnExit()方法画了一条横线表示此方法已经过时了,不建议使用了 23 } 24 @Deprecated //这也是JDK内部自带的一个注解,意思就是说这个方法已经废弃了,不建议使用了 25 public static void sayHello(){ 26 System.out.println("hi,孤傲苍狼"); 27 } 28 @Override //这也是JDK1.5之后内部提供的一个注解,意思就是要重写(覆盖)JDK内部的toString()方法 29 public String toString(){ 30 return "孤傲苍狼"; 31 } 32 }
总结:注解(Annotation)相当于一种标记,在程序中加入注解就等于为程序打上某种标记,没有加,则等于没有任何标记,以后,javac编译器、开发工具和其他程序可以通过反射来了解你的类及各种元素上有无何种标记,看你的程序有什么标记,就去干相应的事,标记可以加在包、类,属性、方法,方法的参数以及局部变量上。
注解就相当于一个你的源程序要调用一个类,在源程序中应用某个注解,得事先准备好这个注解类。就像你要调用某个类,得事先开发好这个类。
@name
@Name和spring中的@Component相同。
*@controller 控制器(注入服务)
用于标注控制层,相当于struts中的action层
@Name可以有值,如果没有值生成的bean名称默认和类名相同。
例如:
@Named public class person
bean的名字就是person
@Named(ps) public class Person
如果指定名字,就是该名字
@requestScope
(1)request对象通常用来接收从客户端通过表单提交过来的数据,然后在servlet或者action中用request.getParameter()的方法获取获取参数内容;
(2)而requestScope通常是在servlet和action中通过request.setAttribute()方法把数据放到request对象中供客户端获取,然后客户端获取的方法就是requestScope.getAttribute()。