仓酷云 发表于 2015-1-18 11:13:51

了解下JAVA的取得动静: J2EE 1.4 中的动静

进而能拉拢大多数程序员用windows产品。并且从ASP.NETAJAX可以跨平台这一点上,间接证明了我们的推断,至少证明了微软做过这方面的研究。所以如果哪一天突然听说了.net可以跨平台了,那么请不要吃惊,如果这一天真的到来,java就到了真正和.net决战的时刻。因为不到万不得以的时候微软是不会推出跨平台的.net的,如果跨平台的.net还不足以对抗java的话,那么微软还剩的手段就是开源了,呵呵。
在本文中,我将概述撑持1.4版J2EE标准引进的动静所需的改动。我将出格剖析JMS1.1的需求和利用时的新限定、与动静方针有关的新观点、和EJB标准2.1版本为动静驱动bean所带来的明显变更。这些内容关于这些开辟职员和办理职员出格有效:他们熟习J2EE1.3中的动静、而且但愿编写新的使用程序大概将现有动静使用程序移植到兼容J2EE1.4的使用服务器上。
JMS1.1
兼容J2EE的使用服务器如今必要撑持1.1版的Java动静服务(JavaMessageServer,JMS)标准,这大概是新版本J2EE标准中最分明的改动。JMS1.1完整向后兼容J2EE1.3标准所请求的JMS1.1,以是应该不必要改动现有的使用程序。JMS1.1引进了一致动静域,在BobbyWoolf的这篇文章中对它做了具体的会商。值得夸大的是,除非必要向后兼容性,不然没有来由用老的行列和主题接口编写新的JMS使用程序。新的使用程序应该只利用新的一致接口,如清单1中的例子所示。
清单1.展现一致JMS接口的例子
InitialContextcontext=newInitialContext();
ConnectionFactoryfactory=
(ConnectionFactory)context.lookup("java:comp/env/jms/cf");
Destinationsource=
(Destination)context.lookup("java:comp/env/jms/source");
Connectionconnection=factory.createConnection();
connection.start();
Sessionsession=connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
MessageConsumerconsumer=session.createConsumer(source);
Messagemessage=consumer.receive();
connection.close();
正如Bobby在他的文章中所说的,一致接口不但简化了动静编程模子,它们还使使用程序能够用一个事件Session吸收来自行列的动静,并向主题发送动静(大概相反)。这意味着能够在统一个事件事情单位中举行发送和吸收,而无需借助于bean大概容器办理的事件。
J2EE对JMS利用的限定
像之前版本的J2EE标准一样,1.4版对JMS的利用有一些限定。我将在本节剖析这些限定。
限定的接口
只管很多开辟职员大概不晓得,可是J2EE标准关于J2EE使用程序怎样利用JMSAPI老是有一些限定。比方,以下接口用于JMS供应者与使用服务器之间的集成(它们是在JMS标准中形貌的ApplicationServerFacilities的一部分),因此不克不及被使用程序利用:
javax.jms.ServerSession
javax.jms.ServerSessionPool
javax.jms.ConnectionConsumer
Alljavax.jms.XAinterfaces
限定的办法
关于那些“使用程序组件在制止创立线程的容器中不克不及实行”的办法,J2EE1.3标准给出了让人狐疑的声明。EJB容器不同意使用程序创立线程,可是一个Web容器能够同意使用程序如许做。了局,在J2EE1.3中,依据所利用的Web容器,能够挪用大概不成以挪用这些办法。侥幸的是,J2EE1.4标准删除这些使人狐疑的说法,只是申明以下办法只能被运转在客户容器中的使用程序所利用——换句话说,它们不会在Web大概EJB容器中挪用:
javax.jms.ServerSessionmethodsetMessageListener()
javax.jms.ServerSessionmethodgetMessageListener()
javax.jms.Sessionmethodrun()
javax.jms.QueueConnectionmethodcreateConnectionConsumer()
javax.jms.TopicConnectionmethodcreateConnectionConsumer()
javax.jms.TopicConnectionmethodcreateDurableConnectionConsumer()
javax.jms.MessageConsumermethodgetMessageListener()
javax.jms.MessageConsumermethodsetMessageListener()
javax.jms.ConnectionmethodsetExceptionListener()
javax.jms.Connectionmethodstop()
javax.jms.ConnectionmethodsetClientID()
<p>
比如模式、敏捷方法什么的,这些思想好,但是实施的人没有理解而且没有正确运用这些知识导致了开发周期的延长。比如说对象,通过getName()方法不能获取对象的名字。

深爱那片海 发表于 2015-1-18 20:02:01

吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧

蒙在股里 发表于 2015-1-23 08:44:43

Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台

金色的骷髅 发表于 2015-1-24 05:30:23

至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。

冷月葬花魂 发表于 2015-1-31 21:08:30

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

若相依 发表于 2015-2-18 09:12:58

你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。

admin 发表于 2015-3-6 02:18:33

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

爱飞 发表于 2015-3-6 12:40:35

是一种语言,用以产生「小应用程序(Applet(s))

小妖女 发表于 2015-3-11 09:24:16

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

兰色精灵 发表于 2015-3-18 02:43:32

是一种语言,用以产生「小应用程序(Applet(s))

分手快乐 发表于 2015-3-25 09:56:08

我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
页: [1]
查看完整版本: 了解下JAVA的取得动静: J2EE 1.4 中的动静