近期在用spring3做一个项目,用到了里面的一个自动扫描组件的特性.但是工程分为了好多个小项目,有个统一的开发平台,这个平台的支撑类会被我做成一个jar包被其它几个子工程引用.
开发的时候使用的是工厂引用工厂的方式,在eclipse里面的classpath里面把该平台工厂引入即可,避免了每次修改了平台代码都要重新打包的问题.这个方法不是在web project类型,对于web-project,还是需要沿用老办法,即打成jar包,然后让web-project引用进来.
这时发现个问题,就是平台下junit测试正常的一些spring bean,到了web-project里面发现无法关联到了.
搞了很久,也上网查了很多资料,一开始以为是要修改<context:component-scan >里面的resource-pattern属性,后来改来改去都解决不了问题.
最后发现一个问题,是我们的eclipse自带的jar打包程序,默认打包的时候有个选项<Add directory entries>没有勾选,只要勾选了,就完全没有问题了,无须再对<context:component-scan >进行任何修改了.
罪恶的<Add directory entries>选项啊!
分享到:
相关推荐
NULL 博文链接:https://xinglu.iteye.com/blog/1457029
在进行SSM框架整合之前,首先需要确保项目的类路径下已经包含了所有必要的jar包,包括但不限于Spring的核心包、SpringMVC包、MyBatis包以及相关的依赖库。 ##### 2. 整合SpringMVC SpringMVC的整合主要包括配置web...
<context:component-scan base-package="com.example.controller"/> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" ...
<context:component-scan base-package="com.example.controller"/> <!-- 视图解析器 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property ...
Spring 2.5.6需要引入spring.jar、spring-webmvc.jar、commons-logging.jar、cglib-nodep-2.1_3.jar等jar包。 Hibernate 3.6.8需要引入hibernate3.jar、hibernate-jpa-2.0-api-1.0.1.Final.jar、antlr-2.7.6.jar、...
而MyBatis则是一种优秀的持久层框架,它支持自定义SQL查询语句,并能很好地与Spring集成在一起,为开发者提供了高效的数据访问方案。 #### 二、Spring MVC介绍 Spring MVC是Spring框架的一个模块,专门用于构建Web...
<context:component-scan base-package="com.example.controller" /> <!-- 自定义拦截器配置 --> <mvc:interceptors> <bean class="com.example.interceptor.MyInterceptor" /> </mvc:interceptors> </beans> ...
<context:component-scan base-package="cn.abc.controller"/> </beans> ``` ##### 5.2 配置web.xml 设置`context-param`和`ContextLoaderListener`以启动Spring和Spring MVC。 **示例代码**: ```xml <!-- web....
<context:component-scan base-package="com.example.ssm.controller" /> ``` 3. **Web.xml 配置**: - 配置`ContextLoaderListener`和`DispatcherServlet`。 - 示例代码如下: ```xml <listener> <listener...
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet...
<context:component-scan base-package="com.springmvc.controller" /> </beans> ``` 4. **配置 web.xml**: 修改 `web.xml` 文件,添加 SpringMVC 的监听器和 Servlet 配置,如下: ```xml <?xml version=...
-- 自动扫描dao和service包 --> <context:component-scan base-package="me.gacl.dao,me.gacl.service"/> </beans> ``` 4. **创建配置属性文件**(`config.properties`): - 这个文件通常用于存储数据库连接...
2. spring-context.jar:包含Spring的上下文支持,用于处理bean的生命周期和依赖注入。 3. spring-core.jar:Spring的核心库,提供基本的IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming...
<spring.version>4.0.2.RELEASE</spring.version> <!-- 其他版本配置 --> </properties> <dependencies> <!-- Spring 核心依赖 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring...
- **扫描包含Controller的包**:通过`<context:component-scan>`元素指定需要扫描的包。 - **不处理静态资源**:通过`<mvc:default-servlet-handler/>`让Servlet容器处理静态资源。 - **启用注解驱动**:使用`<mvc:...
在这个例子中,"自带jar包"可能指的是包含了Spring MVC框架和其他必要库的JAR文件,这使得我们无需通过构建工具(如Maven或Gradle)来管理依赖。 2. **配置Spring MVC**:创建`web.xml`文件,这是Servlet容器(如...
<context:component-scan base-package="com.zhaolongedu"/> ``` - 配置Spring事务管理器: ```xml <bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">...