zoukankan      html  css  js  c++  java
  • Spring的注解开发

    低版本注解:

    如果要让spring支持注解,必须开启注解支持及组件扫描。

    配置文件applicationContextOfAnnotation.xml:


    base-package指定在Demo及其内部文件夹扫描遍历所有注解。

    注解@Component不属于任何层

    注解@Component(id)完成创建对象,不方便区分属于哪一层但是需要注解管理时使用

    注解@Controller代表MVC控制层

    在SpringMVC中用的比较多

    注解@Service代表业务层

    衍生注解@Service(id)完成service层的bean实例化,可读性更强

    注解@Repository代表DAO层

    衍生注解@Repository(id)完成dao层的bean实例化,可读性更强

    接口UserDao的实现类UserDaoImpl:

    注解@Autowired按照类型自动注入

    @Autowired自动注入,可以配合Qualifier使用,可以单独使用。单独使用时是按照下面的类型注入,前提是该类型在配置文件中唯一。


    注解@Qualifier

    @Qualifier(想要注入的bean的id),必须结合Autowired使用,按照id名称从容器中进行匹配。

    注解@Resource

    @Resource(name=id),相当于@Autowired+@Qualifier一起使用【需要加name,jdk9已删除,不推荐使用】

    userService:

    注解配置的情况下,set方法可以不写

    注解@Repository

    衍生注解@Repository完成web层的bean实例化,可读性更强,但是我们是虚假的web程序不能用这个

    虚假的web程序:


    注解@Value:支持SpEL ${}

    注解@Scope

    前面讲过,不演示

    注解@PostConstruct

    初始化

    注解@PreDestroy

    结束



    高版本注解,不推荐使用

    @Configuration标注一个类是配置类

    当我们看到这个注解,说明这个类是Spring的配置类

    @ComponentScan组件扫描,替代配置文件组件扫描标签

    扫描如下的注解,被扫描到的注解会自动被当成配置类去加载【不推荐使用,过于憨批】

    @PropertySource替换配置文件的placeholder标签

    用于引入properties配置文件供spring使用

    @Import引入

    在配置类中引入其他配置类

    @Bean

    一般用于第三方工厂方法去创建对象

    用注解全部替换掉applicationContext.xml配置文件:


    jdbc.properties:

    UserDaoImpl:

    UserServletImpl:

    FakeServletOfAnnotation:

    执行FakeServletOfAnnotation结果:

  • 相关阅读:
    Android application context/activity context与内存泄露(转)
    Android Slide Menu相关
    android 实现自定义卫星菜单
    关于引用Theme.AppCompat theme的报错问题
    java中volatile关键字的含义
    自定义控件其实很简单1/3
    Android 修改应用程序字体
    Android字体工作原理
    颜色渐变的算法
    Android系统下载管理DownloadManager功能介绍及使用示例
  • 原文地址:https://www.cnblogs.com/maomaodesu/p/12190201.html
Copyright © 2011-2022 走看看