1:Spring其核心就是提供一种新的机制管理业务对象及其依赖关系。
2:Spring的核心:
IOC(控制反转)
DI(依赖注入)
AOP(面向切面编程)
3:Spring的七大模块
Core:核心模块。提供了Spring的容器来管理各种业务Bean对象以及Bean对象之间的依赖与关联关系。
DAO:对JDBC和JDBC的事务做了扩展和支持。
ORM:对ORM框架做了扩展和支持。
AOP:面向切面编程模块。
Spring Web:跟其它WEB框架(Struts1.x,Struts2.x、WebWork、JSF)结合的工具类和接口。
Spring Web MVC:Spring自身提供的Web MVC的开发框架。
Spring Context:对于J2EE平台架构其它技术组件的扩展(如EJB,JavaMail,RMI,JMS等)
4:Spring框架的特点
5:IOC
bean name = "" id = "" class = "" scope = "";
request:相当于WEB中的requestScope
session:相当于WEB中的SessionScope
global session:相当于WEB中的ApplicationScope
singleton:对象的单例模式,对象只产生一个实例 默认值。
prototype:对象的原型模式,每次产生一个对象。
控制反转
对象的实例化的过程原先是由代码控制,因此对象的生命周期由代码决定。
在Spring中,对象的实例化是由Spring容器控制。
对象的实例化的控制过程由原先的系统转移到Spring容器中,这一控制权的转变就是控制反转。
ApplicationContext
FileSystemXmlApplicationContext:以硬盘文件的路径方式加载
ClasspathXmlApplicationContext:从src目录加载
WebApplicationContext:与WEB工程组合时使用。
6:DI
依赖注入
容器将被调用者的实例注入到调用者的过程称为依赖注入。
Spring中的3种方式注入
属性注入 SET/GET
构造注入 构造方法注入
属性注入与构造注入同时存在时, 最终结果为属性注入的对象。因为构造方法执行完成后,开始
进行属性的初始化操作。
7:对象的生命周期与作用域
7.1:作用域Scope
8:Spring中对于JDBC的封装与扩展
1:Spring中如何获取数据源:
A:Spring自带的DataSourceDriverManager类。 类似Java中的JDBC的连接方式。
B:使用Tomcat的DBCP的方式: 工程需要Tomcat的Tomcat-dbcp.jar包。
D:使用开源的C3P0连接池方式
<!-- 数据源的获取_Spring的方式 --> <bean name="spring_dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="username" value="test"></property> <property name="password" value="test"></property> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"> </property> <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"> </property> </bean> <!-- 数据源的获取_DBCP方式 --> <bean name="dbcp_DataSource" class="org.apache.tomcat.dbcp.dbcp.BasicDataSource"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"> </property> <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"> </property> <property name="username" value="test"></property> <property name="password" value="test"></property> <property name="maxActive" value="50"></property> <property name="maxIdle" value="10"></property> <property name="maxWait" value="6000"></property> </bean> <bean name="c3p0_DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"> </property> <property name="user" value="test"></property> <property name="password" value="test"></property> <property name="jdbcUrl" value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"> </property> <property name="maxPoolSize" value="20"></property> <property name="minPoolSize" value="1"></property> <property name="initialPoolSize" value="5"></property> <property name="maxStatements" value="300"></property> </bean>
2:Spring中操作表中的数据
原文:http://www.cnblogs.com/Arvin-9/p/4660222.html