众所周知,Java源代码被编译器编译成class文件。而并不是底层操作系统可以直接执行的二进制指令(比如WindowsOS的.exe文件)。因此,我们需要有一种平台可以解释class文件并运行它。而做到这一点的正是Java虚拟机(JVM)。实际上,JVM是一种解释执行class文件的规范技术。各个提供商都可以根据规范,在不同的底层平台上实现不同的JVM。下面是JVM实现的基本结构框图。其中类装载子系统、运行时数据区、执行引擎等是JVM的必须要解决的几大问题
系统 2019-08-29 22:18:58 1693
英文文章来源http://www.jappit.com/blog/midmaps-google-maps-java-me-library/中文文章来源http://yarin.iteye.com/blog/519754谷歌地图api连接http://www.jappit.com/j2me/midmaps/javadocs/MidMaps:GoogleMapsJavaMElibraryPermalink|ReplyMidMapsisatinyGoogleMa
系统 2019-08-29 22:57:48 1692
OO思维经常看到不少人抱怨JavaEE/J2EE中配置太复杂,烦琐,不简单易学,其实所谓简单易学是取决于你是否有OO思维方式。分层架构是面向对象OO在企业软件中应用的标志,目前一个企业软件系统包括表现层、业务层和持久层,那么分层架构和OO关系是如何?表现层的界面表单中通常是一些离散数据,也就是单个字段数据,通过Struts等框架提供ActionForm以及标签库,将这些单个字段数据封装起来和业务层的DomainModel进行了映射,因此,表现层的主要编程工
系统 2019-08-29 23:16:02 1691
在有些情况下死锁是可以避免的。本文将展示三种用于避免死锁的技术:加锁顺序加锁时限死锁检测加锁顺序当多个线程需要相同的一些锁,但是按照不同的顺序加锁,死锁就很容易发生。如果能确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。看下面这个例子:Thread1:lockAlockBThread2:waitforAlockC(whenAlocked)Thread3:waitforAwaitforBwaitforC如果一个线程(比如线程3)需要一些锁,那么它
系统 2019-08-29 23:41:05 1689
今天在逛oschina的时候看见里面有一个代码分享的功能还不错,红薯老大贴出了一段代码个人觉得很实用转出来分享下。Java代码importjava.awt.Color;importjava.awt.Font;importjava.awt.FontMetrics;importjava.awt.Graphics2D;importjava.awt.image.BufferedImage;importjava.awt.image.IndexColorModel;i
系统 2019-08-29 22:25:23 1689
JavaWeb开发技术大全——第04讲拦截器在本章首先介绍了拦截器的实现原理。然后用一个例子来模拟拦截器的实现。在随后介绍了如何配置一个拦截器。为了可以重用拦截器的配置,struts2提供了拦截器栈的概念,通过拦截器栈,可以包含若干个拦截器及拦截器栈。在Action中只要引用了拦截器栈,就会自动引用该拦截器栈中的拦截器。拦截器可以在定义或引用时指定参数,如果指定拦截器栈中的拦截器参数,可以使用点(.)符号。在本最介绍了如何实现一个自定义的拦截器,并给出了一
系统 2019-08-12 09:30:14 1688
有的时候,特别是在做分析时,需要经常添加新的图层到当前的地图中。在这个时候,我们一般采用非池化的ServerObject,以保证当前用户的修改不会影响到其他用户。添加图层的代码如下:首选,得到Resource和mapFunctionality和MapServerInfo,以备后面使用:Java代码AGSLocalMapResourcegisrec=(AGSLocalMapResource)webContext.getResources().get("ags
系统 2019-08-29 22:43:06 1685
原文:http://lavasoft.blog.51cto.com/62575/27069/作者:熔岩原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://lavasoft.blog.51cto.com/62575/27069一、线程状态线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。用一个图来描述如下:、新状态:线程对象已经创建,还没有在其上调
系统 2019-08-29 23:36:59 1683
Java使网络编程更方便、简洁。它提供了各种Socket类,读者只要了解这些类的构造和相关的方法,就可以轻松的编写网络程序。而无论任何网络程序都是运行在一定的协议体系中的,了解这些协议的基本内容对于更好的理解各种Socket类和方法都很有帮助。下面将介绍在Internet中占主导地位的TCP/IP协议。14.1TCP/IP协议TCP/IP协议是整个网络通信的核心协议。其中TCP协议运行在客户终端上,是集成在操作系统内的一套协议软件,它的任务是在网络上的两个
系统 2019-08-12 09:29:29 1683
了解如何在Oracle数据库XE上快速构建一个Grails应用程序,然后将其部署到Oracle应用服务器10g。2006年5月发表您可能已经注意到,Oracle最近发表了一篇由RichardMonson-Haefel撰写的有关Oracle上的RubyonRails的文章。这篇文章介绍了RubyonRails框架以及如何使用它访问Oracle数据库(确切地说是Oracle数据库10g快捷版(XE))。如果您并不熟悉RubyonRails,那么切记它与Java
系统 2019-08-12 01:54:13 1683
甲骨文已经完成了对SUN公司的收购,于1月27日发布了对Sun各项业务的整合规划。总体上说,Oracle要成为软硬件一体化的整体解决方案的厂商。以下就其对备受关注的Java方面的策略做个介绍。JavaSE:1)推出JDKSE7,它将包括多个新的功能,如提高开发人员的效率,提供高性能,对多核芯片的支持等。2)Sun的HotSpot和Bea的JRockit都是策略性虚拟机:融合两者的最佳特性,提供管理和实时监控功能,在hypervisor这层中运行本地虚拟机代
系统 2019-08-12 01:32:55 1682
必备的Java参考资源列表包含必备书籍、站点、博客、活动等参考资源的完整清单级别:初级TedNeward,主管,ThoughtWorks,Neward&A
系统 2019-08-29 23:23:24 1681
JavaIO编程1、基本概念Java中对文件的操作是以流的方式进行的,流是Java内存中一组有序数据序列。Java将数据从源(文件、内存、键盘、网络)读入到内存中,形成了流,然后还可以将这些流写到另外的目的地(文件、内存、控制台、网络)之所以叫做流,是因为这个数据序列在不同时刻所操作的是源的不同部分。2、流的分类流的分类方式一般有以下三种:(1)输入的方向分:输入流和输出流,输入和输出的参照对象是Java程序。(2)处理数据的单位分:字节流和字符流,字节流
系统 2019-08-12 09:29:44 1681
蔡学镛力荐作品《Java虚拟机精讲》上市先做个自我介绍吧,高翔龙,7年左右的工龄,做过码农、技术经理、高级架构师,呆过大公司、混过创业公司,目前任职一家创业的互联网企业担任系统架构师,负责平台架构搭建、优化、hadoop的推广和实施,以及企业新员工的培训工作。平时喜欢倒腾中间件、喜欢重复造轮子、更喜欢买本书不看,回家摆着吃灰(或许感觉心里踏实些)。对于我来说,写一本书,真的是如履薄冰。习惯了写博客,对于写书来说,真的是一次不小的挑战。最关键的是写的是跟JV
系统 2019-08-12 09:29:33 1679
Whatis线程:在JAVA程序中,一定会有一个主线程,(即至少有一个线程)当一个Java程序启动时,JVM会创建主线程,并在该线程中调用程序的main()方法。线程可以理解为“程序内部一个独立的运行单位”。Whatis进程:进程是将程序运行起来后,由一个或是多个线程组成。Whatis进多线程,简单的多线程的实现:packageG_LWP;publicclassTestextendsThread{privateinti;publicvoidprint(){
系统 2019-08-29 23:14:42 1677