- 浏览: 193257 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
TheAngLee:
亲测有效,感谢
如何批量删除twitter的推文 and 批量取消关注 -
511093965:
你好,怎么下载的你的那个没有用啊?点击浏览没有反应,怎么回事呢 ...
使用SWFUpload和fileupload简化多文件上传(附源码) -
郑智睿:
关键是会话信息会丢失,这是个重大问题没解决
使用SWFUpload和fileupload简化多文件上传(附源码) -
郑智睿:
里面的文件不完整
使用SWFUpload和fileupload简化多文件上传(附源码) -
青青雨露:
不能运行啊
使用SWFUpload和fileupload简化多文件上传(附源码)
★、要使用的jar
如果使用aop,还需要
如果使用了jsr-250中的注解,还需要
★、applicationContext.xml
★、实例化Spring容器常用的两种方式
方法一:在类路径下寻找配置文件来实例化容器
方法二:在文件系统路径下寻找配置文件来实例化容器(不推荐使用,linux下不好使)
★、实例化bean的三种方式
1. 用构造器来实例化
2. 使用静态工厂方法实例化
3. 使用实例工厂方法实例化
★、Bean的作用域
singleton(默认为singleton,每次调用都是同一实例)
prototype(每次调用都用容器中获取一个新的实例)
request
session
global session
1. singleton在spring容器实例化的时候实例化,prototype在getBean的时候才初始化(建议使用,有问题的话可以在启动的时候就看出来)
2. 可以给bean加一个lazy-init="true"来让singleton不要在spring容器初始化的时候实例化(不建议使用)
3. 如果想为所有bean进行延迟初始化,可以给beans加一个属性default-lazy-init=”true” (不建议使用)
4. 可以给bean加一个属性init-method=”init”和destroy-method=”destroy”在实例化该bean之后调用init方法,spring容器关闭后,会自动调用destroy方法
★、依赖注入
1. 构造器注入
无参
有参
// 可以通过使用'type'属性来显式指定那些简单类型的构造参数的类型,比如:
// 还可以通过index属性来显式指定构造参数的索引,比如下面的例子:
2. setter注入
3. Field注入(用于注解方式),用@Resource注解完成属性装配
可以减少applicationContext.xml的代码
剩下的有时间再发
★、Spring自动扫描和管理bean
★、基于注解使用AOP
★、基于XML使用AOP
★、Spring和JDBC组合开发和事物管理
dist/spring.jar lib/jakarta-commons/commons-logging.jar
如果使用aop,还需要
lib/aspectj/aspectjweaver.jar lib/aspectj/aspectjrt.jar lib/cglib/cglib-nodep-2.1_3.jar
如果使用了jsr-250中的注解,还需要
lib/j2ee/common-annotabions.jar
★、applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <bean id="" class=""> <!-- collaborators and configuration for this bean go here --> </bean> <bean id="" class=""> <!-- collaborators and configuration for this bean go here --> </bean> <!-- more bean definitions go here --> </beans>
★、实例化Spring容器常用的两种方式
方法一:在类路径下寻找配置文件来实例化容器
ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml"}); ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
方法二:在文件系统路径下寻找配置文件来实例化容器(不推荐使用,linux下不好使)
ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"d:/applicationContext.xml"});
★、实例化bean的三种方式
1. 用构造器来实例化
<bean id="exampleBean" class="examples.ExampleBean"/>
2. 使用静态工厂方法实例化
<bean id="exampleBean" class="examples.ExampleBean2" factory-method="createInstance"/>
3. 使用实例工厂方法实例化
<!-- the factory bean, which contains a method called createInstance() --> <bean id="serviceLocator" class="com.foo.DefaultServiceLocator"> <!-- inject any dependencies required by this locator bean --> </bean> <!-- the bean to be created via the factory bean --> <bean id="exampleBean" factory-bean="serviceLocator" factory-method="createInstance"/>
★、Bean的作用域
singleton(默认为singleton,每次调用都是同一实例)
prototype(每次调用都用容器中获取一个新的实例)
request
session
global session
<bean id="accountService" class="com.foo.DefaultAccountService" scope="prototype"/>
1. singleton在spring容器实例化的时候实例化,prototype在getBean的时候才初始化(建议使用,有问题的话可以在启动的时候就看出来)
2. 可以给bean加一个lazy-init="true"来让singleton不要在spring容器初始化的时候实例化(不建议使用)
<bean id="person" class="spring.Person" lazy-init="true"></bean>
3. 如果想为所有bean进行延迟初始化,可以给beans加一个属性default-lazy-init=”true” (不建议使用)
4. 可以给bean加一个属性init-method=”init”和destroy-method=”destroy”在实例化该bean之后调用init方法,spring容器关闭后,会自动调用destroy方法
<bean id="person" class="spring.Person" init-method="init" destroy-method=”destroy”></bean>
public Person(){ //构造函数 } public void init(){ //调用完构造函数会来调用这个方法,方法名是可以自定义的,可以在这里做一些事情,比如对资源进行打开,等 } public void destroy(){ }
ApplicationContext ctx = …… ctx.close();
★、依赖注入
1. 构造器注入
无参
package x.y; public class Foo { public Foo(Bar bar, Baz baz) { // ... } }
<beans> <bean name="foo" class="x.y.Foo"> <constructor-arg> <bean class="x.y.Bar"/> </constructor-arg> <constructor-arg> <bean class="x.y.Baz"/> </constructor-arg> </bean> </beans>
有参
// 有参构造函数 // 当使用简单类型时,比如<value>true<value>,Spring将无法知道该值的类型。不借助其他帮助,他将无法仅仅根据参数类型进行匹配 package examples; public class ExampleBean { // No. of years to the calculate the Ultimate Answer private int years; // The Answer to Life, the Universe, and Everything private String ultimateAnswer; public ExampleBean(int years, String ultimateAnswer) { this.years = years; this.ultimateAnswer = ultimateAnswer; } }
// 可以通过使用'type'属性来显式指定那些简单类型的构造参数的类型,比如:
<bean id="exampleBean" class="examples.ExampleBean"> <constructor-arg type="int" value="7500000"/> <constructor-arg type="java.lang.String" value="42"/> </bean>
// 还可以通过index属性来显式指定构造参数的索引,比如下面的例子:
<bean id="exampleBean" class="examples.ExampleBean"> <constructor-arg index="0" value="7500000"/> <constructor-arg index="1" value="42"/> </bean>
2. setter注入
public class ExampleBean { private AnotherBean beanOne; private YetAnotherBean beanTwo; private int i; public void setBeanOne(AnotherBean beanOne) { this.beanOne = beanOne; } public void setBeanTwo(YetAnotherBean beanTwo) { this.beanTwo = beanTwo; } public void setIntegerProperty(int i) { this.i = i; } }
<bean id="exampleBean" class="examples.ExampleBean"> <!-- setter injection using the nested <ref/> element --> <property name="beanOne"><ref bean="anotherExampleBean"/></property> <!-- setter injection using the neater 'ref' attribute --> <property name="beanTwo" ref="yetAnotherBean"/> <property name="integerProperty" value="1"/> </bean> <bean id="anotherExampleBean" class="examples.AnotherBean"/> <bean id="yetAnotherBean" class="examples.YetAnotherBean"/>
3. Field注入(用于注解方式),用@Resource注解完成属性装配
可以减少applicationContext.xml的代码
剩下的有时间再发
★、Spring自动扫描和管理bean
★、基于注解使用AOP
★、基于XML使用AOP
★、Spring和JDBC组合开发和事物管理
发表评论
-
实现for each,通过iterable接口和iterator(实例)
2011-01-11 00:58 4689java1.5提供了for each的循环方式,实现i ... -
java的几个权限修饰符,private/friendly/protected/public
2010-05-29 23:26 7965下面开始测试: 一个Test类,作为被访问的类,priv ... -
算法:输出一串字符的全排列
2010-05-26 18:09 1948package test; import java. ... -
创建可执行jar
2010-05-23 20:00 1331把我们的程序打个jar包,双击运行,一般会弹出这个提示 ... -
笔试的时候一个折半查找写错了,这样写应该对了吧
2010-05-22 11:04 1407public int find(int[] abc, i ... -
写一个CookieUtil,方便使用cookies
2010-05-12 16:54 2495以前用cookies比较少,虽然知道大致上就是那么回事,但是一 ... -
循环Map的两种方法
2010-05-08 09:57 1537public static void main(String ... -
[正则]零宽断言:同事给我出了一题
2010-04-25 15:59 1575同事给我出一题,如下: public static v ... -
Apache POI - Java操作Excel
2010-04-19 10:24 3109★、POI中很多组件并不是都能用上,根据需要选择自己需要的,我 ... -
[转]Servlet、Filter的url-pattern问题
2010-04-17 11:00 1579servlet和filter的匹配规则 ... -
做个图片的防盗链
2010-04-13 11:31 9220目的是,网站本身的图片不防盗链,用户上传的图片不许外链 用户 ... -
从html里面提取文本,只保留br和p
2010-04-09 19:00 3367从网上down了很多信息,但是带了一些不需要的table,di ... -
自定义错误页,并捕获异常到数据库
2010-04-09 18:44 1897web.xml中添加这一段,处理404等状态信息,注意是err ... -
TestBase64加解密
2010-04-09 11:22 1021package test; import java. ... -
TestIO
2010-03-31 09:47 1174package com.djwl.test.studyin ... -
分页条(部分)
2010-03-31 09:41 1022/** * description: 分页:根据每 ... -
ReflectTest
2010-03-31 09:40 1024package com.djwl.test.studying; ... -
CalendarTest
2010-03-31 09:39 1018package com.djwl.test.studying; ... -
Java正则备忘(附正则表达式查询表)
2010-03-22 16:01 1226A sample: /** * descript ... -
List2Array and Array2List
2010-03-18 10:05 1297/** * <p>功能描述:List2 ...
相关推荐
SPRING 笔记SPRING 笔记SPRING 笔记
spring笔记spring基础笔记
spring入门笔记
达内教育(Tarena)作为知名的IT培训机构,提供了这套Spring的学习资料,包括笔记和PPT课件,旨在帮助学员全面掌握Spring的核心概念和技术。 Spring笔记可能涵盖了以下内容: 1. **IoC(Inversion of Control)容器...
【Spring 概念与优势】 Spring 是一个开源的 Java 应用框架,主要设计目标是简化企业级应用的开发。它的核心特性是依赖注入(Dependency Injection,简称 DI)和面向切面编程(Aspect-Oriented Programming,简称 ...
尚硅谷Spring笔记
Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Spring...
spring笔记 狂神说
### Spring学习笔记(精华全记录) #### Spring框架概述 Spring框架源自Rod Johnson的个人项目,最初于2002年末发布。Spring并非一开始就作为一个完整的框架出现,而是从一个项目逐步发展而来。随着项目的成熟,...
"Spring笔记示例源代码"这个资源很可能是为了帮助学习者深入理解Spring框架的各种功能和用法而提供的实际代码示例。 1. **Spring IoC**:IoC是Spring的核心特性,它将对象的创建和管理权交给Spring容器,使得开发者...
spring 初学 笔记 入门提示
Spring框架是Java开发中的核心组件,它为应用程序提供...这些笔记将涵盖这些主题的基本概念、使用方法和示例,帮助初学者快速理解和掌握Spring生态系统。通过深入学习和实践,开发者能够构建出高效、可扩展的Java应用。
### Spring框架概述与核心特性 #### 一、Spring框架简介 Spring框架是一个开源的企业级Java应用框架,由Rod Johnson在2003年发起并创建。它为Java应用程序提供了全面的基础设施支持,使得开发者能够专注于业务逻辑...
尚硅谷Spring6的笔记
Spring学习笔记( spring视频笔记)
Spring学习笔记(马士兵spring视频笔记).docSpring学习笔记(马士兵spring视频笔记).docSpring学习笔记(马士兵spring视频笔记).docSpring学习笔记(马士兵spring视频笔记).doc
【尚硅谷周阳老师SpringCloud笔记】是一份深入学习SpringCloud技术体系的教程资源,由知名教育机构尚硅谷的周阳老师编撰。SpringCloud作为微服务架构的重要框架,广泛应用于现代企业的分布式系统开发中。这份笔记...
《Spring框架深度解析——基于传智播客左慈老师培训笔记》 在Java开发领域,Spring框架无疑是最具影响力和广泛使用的轻量级框架之一。它以其强大的功能、灵活的设计和丰富的生态系统,成为了企业级应用开发的首选。...
本笔记将深入讲解Spring的核心概念和使用方法,帮助你快速掌握这一重要的技术。 1. **注解装配**:在Java世界中,注解(Annotation)是一种元数据,它可以提供额外的信息给编译器或运行时环境。在Spring中,注解被...