• spring常用注解


    使用注解构造IOC、替代传统的applicationContext.xml配置<bean/>和<property/>

    传统的spring要在applicationContext.xml中配置:①<bean>类   ②<property>属性   如果有100个类和若干个属性,那么我们就要写成百上千个<bean>、<property>,这种就不利于维护,使用注解就能够解决这个问题。(项目中的方法也可以使用注解来替代)

    在使用类注解前要在applicationContext.xml文件中添加:

    <context:component-scan base-package="news"></context:component-scan>

    注意:base-package可以指定一个包也可指定多个包,多个包逗号隔开

    使用了<context:component-scan/>之后就可以把<context:annotation-config/>移除,因为<context:component-scan/>也能实现扫描包路径。

    1.(类)@Controller

    @Controller是对应控制层的<bean>,也就是action类

    用法:

    1 @Controller
    2 @Scope("prototype")
    3 public class NewsAction extends ActionSupport{
    4 ……
    5 }

    注意:如果@Controller不指定其value【@Controller】,则默认的bean名字为这个类的类名首字母小写,如果指定value【@Controller(value="UserAction")】或者【@Controller("UserAction")】,则使用value作为bean的名字。

    2、(类)@ Service

    @Service对应的是业务层Bean

    用法:

    1 @Service("NewsService")
    2 public class NewsServiceImpl implements NewsService {
    3 ………
    4 }

    3、(类)@ Repository

    @Repository对应数据访问层Bean,部分技术人员也喜欢叫dao类

    用法

    1 @Repository(value="NewsDao")
    2 public class NewsDaoImpl extends NewsDaoImpl {
    3 ………
    4 }

    注意:以上三种(@Controller、@Service、@Repository)是针对不同层的类所使用的注解,下面的是针对属性所使用的注解:

    4.(属性)@ Autowired (不推荐使用,建议使用@Resource)

    @Qualifier("...")

    用法(在实现类中封装一个属性并私有化,在属性上面添加@Autowired @Qualifier)

    如下:

    public class NewsDaoImpl implements NewsDao {
       //这种方式是spring注解
       @Autowired
    @Qualifier("mySessionFactory")
    private SessionFactory sf;
    }

     注意:加入@Qualifier是为了让spring准确地知道要注入的对象,括号里自定义属性名字

     

    5.(属性)@Resource(jdk)

    用法:

    public class NewsDaoImpl implements NewsDao {
        @Resource(name="mySessionFactory")
        private SessionFactory sf;
    }

    通过@Resource注解来给属性sf注入一个名字为mySessionFactory的值

  • 相关阅读:
    网上找的面试题-之一
    python里的Join函数
    【转载51CTO】Linux中引号那些事儿
    【面试编程题】巧妙排序:排序只有1,2,3三个元素的数组,不能统计1,2,3的个数。
    [转载]mininet的安装和使用
    Open vSwitch源码阅读【转】及自己的理解【稍后更新】
    7、8月份安排 进度条
    请不要忽视基础小细节
    【编程之美】2.20 程序理解问题
    GDOI2017爆炸记
  • 原文地址:https://www.cnblogs.com/gt18552/p/5992251.html
Copyright © 2020-2023  润新知