1.spring4.3.2 学习
2.spring jar进行了拆分,便于进行选择性引入。
3.spring jar 版本冲突,为此maven 提出BOM概念,使用dependencyManagement,使用不用再申明版本。
<span style="font-size:18px;"> <dependencyManagement>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-framework-bom</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
</dependencyManagement></span>
4. repsitory配置:/release to /milestone or /snapshot
<repositories>
<repository>
<id>io.spring.repo.maven.release</id>
<url>http://repo.spring.io/release/</url>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
5.spring 日志模块,需要统一,最好一个模块管理日志,其余的依赖。
commons-logging 在spring-core里,对于一个新的project,推荐使用slf4.那么commons-logging,需要进行dependecyManager剔除(slf4编译时绑定,而非commons-logging,运行时绑定,效率高):
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.2.RELEASE</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.5.8</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.8</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.8</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
Logback 仅需要两个:jcl-over-slf4j and logback
6. log4j,需要配置:
log4j.properties or log4j.xml classpath
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
</dependency>
</dependencies>
log4j.rootCategory=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n
log4j.category.org.springframework.beans.factory=DEBUG
7.spring4. 支持java8,groovy, 要求至少java6 ,移除废弃的类和方法。
8.beans context支持ioc.
BeanFactory 以及子接口ApplicationContext.BeanFactory 提供配置和基本给你,ApplicationContext提供企业级应用功能.内存小设备,优先BeanFactory。
9.java spring 配置文件,java 注解,java configuration都是spring bean metada, spring context container,进行加载使用。
ApplicationContext context =
new ClassPathXmlApplicationContext(new String[] {"services.xml", "daos.xml"});
10.import 导入其他xml 配置
<pre name="code" class="html"><beans>
<import resource="services.xml"/>
<import resource="resources/messageSource.xml"/>
<import resource="/resources/themeSource.xml"/>
<bean id="bean1" class="..."/>
<bean id="bean2" class="..."/>
</beans
11.资源文件配置路径,不应该出现../等相对路径。
12 xml中id,name可以不指定,默认帮你创建。