|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ruby里有这些工具吗?又要简单多少?我没有用过这两门语言,我估计在这些语言力没有很统一的这种标准,或者根本就没有提供。 起首我们要先获得Spring的相干档案,Spring的档案放在SourceForge上,网址是:
http://sourceforge.net/project/showfiles.php?group_id=73357
撰写此文时,Spring最新的版本是1.1.1,有两个下载版本,一个是spring-framework-1.1.1-with-dependencies.zip,一个是spring-framework-1.1.1.zip,with-dependencies的包含一些ant、jakarta-commons、struts、velocity等等别的开源Java项目标相依档案,假如您也必要这些相干档案,能够下载这个版本,假如您已有这些相干档案,则只必要下载spring-framework-1.1.1.zip这个档案。
下载zip档案并解紧缩以后,在dist目次下就是利用Spring所必要的相干档案,假如下载的是with-dependencies版本,则在lib目次中的是您大概会用到的相依档案。在dist目次下,spring-core.jar是Spring的中心,关于撰写复杂的单机程序来讲,利用这个中心便可,假如往后必要利用到Spring别的的子框架撑持,再将别的的jar档案到场便可,比方spring-aop.jar、spring-webmvc.jar等等。您也能够间接利用spring.jar这个档案,它包含了一切Spring撑持的功效所必要的一切种别,而不再必要到场一般的jar档案。
就我们的第一个Spring程序,只需spring-core.jar这个档案便可,它独一相依的别的项目档案,是commons-logging.jar,您能够在lib目次的jakarta-commons目次中找到,将这两个档案的地位到场至CLASSPATH中,我们就能够入手下手撰写第一个Spring程序。
来撰写我们的第一个组件(component),它只是一个复杂的JavaBean,用来向新的利用者打召唤:
HelloBean.java
packageonlyfun.caterpillar;
publicclassHelloBean{
privateStringhelloWord="Hello!World!";
publicvoidsetHelloWord(StringhelloWord){
this.helloWord=helloWord;
}
publicStringgetHelloWord(){
returnhelloWord;
}
}
HelloBean有预设的"Hello!World!"字符串,我们也能够透过setter来设定新的召唤语,不外我们不亲身撰写程序来作这些事,而是在组态档案界说,由Spring来为我们作设定的举措,我们撰写bean.xml:
bean.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEbeansPUBLIC"-//SPRING/DTDBEAN/EN""http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<beanid="helloBean"class="onlyfun.caterpillar.HelloBean">
<propertyname="helloWord"><value>Hello!Justin!</value></property>
</bean>
</beans>
bean.xml中界说了JavaBean的别号与来历种别,<property>标签中设定了我们但愿注进至JavaBean的字符串值,bean.xml必需在您的CLASSPATH能够存取到的目次中,大概是现行的事情目次,在Web程序中能够是在classes目次下,我们这边利用的是单机程序的体例,将利用FileInputStream读取bean.xml,以是将之置于现行的事情目次中,接着我们撰写一个复杂的测试程序:
SpringTest.java
packageonlyfun.caterpillar;
importjava.io.*;
importorg.springframework.beans.factory.BeanFactory;
importorg.springframework.beans.factory.xml.XmlBeanFactory;
publicclassSpringTest{
publicstaticvoidmain(String[]args)throwsIOException{
InputStreamis=newFileInputStream("bean.xml");
BeanFactoryfactory=newXmlBeanFactory(is);
HelloBeanhello=(HelloBean)factory.getBean("helloBean");
System.out.println(hello.getHelloWord());
}
}
这是从对照低条理的角度来利用Spring的IoC容器功效,藉由BeanFactory来读取组态档案并完成依附的联系关系注进,这边的依附是甚么?指的是HelloBean相依于String对象,透过setter所保存的接口,我们利用setterinjection来完成这个依附注进,而不是将召唤语写逝世在HelloBean,BeanFactory是全部Spring的重点地点,全部Spring的中心都环绕着它,在这边利用的是XmlBeanFactory,卖力读取XML组态档案,固然我们也能够利用properties档案,这以后会再先容。
BeanFactory读取Bean的组态设定并完成干系保护以后,我们能够藉由getBean()办法并指定Bean的别号来获得实例,来看看实践运转以后的效果:
2004/10/21上午10:28:00org.springframework.beans.factory.xml.XmlBeanDefinitionReaderloadBeanDefinitions
信息:LoadingXMLbeandefinitionsfromresourceforInputStream
2004/10/21上午10:28:00org.springframework.beans.factory.support.AbstractBeanFactorygetBean
信息:CreatingsharedinstanceofsingletonbeanhelloBean
Hello!Justin!
你对java乐观有点盲目。java的关键就是在服务器上表现优异,而且它提供了整个开发所需要的工具。应该是说,看哪天。net有没有机会赶上java。 |
|