Servlet 的优势与弊端 –优势 功能强大,可以调用任意的Java JDK API 能够实现很多高级特征 成熟 –弊端 逻辑处理和内容展示很难分离 开发效率低 –out.println(“”); 维护成本高 JSP 的优势与弊端 –优势 可以直接嵌入静态HTML 可以直接写代码 开发效率高 –弊端 如果直接在JSP页面中写代码 –程序可读性差 –维护困难 MVC设计模式 –MVC设计模式早在面向对象语言Smalltalk-80中就被提出并在此后得到业界的广泛接受 –它包括三类对象 模型(Model)对象 –是应用程序的主体部分 视图(View)对象 –是应用程序中负责生成用户界面的部分 控制器(Control)对象 –是根据用户的输入,控制用户界面数据显示及更新Model对象状态的部分 –MVC设计模式的好处 MVC模式不仅实现了功能模块和显示模块的分离 同时它还提高了应用系统的 –可维护性 –可扩展性 –可移植性 –组件的可复用性
定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性)
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。
java的reflect包的,阐述反射机制及动态代理的细节问题.其中动态代理部分内容参考网上资料.读完此文,相信会对java反射机制有一个完整清楚的了解.尤其应该看看其它中代码举例部分.
最近在开发j2ee的项目中,需要读取面部识别考勤终端机中的数据,厂商提供二次开发需要的就是一个开发指南说明书和2个dll文件:HwDevComm.dll、HDCP_Utils.dll。其中重要的就是HwDevComm.dll。
Date类学习总结(Calendar Date 字符串 相互转换 格式化)
J2EE/XML开发者通常都是使用文档对象模型(DOM)API或简单的APIforXML(SAX)API来分析XML文档。然而,这些API都有其缺点。其中,DOMAPI的缺点之一是消耗大量的内存,因为在该XML文档可以被导航之前,必须创建一个完整的XML文档的内存结构。而SAXAPI的缺点在于,它实例了一种推分析模型API,其中分析事件是由分析器生成的。比较之下,StAX则是基于一种拉分析模型。在本文中,你将首先创建你自己的XML文档,然后学习使用各种不同方法来对之进行分析;最后,我们使用事件生成的StAX拉方法。
Java高性能系统常见设计与优化世讯环宇研发部概述JavaVM应用程序通信数据库高性能系统典型体系结构优化原则内存访问比硬盘I/O访问快万倍内存访问比网络I/O访问快百倍网络I/O访问比硬盘I/O访问快百倍性能基准首先降低硬盘I/O访问次数,如硬盘数据库访问其次降低进程间通信I/O次数,尤其是远程进程间通信I/O次数,如JDBC数据库访问降低CPU和内存等资源的占用优化原则概述JavaVM应用程序通信数据库JVM优化优先使用BEA JRockit,而不是使用SUNJVM如果使用SUNJVM,使用-server即Server版的JVM根据Cache需要,可调整JVM的HeapSize,如-Xmx2048m,否则很可能出现OutofMemory异常。
Servlet是JAVA2.0中新增的一个全新功能,Servlet是一种采用JAVA技术来实现CGI(早期实现动态网页的技术,公共网关接口)功能的一种技术。Servlet和CGI一样都是运行在WEB服务器上,用来生成动态的WEB页面。Servlet使用JavaServlet应用程序接口(API)以及相关类和方法的Java程序。Servlet带给开发人员最大的好处就是它可以处理客户端传递过来的Http请求,并返回一个响应。同时还具有Java语言的一切特性(如可移植性,功能强大,安全,集成,模块化,扩展性和灵活性等)。
Socket类表现了客户端套接字,它是属于一台或两台计算机的两个TCP通讯端口之间的通讯通道。端口可以连接到本地系统的另一个端口,这样可以避免使用另一台计算机,但是大多数网络软件将使用两台计算机。但是TCP套接字不能与两台以上的计算机通讯。如果需要这种功能,客户端应用程序必须建立多个套接字连接,每台计算机一个套接字。
Java语言是Internet上新兴的编程语言,对Java的特性以及基本的编程方法已有很多文章作过介绍。但是,广大Java爱好者更希望了解Java更深一步的编程方法,本文就Java的网络功能及其编程方法作一初步的介绍。为了方便初次接触Java的读者,本文先就Java编程的一些常识作简单介绍。
随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本论文着眼于J2ME技术的应用,开发一款可商用的手机游戏程序——坦克大战。本程序的界面和运作方式继承于日本任天堂公司在20世纪80年代开发的Battle City游戏,将老少皆宜的经典作品移植到手机上来,为更流行的硬件平台提供应用软件。 本论文介绍了任天堂红白机的软硬件特性、J2ME的相关技术及本程序的结构分析和具体功能的实现。 关键字:J2ME,手机游戏, Java,坦克大战
总结过去10年的程序员生涯 展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年的路程,有些心得体会你可以借鉴一下,觉得说得有道理的你就接纳,觉得说得没道理的,你就抛弃,以下是我发自内心的,给大家的忠告,特别是针对那些小弟弟妹妹们。
Groovy是什么简单地说,Groovy是下一代的java语言,跟java一样,它也运行在JVM中。作为跑在JVM中的另一种语言,groovy语法与Java语言的语法很相似。同时,Groovy抛弃了java烦琐的文法。同样的语句,使用groovy能在最大限度上减少你的击键次数 - 这确实是“懒惰程序员们”的福音。
ToyBricks(积木)(以下简称ToyBricks)是基于面向积木方法论构建的、面向Java开发(尤其是RIA应用)的开源开发平台, 旨在提供给开发者一个简单易用、高效率、高产品质量、易扩展的开源平台,“像搭积木一样开发软件”。 ToyBricks解决了很多长期困扰Java开发者的问题,如: 1)开发所应用的“平台”都是拼凑而成而非真正意义上的整合解决方案。事实上,很多软件公司的平台都是用开源软件“混搭”而成,典型的,如 SSH(Struts+Spring+Hibernate)、FSH(Flex+Spring+Hibernate)等,这种混搭方案天然的割裂了作为组件 的完整性,很多组件是横跨展现、业务逻辑甚至持久层的; 2)JavaEE中Web开发规范的缺陷。在当前版本的JavaEE开发中,作为一个功能,页面与业务逻辑、配置等文件是分散在不同地方的(页面jsp、 html、js、css、图片等等一般放在工程rootFolder的某个文件夹中;业务逻辑放在classpath下;配置文件有时候要放在WEB-INF 文件夹中),这种分散天然的破坏了作为一个功能的“聚合”要求,我们很多时候是希望作为一个功能的全部文件放在一起的; 这种分散式的结构直接导致了“一个功能或模块打包形成一个jar文件作为产出物”的困难。 3)多个功能、模块之间的冲突问题。jar冲突是最显而易见的了,不同模块要求同一jar的版本可能不同,由于缺乏像OSGI那样的单元(OSGI中为Bundle) 隔离机制,所以只能一方向另一方妥协; 4)编程模型复杂、学习难度高。无论Struts的MVC、Flex的组件模型、Spring的IOC/AOP、Hibernate的ORM等等,其学习与应用 都是有一定难度的; 5)缺乏组件模型或组件模型复杂。可复用的资源积累是一个软件企业知识资产积累的重要组成部分,以JSP的Tag为例,目前很多企业内部只有少部分高 水平技术人员被授权开发公司应用的标签库,这严重限制了可复用资源的积累; 6)缺乏清晰的功能、模块边界。功能、模块之间高度耦合,且体现在不同的位置,导致模块拆分困难;
字符串处理是许多程序中非常重要的一部分,它们可以用于文本显示,数据表示,查找键和很多目的.在Unix下,用户可以使用正则表达式的强健功能实现这些目的,从Java1.4起,Java核心API就引入了java.util.regex程序包,它是一种有价值的基础工具,可以用于很多类型的文本处理, 如匹配,搜索,提取和分析结构化内容. java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。它包括两个类:Pattern和Matcher.
Java语言的关键字synchronized,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。
设计模式是特定情境中标准设计问题的重复性解决方案。GOF描述的设计模式是:对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。 例如GOF的《设计模式》(Design Patterns)书中描述了23种基本模式。《JAVA 模式》(Patterns in Java)书中描述了其它一些模式。
1.掌握Java中标识符的命名规则;2.熟练应用Java的基本数据类型;3.掌握Java中的运算符、表达式的运算规则;4.养成做注释的良好习惯,并熟练进行Java注释;5.熟练运用选择结构和循环结构进行程序设计。