变相怪杰 发表于 2015-1-18 11:19:15

JAVA教程之Spring-Context之七:利用p-namesapce和c-namespace简化bean的界说仓酷云

为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。在Spring中界说bean的体例多种多样,即便利用xml的体例来设置也能派生出良多分歧的体例。
好比以下的bean界说:
123456789101112<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="person"class="Person"><propertyname="name"value="Tom"/><propertyname="age"value="20"/></bean></beans>
如许的bean有三行,经由过程利用p-namespace今后能够简化为一行。
123456789<beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"><beanid="person"class="Person"p:name="Tom"p:age="20"/></beans>
那末甚么是p-namespace那?它的感化就是利用xml中的元素属性代替<property/>节点来界说bean的属性。这个奇妙的p是甚么工具那?它实际上是利用了namespace的xml扩大设置格局。beans的设置格局是界说在一个xsd格局中的(即http://www.springframework.org/schema/beans/spring-beans.xsd),但p却没有一个xsd格局文件与其对应,可是它能够被spring内核剖析处置。
下面只是演示了对属性为一般值的时利用p-namespace的注进,假如属性为另外一个bean的援用时该怎样处置那?很复杂。
这是利用一般体例注进属性。
123456<beanid="messageService"class="SimpleMessageService"/><beanid="messageHandler"class="MessageHandler"><propertyname="messageService"><refbean="messageService"/></property></bean>
利用p-namespace后是如许的。
12<beanid="messageService"class="SimpleMessageService"/><beanid="messageHandler"class=“MessageHandler”p:messageService-ref=“messageService”/>
加上-ref后缀即暗示是对一个bean的援用。
那既然setter办法注进bean可使用p-namespace,那末机关器体例注进有无响应的简写那?谜底是一定的,那就是c-namespace,道理和利用办法与p-namespace迥然不同。
利用c-namespace前:
123456789101112131415<beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:c="http://www.springframework.org/schema/c"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd"><beanid="person"class="Person"><constructor-argname="name"><value>Tom</value></constructor-arg><constructor-argname="age"value="20"/></bean></beans>
利用c-namespace后:
<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="person"class="Person"><propertyname="name"value="Tom"/><propertyname="age"value="20"/></bean></beans>0<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="person"class="Person"><propertyname="name"value="Tom"/><propertyname="age"value="20"/></bean></beans>1
也能够利用-ref后缀来暗示对另外一个bean的援用。
12<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="person"class="Person"><propertyname="name"value="Tom"/><propertyname="age"value="20"/></bean></beans>3
在后面章节解说机关器注进时,可使用机关参数索引来注进依附,c-namespace也撑持这一体例。
123456789101112<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="person"class="Person"><propertyname="name"value="Tom"/><propertyname="age"value="20"/></bean></beans>5

怎样,是否是很壮大啊。可是太甚壮大也简单伤人伤己。在项目中利用这些技能之前最好先和项目成员告竣分歧。
本例中的源码请在我的GitHub上自行下载。

从一个编程语言的普及程度来将,一个好的IDE是至关中要的,而现在的java的IDE虽然已经很好了,但是和.net网页编程比起来还是稍微差一些的,这是个客观事实。java要想普及的更好。DE是必须加以改进的。

小魔女 发表于 2015-1-20 20:15:15

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

小妖女 发表于 2015-1-29 20:20:17

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

分手快乐 发表于 2015-1-31 21:30:55

那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!

深爱那片海 发表于 2015-2-4 07:46:49

是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

莫相离 发表于 2015-2-5 11:49:05

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

灵魂腐蚀 发表于 2015-2-6 13:36:29

是一种为 Internet发展的计算机语言

不帅 发表于 2015-2-16 07:23:23

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

乐观 发表于 2015-2-25 05:30:36

自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。

再现理想 发表于 2015-3-1 13:00:34

http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。

海妖 发表于 2015-3-7 09:32:59

我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。

冷月葬花魂 发表于 2015-3-14 17:09:52

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

老尸 发表于 2015-3-21 12:20:38

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
页: [1]
查看完整版本: JAVA教程之Spring-Context之七:利用p-namesapce和c-namespace简化bean的界说仓酷云