zoukankan      html  css  js  c++  java
  • spring的父子容器

    在创建ssm项目工程时,经常需要读取properties资源配置文件,传统的方法当然可以。

    但是spring提供了更简便的方法,@value注解。

    在page.properties文件中,配置分页信息。

    这个时候,发现在Service层用@value("${PAGESIZE}")可以取到10.

    然而在controller中同样的注解却不起作用了。

    原来,这涉及到了spring的父子容器问题。

    spring和springmvc都是容器。spring是父容器,springmvc是子容器。

    子容器可以访问父容器的对象,然而父容器却不能访问子容器的对象。

    mapper代理对象和Service对象都在spring容器中,controller对象在springmvc容器中。因为子容器是可以访问到父容器的对象的,

    所以在controller中可以随意注入Service和mapper。但是在Service和mapper中却不能访问controller。

    但是为什么在Service中可以取到pagesize,而controller中却取不到呢?因为这是属性,不是对象。

    如果想要在controller中取到配置信息,就需要再springmvc.xml配置文件中,扫描一下page.properties配置文件。

    这样springmvc容器中也就有了page.properties配置文件中的所有属性,在controller中自然就能访问到这些属性了。

  • 相关阅读:
    正则表达式 之领宽断言
    bat(续七)-for语句(循环结构)
    RBAC权限管理
    Redis缓存服务搭建及实现数据读写
    Myeclipse集成Maven(图文说明)
    实习第四周
    POJ 3461 Oulipo KMP算法题解
    原创文章
    apue和unp的学习之旅07——多种边界条件的讨论
    单链表的实现
  • 原文地址:https://www.cnblogs.com/jjkang/p/7772800.html
Copyright © 2011-2022 走看看