仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 535|回复: 8
打印 上一主题 下一主题

[学习教程] JAVA网页设计Spring-Context之三:利用XML和Groovy DSL设置Bean仓酷云

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:19:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
还是要自己一点一点写代码,然后编译,改错再编译好那。还有最重要的是.net网页编程的编译环境非常好,你甚是不需要了解太多工具,对于简单的系统,你可以之了解一些语法就哦了。在第一讲中显现了怎样利用注解设置bean,实在这是Spring3引进的特征,Spring2利用的是XML的体例来设置Bean,当时候漫天的XML文件使得Spring有着设置天堂的称呼。Spring也一向在力图改动这一缺点。Spring3引进的注解体例的确使设置精简很多,而Spring4则引进了GroovyDSL来设置,其语法比XML要复杂良多,并且Groovy自己是门言语,其设置文件就相称于代码,能够用来完成庞大的设置。
空话少说,让我们来对GroovyDSL设置来个第一次亲热打仗。
起首我们先完成一个XML的bean设置,相沿第一讲中的例子。

configuration.xml
  1. 12345678910111213
复制代码
  1. <?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"><beanid="movieService"class="huangbowen.net.service.DefaultMovieService"/><beanid="cinema"class="huangbowen.net.service.Cinema"><propertyname="movieService"ref="movieService"/></bean></beans>
复制代码


这个XML文件就不必我多做注释了,很明晰了然。Ok,按例写个测试来测一下。

XmlConfigurationTest.java
  1. 1234567891011121314151617181920212223242526272829303132333435363738394041424344
复制代码
  1. packagehuangbowen.net;importhuangbowen.net.service.Cinema;importhuangbowen.net.service.DefaultMovieService;importorg.junit.Test;importorg.junit.runner.RunWith;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.context.ApplicationContext;importorg.springframework.test.context.ContextConfiguration;importorg.springframework.test.context.junit4.SpringJUnit4ClassRunner;importstaticorg.hamcrest.core.IsInstanceOf.instanceOf;importstaticorg.junit.Assert.assertNotNull;importstaticorg.junit.Assert.assertThat;@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"/configuration.xml"})publicclassXmlConfigurationTest{@AutowiredprivateApplicationContextapplicationContext;@AutowiredprivateCinemacinema;@TestpublicvoidshouldGetCinemaInstance(){Cinemacinema=applicationContext.getBean(Cinema.class);assertNotNull(cinema);}@TestpublicvoidshouldGetAutowiredCinema(){assertNotNull(cinema);}@TestpublicvoidshouldGetMovieServiceInstance(){assertNotNull(cinema.getMovieService());assertThat(cinema.getMovieService(),instanceOf(DefaultMovieService.class));}}
复制代码


这个测试与第二讲中的测试基础上一样,不外Spring设置的读取是从configuration.xml来的,在@ContextConfiguration中指定了该xml文件为Spring设置文件。
假如想利用GroovyDSL的话第一步必要引进groovy依附。

pom.xml
  1. 12345
复制代码
  1. <dependency><groupId>org.codehaus.groovy</groupId><artifactId>groovy-all</artifactId><version>2.2.2</version></dependency>
复制代码


然后就能够新建一个groovy文件来完成设置编写。

Configuration.groovy
  1. 1234567
复制代码
  1. beans{movieServicehuangbowen.net.service.DefaultMovieServicecinemahuangbowen.net.service.Cinema,movieService:movieService}
复制代码


这实在表现不出来GroovyDSL的壮大天真,由于我们的例子太复杂了。
beans相称于xml中的beans标签,第一行中是beanid+class的情势。第二行是beanid+class+propertiesmap的情势。第二个参数是一个map数组,分离对应property和值。
完成一样的Bean设置有良多种写法。
  1. 123
复制代码
  1. movieService(huangbowen.net.service.DefaultMovieService)cinema(huangbowen.net.service.Cinema,{movieService:movieService})
复制代码



你说是sun公司对她研究的透还是微软?针对自己工具开发的.net网页编程性能上肯定会站上风的。
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-20 20:13:25 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
愤怒的大鸟 该用户已被删除
板凳
发表于 2015-1-23 18:05:25 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
admin 该用户已被删除
地板
发表于 2015-1-28 05:17:44 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
若相依 该用户已被删除
5#
发表于 2015-2-5 11:10:06 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
柔情似水 该用户已被删除
6#
发表于 2015-3-8 11:17:17 | 只看该作者
是一种突破用户端机器环境和CPU
蒙在股里 该用户已被删除
7#
发表于 2015-3-11 15:25:32 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
爱飞 该用户已被删除
8#
发表于 2015-3-18 22:51:19 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
乐观 该用户已被删除
9#
 楼主| 发表于 2015-3-26 16:54:57 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 14:43

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表