- 浏览: 299794 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (298)
- Tomcat (3)
- ZooKeeper (1)
- Maven (11)
- opensource (1)
- DataBase (5)
- UML (8)
- linux (87)
- Java (32)
- 算法 (3)
- Redis (1)
- HBase (2)
- 产品 (1)
- 模板引擎 (1)
- Eclipse (10)
- JUnit (5)
- Log4j (8)
- XML (2)
- JSON (1)
- SpringMVC (23)
- Spring (24)
- TCP/IP (4)
- Windows (10)
- Web Service (1)
- 源码版本管理 (1)
- Word (1)
- Test (1)
- Mybatis (7)
- CentOS (2)
- 多线程 (2)
- Web (7)
- Servlet (3)
- JavaWeb (4)
- MySQL (7)
- 汇编语言 (2)
- linux Shell (4)
- GIT (4)
- Python (1)
- 并发 (4)
- 编程通用 (1)
- JavaScript (1)
- 异常 (3)
- 自动化部署 (1)
- 大数据 (1)
- hive (2)
- 文本编辑器 (2)
- MINA (0)
- intellij IDEA (9)
- masm (0)
- blockchain (1)
- docker (2)
- IDEA (0)
- GO (3)
- nginx (1)
- springBoot (3)
- Websocket (2)
- macOS (1)
最新评论
-
woodding2008:
ss –pl 可以查看监听方式启动的端口以及pid
根据端口查PID,根据PID查进程名称 -
masuweng:
恩很试用,也很常用。
linux 常用命令
from: http://www.cnblogs.com/caryfang/p/5675178.html
我们先看下这两个东东的配置方法:
对于contextConfigLocation参数,有2个地方可以配置:
1)context-param 是全局性配置
2)servlet下的init-param 是局部性配置
若以上两处都设置了一个相同的bean配置文件路径,那么该文件内配置的bean会被初始化2次,所以一个配置文件只能选择一种配置位置;
项目中使用spring框架有2种方式:
1)listener下的ContextLoaderListener 是一种引入方式,默认读取/WEB-INF/applicationContext.xml
2)若是spring-web项目,DispatcherServlet 也是一种引入方式,默认读取/WEB-INF/${servlet-name}-servlet.xml
倘若以上2种配置都引入了,那么全局性的bean配置文件会被加载2次;而且2种方式的各自配置文件里的配置项在某种意义上并不是合并互补,而是各成一个体系(虽然普通的bean看似是都加载到全局上下文来了,但还是有一些特殊bean和配置项没有按预期的那样工作);
比如/WEB-INF/applicationContext.xml文件下里的AOP声明式配置:
<!--aop 行为-->
<bean id="himvn" class="com.tangbao.hellomvn.Himvn" />
<!--aop 注释方式-->
<bean id="hiaspect" class="com.tangbao.hellomvn.Hiaspect" />
<!--aop config-->
<aop:aspectj-autoproxy />
<aop:config>
<aop:aspect id="aoplianxi" ref="himvn">
<aop:pointcut id="test1" expression="execution(* com.tangbao.controller.RestlessController.RestlessController(..))"></aop:pointcut>
<aop:before method="sayHi" pointcut-ref="test1"></aop:before>
<aop:after method="sayHi" pointcut-ref="test1"></aop:after>
</aop:aspect>
</aop:config>
若只是在全局配置项中,而没有在DispatcherServlet 中加载,那么此aop会无效。
所以,在web项目中,就不要使用ContextLoaderListener 和全局配置contextConfigLocation参数了,统一在DispatcherServlet 下配置,应该就不那么混乱了。如下:
这样结果就如我们的预期:多bean配置文件不会出现重复加载,所有aop配置也都生效。
以上论点是在spring4.3.1下亲测所得,当然是从表现猜测本质的,还没有真正去研读Spring的源码,所以若有原理说错之处,还望各位看官指出!
我们先看下这两个东东的配置方法:
对于contextConfigLocation参数,有2个地方可以配置:
1)context-param 是全局性配置
2)servlet下的init-param 是局部性配置
若以上两处都设置了一个相同的bean配置文件路径,那么该文件内配置的bean会被初始化2次,所以一个配置文件只能选择一种配置位置;
项目中使用spring框架有2种方式:
1)listener下的ContextLoaderListener 是一种引入方式,默认读取/WEB-INF/applicationContext.xml
2)若是spring-web项目,DispatcherServlet 也是一种引入方式,默认读取/WEB-INF/${servlet-name}-servlet.xml
倘若以上2种配置都引入了,那么全局性的bean配置文件会被加载2次;而且2种方式的各自配置文件里的配置项在某种意义上并不是合并互补,而是各成一个体系(虽然普通的bean看似是都加载到全局上下文来了,但还是有一些特殊bean和配置项没有按预期的那样工作);
比如/WEB-INF/applicationContext.xml文件下里的AOP声明式配置:
<!--aop 行为-->
<bean id="himvn" class="com.tangbao.hellomvn.Himvn" />
<!--aop 注释方式-->
<bean id="hiaspect" class="com.tangbao.hellomvn.Hiaspect" />
<!--aop config-->
<aop:aspectj-autoproxy />
<aop:config>
<aop:aspect id="aoplianxi" ref="himvn">
<aop:pointcut id="test1" expression="execution(* com.tangbao.controller.RestlessController.RestlessController(..))"></aop:pointcut>
<aop:before method="sayHi" pointcut-ref="test1"></aop:before>
<aop:after method="sayHi" pointcut-ref="test1"></aop:after>
</aop:aspect>
</aop:config>
若只是在全局配置项中,而没有在DispatcherServlet 中加载,那么此aop会无效。
所以,在web项目中,就不要使用ContextLoaderListener 和全局配置contextConfigLocation参数了,统一在DispatcherServlet 下配置,应该就不那么混乱了。如下:
这样结果就如我们的预期:多bean配置文件不会出现重复加载,所有aop配置也都生效。
以上论点是在spring4.3.1下亲测所得,当然是从表现猜测本质的,还没有真正去研读Spring的源码,所以若有原理说错之处,还望各位看官指出!
发表评论
-
spring mvc处理方法支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void
2017-10-22 22:50 1116http://blog.csdn.net/wm5920 ... -
SpringMVC里的Root/Child WebApplicationContext的继承关系(Listener和servlet加载spring文件的区别)
2017-10-22 21:10 788简述: 在tomcat启动控制台输入如下信息: ... -
Spring 国际化信息
2017-09-12 11:23 456引用 http://stamen.iteye.com/bl ... -
Spring 返回json数据
2017-07-24 15:27 895参考:http://www.cnblog ... -
mybatis与spring集成 对应版本支持查看
2017-07-14 15:59 2370地址:点击打开链接 查看依赖版本 -
SpringMVC源码剖析(一)- 从抽象和接口说起
2017-05-15 21:09 608非本人原创,转自 https ... -
Spring ContextLoaderListener与DispatcherServlet所加载的applicationContext的区别
2017-03-14 14:45 1171from: http://blog.csdn.net/madu ... -
applicationContext.xml 和 springmvc-servlet.xml 配置文件加载顺序
2016-12-20 15:32 783applicationContext.xml是随Context ... -
Spring Bean管理
2016-11-02 19:29 600from: http://blog.csdn.net/a9 ... -
标签<context:component-scan/><context:annotation-config/><mvc:annotation-driven/>
2016-11-02 19:24 482from: http://yimengzhu.iteye.co ... -
ContextLoaderListener与DispatcherServlet所加载的applicationContext的区别
2016-11-02 19:16 503本人来自: http://blog.csdn.net/madu ... -
DispatcherServlet 和 ContextLoaderListener 区别
2016-11-02 19:16 748总结一下: Spring的WebApplicationC ... -
spring 3.0.5的<mvc:resources> 标签的使用
2016-11-01 23:59 609from: http://ericxiong.iteye. ... -
Spring加载resource时classpath*:与classpath:的区别
2016-10-19 10:14 972from : http://blog.csdn.net/ ... -
Java web工程web.xml 配置中classpath: 与classpath*:的区别
2016-10-19 10:13 427首先 classpath是指 WEB-INF文件夹下的clas ... -
spring mvc路径匹配
2016-10-18 22:37 711Ant path 匹配原则 在Spring MVC中经常要用到 ... -
SpringMVC中Controller的@ResponseBody注解或HttpResponseServlet输出内容
2016-09-29 15:18 1181需求分析:需要 利用 out 对象返回给财付通是否接收 ... -
SpringMVC 的请求参数获取的几种方法
2016-09-28 16:57 585通过@PathVariabl注解获取路径中传递参数JA ... -
SpringMVC的各种参数绑定方式
2016-09-28 16:53 444from: http://www.cnblogs.com/ ... -
Spring MVC DispatcherServlet详解
2016-09-28 13:51 601Spring MVC的特点 Spring M ...
相关推荐
4. 结构关系:DispatcherServlet可以访问由ContextLoaderListener创建的全局ApplicationContext,同时还可以拥有自己的局部(servlet)ApplicationContext,以实现更高的隔离性和灵活性。 在实际开发中,两者协同...
`web.xml`文件主要用来定义Servlet、过滤器、监听器等组件,以及它们的映射关系和初始化参数。它是Servlet容器(如Tomcat)启动时会读取的配置文件,用于指导容器如何加载和管理Web应用。 ### 2. `...
要想在程序中使用DispatcherServlet,我们需要在web.xml中配置一个DispatcherServlet。配置的方法是,在web.xml文件中,配置一个 `<servlet>` 节点,它的子节点 `<servlet-name>` 可以自定义一个名字,例如sample, ...
- **web.xml**:Web应用的部署描述符,配置了DispatcherServlet和ContextLoaderListener。 - **servlet-context.xml**:Spring MVC的配置文件,定义了视图解析器、拦截器、数据源、Bean等。 - **Controller类**:...
在web.xml中,我们需要配置Spring的DispatcherServlet和ContextLoaderListener。前者负责SpringMVC的请求分发,后者初始化Spring的ApplicationContext。同时,我们还需要配置过滤器,如CharacterEncodingFilter,以...
- 配置web.xml:在web.xml中需要配置ContextLoaderListener和DispatcherServlet。ContextLoaderListener负责加载Spring配置文件,初始化Spring容器;DispatcherServlet负责请求分发。 - 配置DispatcherServlet:...
6. 配置web.xml,设置DispatcherServlet和ContextLoaderListener,加载Spring的配置文件。 7. 编写测试用例,可以是JUnit测试,也可以通过浏览器发送HTTP请求,验证添加、查询等功能是否正常工作。 整合这三个框架...
在 web.xml 文件中,我们可以使用 ContextLoaderListener 来初始化 Root WebApplicationContext,然后使用 DispatcherServlet 来初始化 Servlet WebApplicationContext。代码示例: ```xml <listener-class>org....
3. **配置SpringMVC**:在`web.xml`中配置DispatcherServlet和ContextLoaderListener,然后在Spring的配置文件中声明bean,包括Controller、Service、DAO等。 4. **配置MyBatis**:创建`mybatis-config.xml`,并在...
- **web.xml**:传统方式下,需要在该文件中配置 DispatcherServlet 和 ContextLoaderListener。 - **SpringMVC 配置文件**:定义 HandlerMapping、ViewResolver 等组件,以及 Controller 的映射规则。 - **注解...
- `web.xml`:配置Spring MVC的DispatcherServlet和ContextLoaderListener。 - `applicationContext.xml`:定义Spring容器的Bean,包括数据源、事务管理器、Service和DAO。 - `pom.xml`:Maven项目配置文件,包含...
7. 配置web.xml:设置DispatcherServlet和ContextLoaderListener,启动Spring的上下文加载。 8. 测试:运行项目,验证各个组件是否正常工作。 通过这样的集成,你可以利用SpringMVC的强大功能处理HTTP请求,同时...
在SSM整合中,SpringMVC容器和Spring容器的关系尤为重要。SpringMVC容器是Spring容器的子容器,这意味着Controller可以从SpringMVC容器访问到由Spring容器管理的Service对象,从而实现业务逻辑的流转。这种设计增强...
8. 配置web.xml:添加DispatcherServlet和ContextLoaderListener配置。 9. 测试:编写测试类或者通过IntelliJ IDEA的Run功能进行功能验证。 五、IntelliJ IDEA中的辅助工具 IntelliJ IDEA提供了一些方便SSM开发的...
- 首先,Web容器加载`web.xml`,其中定义了Spring的DispatcherServlet和ContextLoaderListener。 - ContextLoaderListener会先加载`applicationContext.xml`,初始化Spring的ApplicationContext。 - 接着,...
接着,配置web.xml文件,设置DispatcherServlet和ContextLoaderListener。在src/main/resources下创建Spring的配置文件,如applicationContext.xml和servlet-context.xml,用于定义Bean和Spring MVC的配置。同时,...
2. **创建SpringMVC配置**:编写`web.xml`文件,这是Web应用的部署描述符,用来配置SpringMVC的DispatcherServlet和ContextLoaderListener。DispatcherServlet负责处理HTTP请求,而ContextLoaderListener则初始化...
2. 配置Spring MVC:创建web.xml文件,配置DispatcherServlet和ContextLoaderListener。 3. 创建Controller:编写处理HTTP请求的Controller类,使用@RequestMapping注解映射URL。 4. 定义Service和DAO:分别处理业务...
3. `web.xml` - Web应用的部署描述符,配置DispatcherServlet和ContextLoaderListener。 4. `Controller`类 - 使用Spring MVC注解处理HTTP请求,调用Service层方法。 5. `Service`类 - 业务逻辑层,通常使用@...