仓酷云
标题:
JAVA教程之第一Spring程式 作者:林信良
[打印本页]
作者:
小魔女
时间:
2015-1-18 11:23
标题:
JAVA教程之第一Spring程式 作者:林信良
在1995年5月23日以“Java”的名称正式发布了。
第一Spring程式
起首我要先获得Spring的相Pn案,Spring的n案放在SourceForge上,W址是:http://sourceforge.net/project/showfiles.php?group_id=73357
撰此文r,Spring最新的版本是1.1.1,有下d版本,一是spring-framework-1.1.1-with-dependencies.zip,一是spring-framework-1.1.1.zip,with-dependencies的包含一些ant、jakarta-commons、struts、velocity等等别的_源Java0傅南嘁n案,假如您也必要@些相Pn案,能够下d@版本,假如您已有@些相Pn案,t只必要下dspring-framework-1.1.1.zip@n案。
下dzipn案K解嚎s之後,在dist面前目今就是利用Spring所必要的相Pn案,假如下d的是with-dependencies版本,t在lib目中的是您大概玫降南嘁n案。在dist面前目今,spring-core.jar是Spring的中心,蹲蔚C程式碚f,利用@中心便可,假如日後必要利用到Spring别的的子框架增援,再⑵渌jarn案到场便可,比方spring-aop.jar、spring-webmvc.jar等等。您也能够间接利用spring.jar@n案,它包含了一切Spring增援的功效所必要的一切e,而不再必要到场e的jarn案。
就我的第一Spring程式,只需spring-core.jar@n案便可,它独一相依的别的0n案,是commons-logging.jar,您能够在lib目标jakarta-commons目中找到,⑦@n案的地位到场至CLASSPATH中,我就能够_始撰第一Spring程式。
碜我的第一M件(component),它只是一蔚JavaBean,用硐蛐碌氖褂谜叽蛘泻簦
packageonlyfun.caterpillar;
publicclassHelloBean{
privateStringhelloWord="Hello!World!";
publicvoidsetHelloWord(StringhelloWord){
this.helloWord=helloWord;
}
publicStringgetHelloWord(){
returnhelloWord;
}
}
HelloBean有AO的"Hello!World!"字串,我也能够透^setter碓O定新的召唤Z,不^我不H自撰程式碜鬟@些事,而是在MBn案定x,由Spring槲作O定的幼鳎撰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中定x了JavaBean的e名c碓搭e,嘶`中O定了我但愿注进至JavaBean的字串值,bean.xml必在您的CLASSPATH能够存取到的目中,也S是F行的事情目,在Web程式中能够是在classes面前目今,我@利用的是C程式的体例,以是⒅渺冬F行的事情目中(CLASSPATH都O定.吧),接著我撰一蔚y程式:
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碜x取MBn案K完成依的P注进,@的依是什N?指的是HelloBean相依於String物件,透^setter所保存的介面,我利用setterinjection硗瓿蛇@依注进,而不是⒄泻粽Z逝世在HelloBean,BeanFactory是整Spring的重c地点,整Spring的中心都@著它,在@利用的是XmlBeanFactory,x取XMLMBn案,然我也能够利用propertiesn案。
BeanFactoryx取Bean的MBO定K完成PSSo之後,我能够藉由getBean()办法K指定Bean的e名砣〉例,砜纯H行之後的效果:
2004/10/21上午10:28:00
org.springframework.beans.factory.xml.XmlBeanDefinitionReaderloadBeanDefinitions
Y:LoadingXMLbeandefinitionsfromresourceforInputStream
2004/10/21上午10:28:00
org.springframework.beans.factory.support.AbstractBeanFactorygetBean
Y:CreatingsharedinstanceofsingletonbeanhelloBean
Hello!Justin!
假如明天您要想改召唤Z,t只需变动bean.xml就能够了,不必修正次要的程式,比^一样平常的角度砜矗鸵馕吨绻胍淖一些物件之g的依PS,t只需修正MBn便可,而不必修正M件的任何一路程式。
在ruby里才是一切皆对象。当然我不并不是很了解ruby,但是ruby确实是将语法简化得很好。
作者:
简单生活
时间:
2015-1-20 23:50
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
作者:
飘灵儿
时间:
2015-1-25 21:15
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
作者:
冷月葬花魂
时间:
2015-2-5 00:32
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
作者:
飘飘悠悠
时间:
2015-2-6 11:40
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
作者:
因胸联盟
时间:
2015-2-7 10:04
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
作者:
小妖女
时间:
2015-2-10 00:23
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
作者:
变相怪杰
时间:
2015-2-13 17:45
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
作者:
不帅
时间:
2015-3-4 00:06
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
作者:
爱飞
时间:
2015-3-10 04:45
是一种突破用户端机器环境和CPU
作者:
山那边是海
时间:
2015-3-17 04:12
是一种将安全性(Security)列为第一优先考虑的语言
作者:
第二个灵魂
时间:
2015-3-23 19:00
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2