加载springapp-servlet.xml 文件时内部有会发生什么啊?就是apserver启动的时候,什么时候,如何加载springapp-servlet.xml的!
当客户端,发出一个请求,当请求调用某个类的某个方法的时候,
当这个方法用到了注入的类或属性的时候.这个方法的get set方法,是怎么样获取这个注入类的句柄的?
获取的句柄,是apserver启动时加载springapp-servlet.xml后,就已经单例的初始化好了的类?
还是这时候才会根据springapp-servlet.xml文件,再重新new 一个??
每次请求,如果用到springapp-servlet.xml配置文件里面注入类的时候,都会new一次吗?
如果用到的这个注入的类,的很多属性也是springapp-servlet.xml里面的注入类.那又会怎么处理呢?例:public class WebMetho{
        public SpringClass getSpringClass;
        
        public SpringClass getGetSpringClass() {
return getSpringClass;
} public void setGetSpringClass(SpringClass getSpringClass) {
this.getSpringClass = getSpringClass;
}
       
       public void webMetho1()
       {
                //这个方法的get set方法,是怎么样获取这个注入类的句柄的
                getSpringClass.tellMeThx();
        }
}
springapp-servlet.xml<bean id="webMetho" class="com.cn.springcontroller.WebMetho">

        <property name="methodNameResolver">
      <ref bean="propertiesMethodNameResolver"/>
</property>
        <!--
                     用到的这个注入的类,的很多属性也是springapp-servlet.xml里面的注入类?
                 
                   WebMetho类的webMetho1方法用到editInfoDao注入类.
                   editInfoDao注入类又用到jdbcTemplate注入类
                  -->
                <property name="editInfoDao">
      <ref bean="editInfoDao"/>
</property>

</bean>
<bean id="editInfoDao" class="com.cn.springdao.EditInfoDao">
  <property name="jdbcTemplate" ref="jdbcTemplate"/>
</bean>

解决方案 »

  1.   

    这种问题为啥不baidu呢?多找些文章来看就好了,别人给你打字也是从那些帖子里找些话copy过来。而且也许辞不达意。
      

  2.   

    楼上的,你还真挺长脸的啊,真好意思啊看看这是举报他的帖子,还挂着呢
    http://topic.csdn.net/u/20080124/08/b14ab841-be1e-4d0d-b16e-52f77fd3a764.html?seed=1573367784
      

  3.   

    这个我可以稍微说一下,不一定那么准确,只是谈谈自己看法:
    Spring的MVC可以说稍微复杂了一些,但也封装得更加严密,在J2EE项目中服务器启动是跟web.xml密切相关的。首先:Spring的MVC可以参考Struts的加载原理,首先在web.xml里配置DispatcherServlet,即前段控制器。在初始化DispatcherServlet的时候就会去寻找 项目名字+"-servlet.xml"这样一个配置文件(也可以以任意名字在Web.xml中配置,可以参考Hibernate的原理),读取里面的配置信息,存在Config对象中。然后DispatcherServlet对于url的解析也提供了多种解析器,用不同的方法把请求转发到不同的后端控制器中。另外关于注入类的问题,Spring是典型的AOP思想,用IOC技术来实现任何类的注入。针对Spring MVC的实现是对于每一个后端控制器,在Spring MVC中叫做Controller,有默认的比如CommandClass这样的封装类,前台的表单提交会自动完成这个CommandClass的属性赋值,所以说白了CommandClass就是一个JavaBean,然后对于返回的前台页面来说,Spring也封装了专门的ModelAndView对象和解析器,解析器还扩展了众多前台技术,有针对Jsp的,有这对Velocity的等。关于每个请求都会new一个控制器的实例显然是不现实的,肯定是需要多线程并发访问的,说白了Spring MVC里面的所有Class对于Spring来说,都是一个Bean,Spring管理Bean的默认方式就是单例,当然也是可以改变Bean的默认配置的,要看具体情况。对于你的例子,Spring MVC的控制器对象应该配置在“-servlet”文件中,其他一切跟Web层无关的Bean都应该配置在另外的配置文件中,例如applicationContext.xml,这是个好习惯。由于有了IOC,以上所以所有这些类的方法,都可以用IOC的动态代理来拦截,并切入自己的处理方法,所以Intercepter对于Spring MVC也是很重要的。由于学习笔记不在身边,那些解析器的类型和每种类型的特性,还有一些源代码的特点都一时想不起来了,希望可以帮你解答一部分的疑云。见笑了……
      

  4.   

    baidu spring mvc 好贴很多 
      

  5.   

    某方法:我要运行啦!
    spring:你所需要的所有东西我都给你准备好了,请放心运行。