JAVA网页设计为您的Java使用程序增加加入事务处置
最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。程序一个完全的Java使用程序,一般最少要有一个使用程序的停止点。关于一样平常程序来讲,体系开辟者依据必要和团体的偏好,会在程序停止地位,经由过程增加System.exit(0),或System.out(-1),来停止程序,或不加这些指令,让程序天然运转到停止。如:以下典范代码
packageuntitled14;/***Thisapplicationistodemohowanapplcationend*/publicclassTest{publicTest(){}publicstaticvoidmain(String[]args){Testtest1=newTest();//.................System.out.println("helloworld");//DosomethingbeforesystemexitSystem.exit(0);//也能够不写这句代码,让程序天然停止。}}
关于复杂的使用体系,我们间接能够在System.exit(0)代码实行前,增加必要在使用程序加入前必要完成的事情,如:封闭收集毗连,封闭数据库毗连等。
但是,关于对照庞大的多线程使用,线程运转的形态较庞大,我们就很难意料程序什么时候停止,怎样能在使用程序停止事务到来时,处置我们要做的事情呢?这就用到了Java对使用程序的加入的事务出处置机制。
对以后使用程序对象的取得,Java经由过程Runtime静态办法:Runtime.getRuntime()经由过程Runtime的voidaddShutdownHook(Threadhook)法向Java假造机注册一个shutdown钩子事务,如许一旦程序停止事务到来时,就运转线程hook,我们在实践使用时分,只需将程序必要完成之前做的一些事情间接经由过程线程hook来完成。详细演示代码以下:
/*****************************************************************************本程序仅演示,怎样在Java使用程序中增加体系加入事务处置机制*****************************************************************************/packageuntitled14;importjava.util.*;importjava.io.*;/***Thisapplicationisusedtodemohowtohooktheeventofanapplication*/publicclassUntitled1{publicUntitled1(){doShutDownWork();}/****************************************************************************Thisistherightworkthatwilldobeforethesystemshutdown*这里为了演示,为使用程序的加入增添了一个事务处置,*当使用程序加入时分,将程序加入的日期写进d: .log文件**************************************************************************/privatevoiddoShutDownWork(){Runtime.getRuntime().addShutdownHook(newThread(){publicvoidrun(){try{FileWriterfw=newFileWriter("d: .log");System.out.println("Imgoingtoend");fw.write("theapplicationended!"+(newDate()).toString());fw.close();}catch(IOExceptionex){}}});}/*****************************************************这是程序的出口,仅为演示,办法中的代码可有可无***************************************************/publicstaticvoidmain(String[]args){Untitled1untitled11=newUntitled1();longs=System.currentTimeMillis();for(inti=0;i<1000000000;i++){//在这里增加您必要处置代码}longse=System.currentTimeMillis();System.out.println(se-s);}}
在上述程序中,我们能够看到经由过程在程序中增添Runtime.getRuntime().addShutdownHook(newThread())事务监听,捕捉体系加入动静到来,然后,实行我们所必要完成事情,从而使我们的程序更强健!
他们对jsp,servlet,javabean进行封装就是为了展示他们的某个思想,与java的开发并没有必然的关系,也不见得在所以情况下,别人使用起来会简单。 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 是一种使网页(Web Page)产生生动活泼画面的语言 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 是一种语言,用以产生「小应用程序(Applet(s))
页:
[1]