`
flyingis
  • 浏览: 290845 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
一、什么是Java虚拟机<o:p></o:p> <o:p> </o:p> Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。<o:p></o:p> <o:p> </o:p> 1.        为什么要使用Java虚拟机<o:p></o:p> Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平
    作者:Flyingis    在初始化一个类,生成一个实例的时候,newInstance()方法和new关键字除了一个是方法,一个是关键字外,最主要有什么区别?它们的区别在于创建对象的方式不一样,前者是使用类加载机制,后者是创建一个新类。那么为什么会有两种创建对象方式?这主要考虑到软件的可伸缩、可扩展和可重用等软件设计思想。     Java中工厂模式经常使用newInstance()方法来创建对象,因此从为什么要使用工厂模式上可以找到具体答案。 例如:    class c = Class.forName(“Example”);    factory = (ExampleInterf ...
有的时候 Vector更好一些;有的时候ArrayList 更好一些;有的时候你一个也不想用。但愿,你不是在期望一个简单明了的答案,因为答案因你在用他们做什么而定。下面是要考虑的四个方面: API 同步-Synchronization 数据增长-Data growth 使用方法-Usage patterns 让我一个一个来解释吧。 API 在The Java Programming Language (Addison-Wesley, June 2000) 中Ken Arnold, James Gosling, 和 David Holmes 是这样描述Vector的,它是更ArrayList ...
    作者:Flyingis    刚刚看到一篇文章《中方落败软件人才争夺战 人才利用率堪忧》,里面谈及了大家经常讨论的话题,中国软件和印度软件的差距。这是一个老生常谈的话题了,经常看到各大媒体网站杂志报道类似的主题文章,对其中的缘由也分析的淋漓尽致,但在实际中始终没有改进,好像国外的高端电子产品到国内销售有一段滞后期,而许多已经被证明是先进的管理经营经验在国内应用难道也要经历一段酝酿的时期吗?下面是这篇文章的链接:中方落败软件人才争夺战 人才利用率堪忧(一)中方落败软件人才争夺战 人才利用率堪忧(二)    这让我想到了一件事情。前几年在大学里,大家都认为计算机科学与技术是热门专业,许多优秀 ...
    作者:Flyingis    Action类是用户请求和业务逻辑之间的桥梁。每个Action充当用户的一项业务代理。在RequestProcessor类预处理请求时,在创建了Action的实例后,就调用自身的processActionPerform()方法,该方法再调用Action类的execute() ...
(文章转自CSDN)Web开发领域的2005年,一方面ASP.NET 2.0、PHP 5.1预期发布,另一方面Perl 6“已经开始看起来像个没有结束的项目了”,此外,Ajax和Ruby On Rails(简称RoR)的火爆让人嫉妒,这些现象的背后正是Web开发的理念悄然发生了变化。   Web标准日渐流行   当Jeffrey Zeldman在2003年出版《Designing With Web Standards》的时候,CSS已经被主流浏览器支持了4年之久。Web标准其实分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CS ...
    作者:Flyingis        在使用Hibernate进行查询的时候大家都会用到Hibernate缓存,其中Session缓存即一块内存空间,存放了相互关联的Java对象,这些位于Session缓存中的对象就是持久化对象,Session根据持久化对象的状态变化来同步更新数据库。这个Session缓存是Hibernate的一级缓存。此外,SessionFactory有一个内置缓存和一个外置缓存,即Hibernate的第二级缓存。而Hibernate正是由于这些缓存的存在,才使得其数据库操作效率提高,就是说,在提供了方便易操作的操作数据库数据的方式的同时保证了工作效率,但是不能因此而 ...
    作者:Flyingis    在关系数据库中的主键可分为自然主键(具有业务含义)和代理主键(不具有业务含义),其中代理主键可以适应不断变化的业务需求,因此更加流行。代理主键通常为整数类型,与此对应,在持久化类中野应该把OID定义为整数类型,Hibernate允许把OID定义为short、int和long类型,以及它们的包装类型。    Hibernate提供了几种内置标识符生成器,每一种标识符生成器都有它的使用范围,应该根据所使用的数据库和Hibernate应用的软件架构来选择合适的标识符生成器。下面是几种常用数据库系统可使用的标识符生成器:MYSQL: identity increme ...
    作者:Flyingis    在网上很多文章和论坛都在讨论Hibernate,初次接触Hibernate,当然需要知道它是什么,可以用来做什么。用简单的语言来描述,可以认为Hibernate是:    它是连接Java应用程序和关系数据库的中间件。    它对JDBC API进行了封装,负责Java对象的持久化。    在分层的软件架构中它位于持久花层,封装了所有数据访问细节,使业务逻辑层可以专注于实现业务逻辑。    它是一种ORM(Object-Relation Mapping)映射工具,能够建立面向对象的域模型和关系数据库模型之间的映射。    在Java应用中使用Hibernat ...
目的,主要是那当前的项目练手,熟悉一下hibernate2和hibernate3的差别,给当前项目一点扩展的空间。1.首先将hibernate2.jar替换为hibernate3.jar(hibernate-3.0.5)  hibernate-tools.jar也替换成新的(从hibernate-tools-3.0.0.alpha4a找出来的)2.将所有程序中的net.sf.hibernate替换为org.hibernate. 3.但是有例外  net.sf.hibernate.expression.Expression换为org.hibernate.criterion.Expression   ...
    作者:Flyingis    在科学和工程技术领域,模型是一个很有用途的概念,它可以用来模拟一个真实的系统。在软件开发领域,模型用来表示真实世界的实体。在软件开发的不同阶段,需要为目标系统创建不同类型的模型。在分析阶段,需要创建概念模型。在设计阶段,需要创建域模型和数据模型。其中,域模型是面向对象的,数据模型是面向关系的,域模型和数据模型之间存在一种对象-关系映射。概念模型    概念模型清楚地显示了问题域中的实体。不管是技术人员还是非技术人员都能看得懂改面模型,他们可以很容易地提出模型中存在的问题,帮助分析人员及早对模型进行修改。在软件设计域开发周期中,模型的变更需求提出得越晚,所耗费 ...
    就在前一个小时左右的时间博客排行榜上列出的都是前200位博客,现在已经和博客园主页上一样只列出前100位了(我现在恰好是101位)。其实100或200不是最主要的,关键是这里所倡导的原创意识、竞争意识可以促进BlogJava不断完善和发展。这段时间发现BlogJava变化还是挺大的,我在这里定居时间不长,不知道以前怎么样,但这几天我至少看到了首页上加入了“24小时最热随笔”、“最近更新博客”、“最新注册博客”,还有今天排行榜上的变化,这些都让我对这里充满了期待,在这里和大家一起学习,共同发展。
    作者:Flyingis    Java不像微软拥有Visual Studio 2005,各个开发组件无缝整合,提供高效的开发与部署环境。开发环境、插件和工具的多样化,给Java开发者带来了一些麻烦,但是却换来了极大的灵活性和选择的空间。Eclipse已经逐渐成为业界首选的开发环境,给Borland等公司带来不少的冲击,使得老牌的Java IDE公司的市场份额逐渐丢失,而在应用服务器、对象关系数据中间件、报表中间件、Web开发框架等领域仍然是热闹非凡,选择众多。    Java Web开发框架主要有Struts/JSF/Tapestry/WebWork/Spring等,它们都非常优秀,有自 ...
(文章转自CSDN)3. 使用XPath语法来查询对象和集合Commons JXPath是一种让人很吃惊地(非标准的)对XML标准的使用。XPath一段时间以来一直是作为在一个XSL样式表中选择结点或结点集的一种方法。如果你用过XML,你会很熟悉用这样的语法/foo/bar来从foo文档元素中选择bar子元素。Jakarta Commons JXPath增加了一种有趣的手法:你可以用JXPath来从bean和集合中选择对象,其中如servlet上下文和DOM文档对象。考虑一个包含了Person对象的列表。每一个Person对象有一个属性的类型为Job,每一个Job对象有一个salary(薪水)属 ...
(文章转自CSDN)2.Commons Collections中的算子算子成为Commons Collections 3.1中的有趣的部分有两个原因:它们没有得到应得的重视并且它们有改变你编程的方式的潜力。算子只是一个奇特的名字,它代表了一个包装了函数的对象—一个“函数对象”。当然,它们不是一回事。如果你曾经使用过C和C++的方法指针,你就会理解算子的威力。一个算子是一个对象—一个Predicate,一个Closure, 一个Transformer。Predicates求对象的值并返回一个boolean,Transformer求对象的值并返回新对象,Closure接受对象并执行代码。算子可以被组 ...
Global site tag (gtag.js) - Google Analytics