一个用户的请求是通ActionServlet来处理和转发的。那么,ActionServlet如何决定把用户请求转发给哪个Action对象呢?这就需要一些描述用户请求路径和Action衍射关系的配置信息了。在Struts中,这些配置映射信息都存储在特定的XML文件Struts- config.xml中。在该配置文件中,每一个Action的映射信息都通过一个<Action>元素来配置。 这些配置信息在系统启动的时候被读入内存,供Struts在运行期间使用。在内存中,每一个<action>元素都对应一个org.apache.struts.action.ActionMapping类的实例 ...
  • 14:29
  • 浏览 (860)
  • 评论 (2)
2007-11-27

JAVA中的指针,引用及对象的clone

关键字: http://www.ibm.com/developerworks/cn/java/l-jpointer/index.h
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,本文会试图澄清这一概念。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。本文会让你了解什么是影子 clone与深度clone,认识它们的区别、优点及缺点。 看到这个标题,是不是有点困惑:Java语言明确说明取消了指针,因为指针往往是在带来方便的同时也是导致代码不安全的根源,同时也会使程序的变得非常复杂难以理解,滥用指针写成的代码不亚于使用早已臭名昭著的"GOTO"语句。Java放弃指针的概念绝对是极其明智的。但这只是在Java语 ...
01. 不说"不可能"三个字.   02. 凡事第一反应:找方法,而不是找借口.   03. 遇到挫折对自己大声说:太棒了!   04. 不说消极的话,不落入消极情绪,一旦出现立即正面处理  05. 凡事先订立目标,并且尽量制作"梦想版".   06. 凡事预先作计划,尽量将目标视觉化.   07. 工作时间.每一分,每一秒都做有利于生产的事情.   08. 随时用零碎的时间(如等人、排队等)做零碎的事情.   09. 守时.   10. 写下来,不要太依靠脑袋记忆.   11. 随时记录灵感.   12. 把重要的观念,方法写 ...
  • 16:40
  • 浏览 (353)
  • 评论 (1)
摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术。本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作出解答。 目录: 一、术语session 二、HTTP协议与状态保持 三、理解cookie机制 四、理解session机制 五、理解javax.servlet.http.HttpSession 六、HttpSession常见问题 七、跨应用程序的session共享 八、总结 参考文档 一、术语session 在我的经验里,se ...
  • 11:29
  • 浏览 (363)
  • 评论 (0)
import java.io.IOException; import java.util.Timer; import java.util.TimerTask; public class Timerdosth { public void start() { Timer timer = new Timer(); timer.schedule(new ReplyTask(), 12); } public static void main(String args[]) { Timerdosth aa = new Timer ...
  • 17:21
  • 浏览 (570)
  • 评论 (0)
对于Hibernate这类ORM而言,缓存显的尤为重要,它是持久层性能提升的关键.简单来讲Hibernate就是对JDBC进行封装,以实现内部状态的管理,OR关系的映射等,但随之带来的就是数据访问效率的降低,和性能的下降,而缓存就是弥补这一缺点的重要方法.     缓存就是数据库数据在内存中的临时容器,包括数据库数据在内存中的临时拷贝,它位于数据库与数据库访问层中间.ORM在查询数据时首先会根据自身的缓存管理策略,在缓存中查找相关数据,如发现所需的数据,则直接将此数据作为结果加以利用,从而避免了数据库调用性能的开销.而相对内存操作而言,数据库调用是一个代价高 ...
  • 17:28
  • 浏览 (607)
  • 评论 (0)
1.在职业生涯发展的道路上,重要的不是你现在所处的位置,而是迈出下一步的方向。 2.职业生涯开发与管理: 只要开始,永远不晚;只要进步,总有空间。 3.职业生涯的每一次质跃发展都是以学习新知识、建立新观念为前提条件的。 4.在职业生涯早期,对自己锻炼最大的工作是最好的工作;   在职业生涯中期,挣钱最多的工作是最好的工作; 在职业生涯后期,实现人生价值最大的工作是最好的工作。 5.在职业生涯发展的进程中,什么时候你的工作热情、努力程度不为工资待遇不高、不为上级评价不公而减少,从那时起你就开始为自己打工了。 6.千万不要把你的主要精力放在帮助你的上级改正缺点错误上,用同样的时间和 ...
  • 16:46
  • 浏览 (325)
  • 评论 (0)
2007-05-30

DWR

DWR 框架 dwr.util.getValue("name"); dwr.util.setValue("demoReply", data); DWR通过这两个函数来帮你操作table: DWRUtil.addRows() 和 DWRUtil.removeAllRows() 。 这个函数的第一个参数都是table、tbody、thead、tfoot的id。一般来说最好使用tbody, 因为这样可以保持你的header和footer行不变,并且可以防止Internet Explorer的bug
  • 17:35
  • 浏览 (444)
  • 评论 (1)
SimpleFormController往上繼承自AbstractFormController,而又繼承自AbstractController, 這是開始實作Controller介面的基底類別,再往上的兩個類別各司WebApplicationContext與Http response的資源。   對於簡單的表單需求,我們通常透過繼承SimpleFormController,並覆寫其onSumit()方法來完成表單功能, 而實際上真正的表單處理流程定義在AbstractFormController   這邊說明三個我覺得比較常用且不複雜的方法,在繼承了SimpleFormControll ...
  • 17:02
  • 浏览 (1194)
  • 评论 (1)
Expression java 代码 package expression;       import java.io.*;    import java.util.*;       public class Expression {        private ArrayList& ...
  • 16:45
  • 浏览 (697)
  • 评论 (0)
dq1618
搜索本博客
博客分类
最近加入圈子
存档
最新评论