Heis的Blog

保持简单,保持愚蠢
随笔 - 29, 文章 - 1, 评论 - 122, 引用 - 0
数据加载中……

2009年2月21日

LikeSql——让你更优雅地写SQL

LikeSql是我写一个开源的小框架(http://code.google.com/p/likesql/),目标是提供一个更优雅地处理SQL的一个方案,希望能够替代PreparedStatement和直接拼接SQL。虽然现在还有没有正式的release版本,我还在为此努力。点击这里阅读全文

posted @ 2010-11-28 15:16 Heis 阅读(2154) | 评论 (1)编辑 收藏

我使用DSL编写SQL的一个Java实现

     摘要: 什么是DSL?领域特定语言(Domain Specific language)通常被定义为一种特别针对某类特殊问题的计算机语言,它不打算解决其领域外的问题。
你遇到过这样的问题么?
你使用JDBC来实现数据存取,如果你要实现一个复杂条件的查询,而且条件数目还不一定,这时候就很难使用PreparedStatement来解决了,因为你的SQL模板不是固定的。就像上面的这个例子,如果用户可能要使用DateOfBirth或者Name作为条件查询,或者还有更多的条件。  阅读全文

posted @ 2010-03-21 23:41 Heis 阅读(4899) | 评论 (2)编辑 收藏

“快”真的是终极的用户体验吗?

     摘要: 自Google浏览器Chrome推出的那一天,它的速度鄙视了其他所有的浏览器,也极大地刺激了他们的神经。很多人说,第二次浏览器的战争就此开始,各个浏览器开始了javascript的竞速。Safari,Firefox,Opera都投入了大量的精力去改善他们的javascript引擎。前几天发布的firefox3.6又宣称要比3.5快20%。

那么追求“快”,真的是对用户最有利的么?
  阅读全文

posted @ 2010-01-25 23:53 Heis 阅读(1932) | 评论 (2)编辑 收藏

Jakarta Commons Cookbook读书笔记--Commons Collections(容器篇之一)

     摘要: Jakarta Commons Cookbook读书笔记系列篇,这篇主要提供commons collections里面iterator,buffer,map等类的用法。  阅读全文

posted @ 2010-01-12 22:28 Heis 阅读(3936) | 评论 (1)编辑 收藏

三分钟理解Java中字符串(String)的存储和赋值原理

     摘要: 可能很多java的初学者对String的存储和赋值有迷惑,以下是一个很简单的测试用例,你只需要花几分钟时间便可理解。

  阅读全文

posted @ 2010-01-03 18:59 Heis 阅读(8274) | 评论 (0)编辑 收藏

iReport/Jasperreport基础教程(下载)

     摘要: Jasperreport是一个开源的纯java的报表工具,支持导出PDF,Excel,CSV,DOCX等格式的报表。支持多种数据源,包括关系型数据库,java bean和XML等等。

ireport是基于jasperreport,开源的可视化报表模板编辑工具。  阅读全文

posted @ 2009-12-21 22:54 Heis 阅读(3063) | 评论 (0)编辑 收藏

双硬盘双系统的grub设置

     摘要: 我的电脑的主硬盘装CentOS5.4(linux),次硬盘装WinXP,这样隔离安装就不会怕系统相互影响。但是我希望在开机的时候可以选择不同的系统来启动,这可以借助grub来实现。  阅读全文

posted @ 2009-12-21 22:18 Heis 阅读(2131) | 评论 (1)编辑 收藏

回旋矩阵算法题解题思路

     摘要: 题目要求打印一个回旋数字矩阵
1 2 3
8 9 4
7 6 5  阅读全文

posted @ 2009-12-12 14:36 Heis 阅读(3702) | 评论 (1)编辑 收藏

Jakarta Commons Cookbook读书笔记--Commons Collections(函子篇)

     摘要: 3 Commons Collections v3.0
功能说明:增强java的泛型框架,引入函子的概念
主要功能:增加了一些函子的接口以及一些实现。包括一些实现了Comparator的类,封装了条件和判别式的Predicate接口,实现对象转换的Transformer接口以及模拟闭包的接口Closure;另外还有对jdk泛型框架的扩展。  阅读全文

posted @ 2009-11-30 23:20 Heis 阅读(2736) | 评论 (0)编辑 收藏

Jakarta Commons Cookbook读书笔记--Commons BeanUtils(2)

     摘要: 2.2 org.apache.commons.beanutils.BeanComparator比较Bean属性
2.3 org.apache.commons.beanutils.collections.BeanMap 使用Map封装Bean
2.4 使用org.apache.commons.beanutils.DynaBean接口,可以在运行时创建动态Bean,而且创建的动态bean可以与BeanUtils包内的工具(如PropertyUtils等)结合使用。
2.5 使用BeanUtils以字符串形式访问属性  阅读全文

posted @ 2009-11-24 10:19 Heis 阅读(1454) | 评论 (0)编辑 收藏

Jakarta Commons Cookbook读书笔记--Commons BeanUtils

     摘要: 2 Apache Commons BeanUtils 1.7
功能说明:顾名思义,Bean Utility就是Bean小工具,主要是封装了反射(reflection)和自省(introspection)的API(可以查看java.lang.reflect和java.beans文档),对bean进行操作。
主要功能:操作Bean的属性,针对Bean属性排序,Bean和Map的转换,创建动态的Bean等  阅读全文

posted @ 2009-11-21 17:44 Heis 阅读(1605) | 评论 (3)编辑 收藏

Jakarta Commons Cookbook 读书笔记--Commons Lang(2)

     摘要: 这篇文章专门讲 对null安全的(null-safe)字符串操作org.apache.commons.lang.StringUtils  阅读全文

posted @ 2009-11-18 16:56 Heis 阅读(1746) | 评论 (6)编辑 收藏

Jakarta Commons Cookbook 读书笔记--题记

     摘要: 作为一个菜鸟程序员,我常发现我写过的大部分工具类都是没必要的,因为很多开源的包已经帮我实现了这一些功能,当然这都是后来才发现的。  阅读全文

posted @ 2009-11-16 14:44 Heis 阅读(1583) | 评论 (2)编辑 收藏

Jakarta Commons Cookbook 读书笔记--Commons Lang

     摘要: 1.Apache Commons Lang 2.0
功能说明:提供对java语言基本设计的增强
主要功能:自动生成toString(),hashCode(),equals(),compareTo()内容,数组操作,格式化日期,创建枚举量,生成UID,简单的参数验证,计时器……  阅读全文

posted @ 2009-11-16 11:38 Heis 阅读(2083) | 评论 (0)编辑 收藏

一个初级程序员学习新技术的策略

     摘要: 我是一名初级程序员,工作一年多。还记得刚毕业,踏入社会的时候,面临着很多工作上尴尬和困惑。首当其冲的便是在学校学的知识并不够用,甚至并不管用。于是学习新技术成了重点解决的问题。  阅读全文

posted @ 2009-10-31 17:02 Heis 阅读(2813) | 评论 (8)编辑 收藏

工作一年了,回顾过去一年的点滴(二)

     摘要: 接上一篇工作一年了,回顾过去一年的点滴(一).
现在想来,项目停了也并不见得是一件坏事。但是那时候确实不知道怎么应对……  阅读全文

posted @ 2009-08-01 16:47 Heis 阅读(1904) | 评论 (4)编辑 收藏

工作一年了,回顾过去一年的点滴(一)

     摘要: 还记得当我第一次迈入公司门口的时候,是带着半分惶恐和一丝兴奋的心情。惶恐是因为对将来能否胜任工作的担心,而兴奋是终于真正迈入了社会,拥有属于自己的第一份工作。  阅读全文

posted @ 2009-07-19 14:36 Heis 阅读(4802) | 评论 (5)编辑 收藏

大话深入浅出Effective Java核心实战编程思想之——猴王的把戏

     摘要: 不知道大家还记不记得在《西游记》里的莲花洞夺宝的故事,就是猴王巧夺宝物,收复金银角大王那一章。到底这个故事给了我们什么启示呢?这故事又和Effective Java有什么联系?  阅读全文

posted @ 2009-07-04 14:37 Heis 阅读(1717) | 评论 (4)编辑 收藏

大话深入浅出Effective Java核心实战编程思想之——那些鸡翅

     摘要: 关于鸡翅的故事,相传最近最近以前……  阅读全文

posted @ 2009-06-20 00:59 Heis 阅读(1677) | 评论 (0)编辑 收藏

Java方法中使用的是值传递(pass-by-value)!

     摘要: 对于原始类型(primitive type也译为值类型),是通过拷贝一个相同的值传给java方法的参数的;而对于引用类型(reference type),就是对象,是通过拷贝一个相同的应用或地址传给java方法的参数的。业界都统称这是pass-by-value(值传递),这里是翻译一篇国外的文章来说明为什么java中的值传递比较特别。  阅读全文

posted @ 2009-04-23 23:31 Heis 阅读(4961) | 评论 (7)编辑 收藏

一道Google2009夏季实习生招聘笔试程序设计题

     摘要: 前两天看到有人在发Google实习生招聘题,自己手痒也实现了一个。  阅读全文

posted @ 2009-04-15 22:14 Heis 阅读(2210) | 评论 (7)编辑 收藏

JasperReport那些事儿(六)——制作分页式报表

     摘要: 如果要生成一份有不同样式的报表,这要怎么做呢?就像一份保险公司保单,可能有产品介绍、收益表、建议书、最后还有合同,这都要求不同的报表分页显示。这一篇将给你介绍怎么让报表分页。  阅读全文

posted @ 2009-03-28 13:57 Heis 阅读(15396) | 评论 (13)编辑 收藏

JasperReport那些事儿(五)——再说表格式报表

     摘要: 最近博客留言有问怎么做“单元格合并的报表”,单看这定义,无从下手啊,我也不知道我理解的意思对不对,上星期做了一个我理解的“单元格合并的报表,希望和那位留言的博友的意思有一点重合就好了。  阅读全文

posted @ 2009-03-16 22:40 Heis 阅读(6159) | 评论 (9)编辑 收藏

JasperReport那些事儿(四)——制作标签式报表

     摘要: 使用iReport制作标签式报表  阅读全文

posted @ 2009-03-08 15:33 Heis 阅读(4110) | 评论 (12)编辑 收藏

JasperReport那些事儿(三)——使用XPATH查询XML

     摘要: 其实JasperReport使用的XML查询语言也不是什么神秘的东西,就是XPATH。XPath 是一门在 XML 文档中查找信息的语言, 可用来在 XML 文档中对元素和属性进行遍历。  阅读全文

posted @ 2009-02-28 13:50 Heis 阅读(2244) | 评论 (0)编辑 收藏

JasperReport那些事儿(二)——从对象到XML数据源

     摘要: XML一直被认为是一种很好的描述结构化数据的语言。
首先XML文件的数据结构非常清晰。可以把报表所需要的数据集成到一个XML文件上,然后再通过在文件内查询,这比每需要一条数据就使用SQL来查询要显得更高效和简单。试想一下,你的同事A告诉你,“报表的数据都在这份XML文件里哦”。而同事B则对你说:”那些数据在某个数据库里,你自己去查吧。“,你更喜欢听到哪一句呢?  阅读全文

posted @ 2009-02-21 21:14 Heis 阅读(3072) | 评论 (2)编辑 收藏