摘要: 客户要求用程序生成标准的word文档,要能打印,而且不能变形,以前用过很多解决方案,都在客户严格要求下牺牲的无比惨烈。POI读word文档还行,写文档实在不敢恭维,复杂的样式很难控制不提,想象一下一个20多页,嵌套很多表格和图像的word文档靠POI来写代码输出,对程序员来说比去山西挖煤还惨,况且文档格式还经常变化。iText操作Excel还行。对于复杂的大量的word也是噩梦。直接通过JSP输出样式基本不达标,而且要打印出来就更是惨不忍睹。Word从2003开始支持XML格式,用XML还做就很简单了。大致的思路是先用office2003或者2007编辑好word的样式,然后另存为xml,将x 阅读全文
posted @ 2012-04-15 15:48 OrionBox 阅读(306) 评论(0) 推荐(0)
摘要: 1. JUnitKent Beck先生关于Smalltalk的单元测试被Kent Beck 和Erich Gamma 带进Java——JUnit。在这十年里,JUnit带来了测试驱动开发的普及浪潮。许多其它流行语言的单元测试版本也跟着被创造出来了,例如.NET、 C、Python、Perl。2. Eclipse刚进入20世纪,随着Java和它的API的成熟,Eclipse IDE(集成开发环境)为程序员提供了一个帮助他们提高生产效率和融入到成长中的Java社区的环境。Eclipse也是第一个用SWT UI 工具包的大型项目。Eclipse已经逐步向成为一个普及的集成开发环境的目标发展。现在它为 阅读全文
posted @ 2012-04-15 15:48 OrionBox 阅读(190) 评论(0) 推荐(0)
摘要: JavaScript作用域任何程序设计语言都有作用域的概念,简单的说,作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期。在JavaScript中,变量的作用域有全局作用域和局部作用域两种。1. 全局作用域(Global Scope)在代码中任何地方都能访问到的对象拥有全局作用域,一般来说一下几种情形拥有全局作用域:(1)最外层函数和在最外层函数外面定义的变量拥有全局作用域,例如:varauthorName="山边小溪"; functiondoSomething(){ varblogName="梦想天空"; functionin 阅读全文
posted @ 2012-04-15 15:47 OrionBox 阅读(168) 评论(0) 推荐(0)
摘要: 1. jQuery MobilejQuery Mobile这个框架能够帮助你快速开发出支持多种移动设备的Mobile应用用户界面。它是当前最流行的移动开发框架。51CTO推荐:jQuery Mobile基础入门教程jQuery Mobile不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。虽然jQuery Mobile相对较新,但开发人员可以用jQuery Mobile为许多移动设备(包括智能手机和平板电脑)开发网站应用程序,RSS阅读器等应用。查看jQuery Mobile实战应用,可以在这里看它的示例。假如你不熟悉jQuery,可以选择 MooT 阅读全文
posted @ 2012-04-15 15:46 OrionBox 阅读(458) 评论(0) 推荐(0)
摘要: 以下代码拷贝到地址栏回车即可运行,赶紧试试吧。1. 网页射击游戏这个游戏可以在任何网页里面玩,把下面代码粘贴到地址栏回车,按空格键进行射击,W键可前进,A、D键或者方向键可改变射击方向。javascript:var%20s%20=%20document.createElement('script');s.type='text/javascript';document.body.appendChild(s);s.src='http://erkie.github.com/asteroids.min.js';void(0);2. 让图片飞起来只要把下面 阅读全文
posted @ 2012-04-15 15:45 OrionBox 阅读(377) 评论(0) 推荐(0)
摘要: JavaScript是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能。由于JavaScript能够在用户本地浏览器中执行(有时也在远程服务器端执行),所以浏览器能够快速地对用户操作做出响应。在这里我们收集了6个新的JavaScript库,肯定可以增强和改进用户的Web浏览体验,不管你是开发者还是普通的网络用户。下面的JavaScript库,可产生各种动态的浏览器效果,这将为用户带来更多的互动体验。1. Spin. Js —— 可轻松定制动态的指示符Spin. Js是一个小的、易于使用的JavaScript库,用户可以使用它来创建动态指示符,如加载或进度符,无需使用任何 阅读全文
posted @ 2012-04-15 15:45 OrionBox 阅读(321) 评论(0) 推荐(0)
摘要: 在客户端编程语言中,如javascript和ActionScript,同源策略是一个很重要的安全理念,它在保证数据的安全性方面有着重要的意义。同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。那么什么叫相同域,什么叫不同的域呢?同源策略在客户端编程语言中,如javascript和ActionScript,同源策略是一个很重要的安全理念,它在保证数据的安全性方面有着重要的意义。同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。那么什么叫相同域,什么叫不同的域呢?当两个域具有相同的协议(如http),相同的端口 阅读全文
posted @ 2012-04-15 15:44 OrionBox 阅读(155) 评论(0) 推荐(0)
摘要: 在很多方面,Struts 2仅仅是改变了WebWork下的名称,因此,如果开发者具有WebWork的开发经验,将可以更加迅速地进入Struts 2的开发领域。下面是Struts 2与WebWork命名上存在改变。Struts 2和WebWork成员名称的对应表:除此之外,Struts 2也删除了WebWork中少量特性:AroundInterceptor:Struts 2不再支持WebWork中的AroundInterceptor。如果应用程序中需要使用AroundInterceptor,则应该自己手动导入WebWork中的AroundInterceptor类。富文本编辑器标签:Struts 阅读全文
posted @ 2012-04-15 15:43 OrionBox 阅读(147) 评论(0) 推荐(0)
摘要: 【案例1】创建一个新文件importjava.io.*; classhello{ publicstaticvoidmain(String[]args){ Filef=newFile("D:\\hello.txt"); try{ f.createNewFile(); }catch(Exceptione){ e.printStackTrace(); } } }【运行结果】:程序运行之后,在d盘下会有一个名字为hello.txt的文件。【案例2】File类的两个常量importjava.io.*; classhello{ publicstaticvoidmain(String[] 阅读全文
posted @ 2012-04-15 15:43 OrionBox 阅读(194) 评论(0) 推荐(0)
摘要: 1 通用篇“通用篇”讨论的问题适合于大多数Java应用。1.1 不用new关键词创建类的实例用new关键词创建类的实例时,构造函数链中的所有构造函数都会被自动调用。但如果一个对象实现了Cloneable接口,我们可以调用它的clone()方法。clone()方法不会调用任何类构造函数。在使用设计模式(Design Pattern)的场合,如果用Factory模式创建对象,则改用clone()方法创建新的对象实例非常简单。例如,下面是Factory模式的一个典型实现:publicstaticCreditgetNewCredit(){returnnewCredit();}改进后的代码使用clone 阅读全文
posted @ 2012-04-15 15:41 OrionBox 阅读(158) 评论(0) 推荐(0)