Java 系列之spring学习--注解

Posted WangJunZzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 系列之spring学习--注解相关的知识,希望对你有一定的参考价值。

一、注解

  使用注解之前要开启自动扫描功能

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/mvc 
       http://www.springframework.org/schema/mvc/spring-mvc.xsd 
       http://www.springframework.org/schema/context 
       http://www.springframework.org/schema/context/spring-context.xsd 
       http://www.springframework.org/schema/aop 
       http://www.springframework.org/schema/aop/spring-aop.xsd 
       http://www.springframework.org/schema/tx 
       http://www.springframework.org/schema/tx/spring-tx.xsd
       ">
   
  <context:component-scan base-package="SpringAnnotationBll,SpringAnnotationDal" />
</beans>

二、结构代码

    

三、常用注解

    @Service用于标注业务层组件、 
    @Controller用于标注控制层组件(如struts中的action)
    @Repository用于标注数据访问组件,即DAO组件。
    @Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
    @Scope用于指定scope作用域的(用在类上)

四、实例

  4.1、dao层代码
package SpringAnnotationDal;

public interface SpringAnnotationDal {

	public abstract void add();

}
package SpringAnnotationDal;

import org.springframework.stereotype.Repository;

@Repository
public class SpringAnnotationDalBean implements SpringAnnotationDal {

	/* (non-Javadoc)
	 * @see SpringAnnotationDal.SpringAnnotationDal#add()
	 */
	public void add()
	{
		System.out.print("add...");
	}
} 
  4.2、service层代码
package SpringAnnotationBll;

public interface SpringAnnotationBll {

	public abstract void add();

}
package SpringAnnotationBll;

import org.springframework.stereotype.Service;

import SpringAnnotationDal.SpringAnnotationDal;
@Service
public class SpringAnnotaionBllBean implements SpringAnnotationBll {

	private SpringAnnotationDal springAnnotationDal;
	public SpringAnnotationDal getSpringAnnotationDal() {
		return springAnnotationDal;
	}
	public void setSpringAnnotationDal(SpringAnnotationDal springAnnotationDal) {
		this.springAnnotationDal = springAnnotationDal;
	}
	public void add()
	{
		System.out.print("add...");
	}
}
  4.3、调用
package test;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import SpringAnnotationBll.SpringAnnotationBll;
import spring.testServiceBean;

public class cservlet extends HttpServlet {


	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
		SpringAnnotationBll services=(SpringAnnotationBll)context.getBean("springAnnotaionBllBean");
		services.add();
	}

} 

五、结果

 

 

以上是关于Java 系列之spring学习--注解的主要内容,如果未能解决你的问题,请参考以下文章

spring boot框架学习学前掌握之重要注解-通过java的配置方式进行配置spring

spring boot框架学习学前掌握之重要注解-java配置方式

Spring系列之Spring常用注解总结

Spring学习系列 通过Java代码装配Bean

Java之Spring入门到精通IDEA版IoC和DI注解开发(一篇文章精通系列)

Java之Spring入门到精通IDEA版IoC和DI注解开发(一篇文章精通系列)