Posts Tagged ‘JAVA’

JDK源码分析:java.lang.String

最近开始看JDK源码,不能太懒了~~注释非常详细(虽然是英文),而且部分代码也不算很复杂。先挑的简单的看看。。为了坚持下去,所以在博客写些记录,一是为了记忆,二是给自己一个坚持的理由~~哇咔咔,英文不算很好,那就对着中文API一起看吧。。 String结构 这个类结构很简单。。 /** The value is used for character storage. */ private final char value[];   /** The offset is the first index of the storage that is used. */ private final int offset;   /** The count is the number of characters in the String. */ private final int count; 用了一个char数组来存储字符,然后offset是偏移(这个我还搞不懂有啥用),count是String的长度。 注意到String类是final的,不可以被继承,而且private final [...]


EL表达式

期待已久的日子即将到来: 最新版JavaServer Pages (JSP)2.0 规范即将和其他的J2EE 1.4一同发布。新的JSP版本有一个新的飞跃,采用了新的方式:由于新的语言表达式(Expression Language,以下简称为EL)和JSP标准标签库(JSP Standard Tag Library ,以下简称为JSTL)这两种新的方式,在页面中不需要用java,对于开发一般的应用来说,重用代码变得更加容易。更具体来说,JSP 2.0带来了以下的优点: 首次被JSTL 1.0引入的EL现在被合并到JSP规范中,就像应用template text一样地使用所有的标准的和定制的组件。 新的EL已经被扩展,具备一个函数调用机制,JSTL1.1整合了一系列经常需要使用的函数。 新增加的变量和servlet 规范定义的错误处理机制被更好地组织起来。通过新增加的变量,JSP error pages 现在可以提供更多的错误信息。 容器因为更加严格的语法检查可以更容易地找出发生的错误。 所有的J2EE 1.4规范(包括JSP 2.0 和 Servlet 2.4),为了声明部署的规则描述而应用了XML schema。这样的好处之一是你现在可以通过任何顺序列出web.xml文件中的描述。JSP 2.0也增加了一些新的配置选项用于部署描述,允许通过全局的配置来代替基于每页的配置。 由于更具伸缩性的规则和新的自定义action element,现在就像编写XML文件一样,编写JSP页面变得更加容易。 定制的标签库现在可以开发成一系列的标签文件(具有JSP元素的文本文件),标签处理器可以使用新的、简化的标签处理器的API。与此同时,新规范加入了一些新的特性,比如:支持在jsp页面上显示动态属性列表和可执行片断属性。 在众多的书籍中,这是头一个讲解JSP 2.0新特性的文章。在这一部分,我们将看到和EL相关的信息,其他的新特性留到后面。在这里我假定读者已经熟悉JSP 1.2,而且至少听说过JSTL。 你可能对这本第三版的《JavaServer Pages》感兴趣。这本书中,我尽可能在细节上讲述所有的内容,而且并不认为你对JSP或者JSTL了解一切。这本书预计在2003年12月 出版,但是你现在可以在http://www.amazon.com、Barnes&Noble,或者其他在线书店预订。 EL(The Expression Language) 如果过去使用过JSTL,那么你可能已经熟悉 了EL。EL在JSTL 1.0规范中被引入,用来在运行期间对Java表达式中action element属性赋值提供另一种选择。当JSTL EL已经非常迅速的流行起来情况下,还是存在一个问题: JSTL EL 表达式仅仅可以与JSTL和custom action一起使用,怎样才能使用非标准API对EL表达式求值? JSP 2.0中,JSP容器自己可以理解EL表达式。这使你在所有过去只能应用Java表达式的地方应用EL表达式成为可能,比如:标准和定制action的属性值,模板文本。 在我们看具体的例子前,让我们更进一步的看看 什么是EL。EL是从JavaScript中获得启发的一种语言,XPath(一种用来访问XML文档的语言),但是EL在对变量的null值和执行更多 [...]


jsp getOutputStream() has already been called for this response异常解决方法

添加以下两段代码即可,我是在用jsp输出图像的时候出现这个问题 out.clear(); out = pageContext.pushBody(); 附上我的输出图像的JSP代码 <%@ page info="Random Image Show" pageEncoding="UTF-8" contentType="image/jpg" autoFlush="true" buffer="16kb" session="false" import="java.io.FileInputStream"%> <% ServletOutputStream sos = null; if (sos == null) sos = response.getOutputStream(); FileInputStream fis = new FileInputStream((String) request.getAttribute("filename")); byte[] buf = new byte[1024]; //缓冲区大小 int len = 0; while ((len = fis.read(buf)) != -1) { sos.write(buf, 0, len); [...]


开始学习Google App Engine(Java) – 准备篇

发现我挺喜欢Google的东西~~也算一个G粉吧~~~好喜欢啊好喜欢·~好多免费的东西~~ 什么是Google App Engine? 按我的理解,简单的一句话就是Google提供一个网络平台,这个平台目前支持 Python、Java,我们可以通过编写程序运行在google的服务器上。


Struts2.x框架的知识点

郁闷,从10月5日开始四天不能上网,杯具了。。。。不能上网就不上呗~~反正上的是寂寞~~今天终于可以上网了。。发泄一下,可恶的校园网!~ 不过在不能上网的几天内把Struts2的视频看完了·~哇咔咔。。不过还没练习~~可能很多还不会· 不说郁闷的事了,把知识点列出来先,以后一点点的把例子弄出来。 1,最最最常用的就是那个配置文件啦。。Struts.xml 1)Packa