Spring常见注解及注解注入

  1. 首先要导入context约束,这是不能少的。
  2. 然后jar包也是必须的:目前是4+2+1个包,多了一个aop包。
  3. 在applicationContext.xml(一般默认)文件中导入扫描标签,它会扫描pojo包下的所有带注解的类,加入Spring容器中。本质上是扫描每个注解。 <context:component-scan base-package="com.hui.pojo"></context:component-scan>
  4. 在类前加上@Component //组件 注解
就像这样 @Component(“aaa”) //组件,可以给这个类起别名,getBean的时候就用aaa. public class Admin {…}

他有三个一样的衍生类,如下,功能一样,只是分的更细.

@Service //service层
@Controller // web层
@Repository // dao层

5.常见注解 属性注入的注解:

@Value :用于普通的类型的注入 eg: @Value(“骚气红”) private String color; 注解对象类型的字段 //@Autowired //从Spring容器中找到Car的对象,赋给car,如果有多个Car对象,会出错,此时用@resource来指定 @Resource(name="car2") //指定Spring容器中名为car2的Car对象赋给car; private Car car;

生命周期的配置

@PostConstruct //相当于init-method public void initMethod(){ System.out.println(“初始化方法被执行”); } @PreDestroy //相当于destroy-method public void destroyMethod(){ System.out.println(“销毁方法被执行”); }

自定义注解

@Target(ElementType.METHOD)// 限定某个注解只用于场合,字段、类、方法 @Retention(RetentionPolicy.RUNTIME) // source :只在源码中起作用 // class :在class文件中依然有效 // runtime :在运行时依然有效 public @interface Author { // public String name(); // public String password() default “123”; // 当只有一个value时,value值可写可不写 // public String value(); public String[] value(); } 对应的应用: @Author({“lisi”,”zhangsan”}) public void readBook(){…}

其他注解

@Override //重写 public String toString(){ return “abc”; } @Deprecated //标识该方法已过时,但可以用 public void ssss(){ } public void showList(){ @SuppressWarnings({ “rawtypes”, “unused” })// 忽略这些警告(没有写List的类型,list变量没有使用) List list = new ArrayList(); }
经验分享 程序员 微信小程序 职场和发展