Spring注解

    xiaoxiao2021-03-25  69

    1、首先在web.xml进行配置,让web容器能够解析Spring配置文件。

    <!-- Spring MVC servlet --> <servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> <async-supported>true</async-supported> </servlet> <servlet-mapping> <servlet-name>SpringMVC</servlet-name> <!-- 此处可以可以配置成*.do,对应struts的后缀习惯 --> <url-pattern>/</url-pattern> </servlet-mapping>

    2、自动扫描带有注解的包,将带有注解的类,纳入到Spring容器中。

    <context:component-scan base-package="com.test" />

    3、在类上,使用以下注解,实现bean的声明。

    @Component 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

    @Service 用于标注业务层组件

    @Controller 用于标注控制层组件(如srping mvccontroller,struts中的action

    @Repository 用于标注数据访问组件,即DAO组件

    示例: @Controller @RequestMapping(value="/test") public String Test(){ ...... }

    在类的成员变量上,使用以下注解,实现属性的自动装配

    @Autowired : 按类类型进行装配

    @Resource (推荐) : 

    如果同时指定了nametype,则从spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常 2. 如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常  3.如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常  4.如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;

    @Resource注解在字段上,这样就不用写setter方法了,并且这个注解是属于J2EE的,减少了与spring的耦合。

    @Resource

    private TestServiceImpl testServiceImpl;

    转载请注明原文地址: https://ju.6miu.com/read-18261.html

    最新回复(0)