- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
spring
1.这个框架并不像hibernate或struts那样为了完成特定的功能(操作数据库、处理Http请求),它只是用来优化我们的工程的结果、提升设计、降低耦合度。
2.核心:
应用上下文ApplicationContext 它就是用来管理工程中无数类型的核心,一般通过xml文件或者注解来管理。它在启动时载入xml文件或注解中的类、类之间关系的信息,在使用时通过一些方式将管理的类型或对象取出使用。
3.(下载spring.zip,这里面包含了相应的jar包,以及文档)
第一个spring的应用:
1、导入jar包到工程中
2、在src下创建一个叫applicationContext.xml的配置文件
beans
bean id=hello class=....Hello/bean
bean id=bye class=.....Bye/bean
/beans
比如通过上述方式,我们就通过配置文件将,两个类Hello和Bye分别注册管理,其代号分别为hello和bye。通过这两个代号,我们之后就能取出这个两个类的实例,并进行使用。(相应的类要Hello,Bye事先自己定义好)
3、使用ClassPathXmlApplicationContext来加载上一步中的xml文件,以及获取其中的某个bean
ApplicationContext ctx = new ClassPathXmlApplicationContext(applicationContext.xml);加载xml文件中的配置信息,两个类就被spring管理起来了Hello h = (Hello)ctx.getBean(hello);
注意:取出bean时可以用多态
4.开闭原则:
对扩展开放,对修改关闭
需求变更时,尽量扩展一个类,不要去修改原来的类;这样可以避免在原来正确的类上产生新的bug。
5.spring不但可以动态创建类的实例,也可以通过配置文件动态初始化实例的属性值
1、私有属性要有对应的setter方法
2、在bean中定义property属性,对应类中私有属性,*可以通过配置进行属性的自动设置。
bean id=cat class=p.Cat
在猫的bean中注册name属性,值为TOM
property
name=name value=Tom/property
注册age属性,值为10,Tom和10两个值会自动注入到猫的实例中去
property name=age value=11/property
/bean
*也可以通过构造方法来进行动态初始化
1、在类中定义需要自动调用的构造方法
2、在配置文件的bean中定义contructor-arg来使用构造方法进行属性值的初始化
bean id=pig class=p.Pig
!-- 通过Pig的构造方法进行初始化,name是构造方法形参名,p是传入构造方法的实参 --
constructor-arg name=name value=p/constructor-arg
!-- age是构造方法形参名,10是传入构造方法的实参 --
constructor-arg name=age value=10/constructor-arg
/bean
*可以和perties格式的配置文件结合使用
1、先要在配置文件中注册,载入一个perties文件的信息
bean class=org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
property name=locations value=classpath:perties/
/bean
2、可以在其他的bean中使用这个perties中定义的信息,比如:
bean .....
property name=xx value=${zzz}
/bean
这种spring的xml配置文件读取传统的perties配置文件的方式,将在以后数据源配置中经常使用,perties中全是数据源配置参数,而spring的上下读取这个perties,然后将其中的参数值,在bean中使用。这样两者各司其职,perties负责jdbc的数据信息,spring的xml文件负责处理bean的注册及bean之间的关系。
5.spring管理的类,属性的类型完全可以是自定义类型。这种情况下就设计到类和类之间的装配。如果是自定义类型的装配,那么property标签不再用value了,而用ref,比如:
bean id=computer class=....Computer
property n
文档评论(0)