君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理

随笔分类 -  java

上一页 1 2 3

摘要:引子:前几天,小胖和我说他们公司CTO批他了,说他写的代码不够OO,不够DDD。细问才知道他们CTO在推DDD(领域模型驱动设计).我当时给他的观点是,JavaEE应用是天生贫血的,并不能像ruby之类的语言做到很好的富血,做到DDD。因为这些观点也是N年前讨论过的问题,我记得冒似robbin当年还下过定论:Java天生是贫血的。所以有了ruby之流做RAD快速开发。但当seam到spring roo的出现与完善,富血DDD在Java里也变得可行起来(此论言之尚早,拭目以待)。我以前也和别人争吵过哪个更好,现在我的思想又受到了一些冲击,你呢?世界在发展,我们的思想是不是也应该与时俱进呢?贫血v 阅读全文
posted @ 2012-05-10 02:47 刺猬的温驯 阅读(580) 评论(0) 推荐(0) 编辑

摘要:这是我一些常用的开发工具,主要用来做web开发,绝大部分都是开源的,这里做出一个列表并给出评论和网址,以后逐步充实完善本人Java初学者,水平实在有限,如有错误之处,请来信告知,感激不尽JDK说明:Java软件开发工具箱网址:http://java.sun.com相关资源推荐:必备Eclipse说明:目前最为流行的跨平台JAVA集成开发环境,扩展性极高,很多插件可用完全用Java开发,无需安装,方便平台的迁移我目前用的Eclipse已经维护了两年多,其间重装系统无数次,Eclipse的个人配置和插件却无需重装,非常方便网址:http://www.eclipse.org相关资源推荐:吐血推荐,都 阅读全文
posted @ 2012-04-24 22:15 刺猬的温驯 阅读(496) 评论(0) 推荐(0) 编辑

摘要:Java将数据于目的地及来源之间的流动抽象化为一个流(Stream),而流当中流动的则是位数据。14.2.1 InputStream和OutputStream计算机中实际上数据的流动是通过电路,而上面流动的则是电流,电流的电位有低位与高位,即数字的0与1位。从程序的观点来说,通常会将数据目的地(例如内存)与来源(例如文件)之间的数据流动抽象化为一个流(Stream),而其中流动的则是位数据,如图14-1所示。图14-1 数据的流动抽象化为流的概念在Java SE中有两个类用来作流的抽象表示:java.io.InputStream与java.io.OutputStream。InputStream 阅读全文
posted @ 2012-04-21 00:22 刺猬的温驯 阅读(1042) 评论(0) 推荐(0) 编辑

摘要:内容介绍:本书于2004年3月18日获得2003年度Jolt效能大奖\r\n本书主要介绍了软件开发的原则和方法。本书直指编程前沿,透过日益增长的现代软件开发规范和技术,对软件开发的核心过程进行了审视——以满足用户为本,针对用户需求来产出高效、可维护的优秀代码。全书涵盖内容广博,从个人责任和职业发展,到保持代码灵活性并使之易于改动和重用,多而不杂。本书采用了有趣的轶事、详实的例子以及诙谐的对话等方式,描述了软件开发方方面面的最佳实践方案和各种缺陷...第1章注重实效的哲学A Pragmatic Philosophy·1我的源码让猫给吃了·2软件的熵·3石头汤与煮青蛙 阅读全文
posted @ 2012-04-20 17:48 刺猬的温驯 阅读(689) 评论(0) 推荐(0) 编辑

摘要:有些开发者因为曾有性能上的不快经验而拒绝采用对象关系映射(ORM)技术。和任何形式的抽象一样,使用ORM框架要以一些额外开销作为代价,但事实上,使用经过恰当调优的ORM和手写原生的数据访问代码在性能上还是有得一拼的。更为重要的是,使用好的ORM框架更容易调优和优化性能,手写原生数据访问代码在性能调优上则会困难得多。本文中的示例建立在Mindscape的LightSpeed ORM之上,我们将结合示例讨论常见的问题及其解决方案。N+1问题让我们来看看web应用程序中的过期订单列表,这有助于我们理解所要讨论的问题。假设我们不仅要查看订单,同时还要查看每个订单的客户信息,如果没做深入分析的话,我们也 阅读全文
posted @ 2012-04-16 03:16 刺猬的温驯 阅读(603) 评论(0) 推荐(0) 编辑

摘要:不做web开发多年了, 可偶尔去面试的时候, 还是会问道Struts实现mvc的细节。 很多东西都模糊了。 在网上找了下, 觉得这篇不错, 记下来防止以后用的着。 ‘ 分布式企业应用软件结构复杂、涉及多种技术,对设计开发人员提出了很高的要求。在此情况下,运用设计模式――可复用的设计方案进行软件的设计开发十分必要。MVC模式已被证明是一种成功的软件设计模式,本文主要讨论了一种实现MVC模式的应用框架――Struts,并通过一个实例展示了Struts框架实现MVC模式的方法。MVC设计模式 MVC(Modle-View-Controller,模型-视图-控制器)模式是Xerox PARC在20世纪 阅读全文
posted @ 2012-04-16 00:40 刺猬的温驯 阅读(459) 评论(0) 推荐(0) 编辑

摘要:Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。我选了一些比较常用的项目做简单介绍。文中用了很多网上现成的东西,我只是做了一个汇总整理。Commons BeanUtilshttp://jakarta.apache.org/commons/beanutils/index.html说明:针对Bean的一个工具集。由于Bean往往是有一堆get和set组成,所以BeanUtils也是在此基础上进行一些包装。使用示例:功能有很多,网站上有详细介绍。一个比较常用的功能是Bean Copy,也就是copy bean的属性。如果做分层架构开发的话就会用到,比 阅读全文
posted @ 2012-04-15 03:57 刺猬的温驯 阅读(504) 评论(0) 推荐(0) 编辑

摘要:StringUtils方法的操作对象是java.lang.String类型的对象,是对JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理,例如,如果输入为null则返回也是null等,具体可以查看源代码)。除了构造器,StringUtils中一共有130多个方法,并且都是static的,所以我们可以这样调用StringUtils.xxx()下面分别对一些常用方法做简要介绍:1.public static boolean isEmpty(String str) 判断某字符串是否 阅读全文
posted @ 2012-04-08 21:24 刺猬的温驯 阅读(192) 评论(0) 推荐(0) 编辑

摘要:摘要每个web应用开发者一定组织视图组件,例如页首,正文体和页尾。有许多技术可以组织这些组件,但每个都有优缺点。这篇文章包括了7个可用的解决方案并让你了解Tiles框架和Struts框架的灵活性。从一个简单的说明组织视图组件的例子开始,然后使用JSP内建的机制,像include,彻底地解决问题。继续看其他的使用Tiles框架的替换方案,然后学会平衡Tiles框架和Struts框架的协作。(2,000个字;2002年1月4日)在Web应用软件开发中,一般用户界面负责站点的外观感觉,它可以让人产生真切的感受。通过界面的展现,来展示应用程序功能和导航。基于Servlet和JSP技术实现用户界面时,当 阅读全文
posted @ 2012-04-08 20:35 刺猬的温驯 阅读(424) 评论(1) 推荐(0) 编辑

摘要:package cn.itcast.util; import java.io.IOException; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; import javax.servlet.h 阅读全文
posted @ 2012-03-31 02:28 刺猬的温驯 阅读(1309) 评论(0) 推荐(0) 编辑

摘要:ApacheCommons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。我选了一些比较常用的项目做简单介绍。文中用了很多网上现成的东西,我只是做了一个汇总整理。一、Commons BeanUtilshttp://jakarta.apache.org/commons/beanutils/index.html说明:针对Bean的一个工具集。由于Bean往往是有一堆get和set组成,所以BeanUtils也是在此基础上进行一些包装。使用示例:功能有很多,网站上有详细介绍。一个比较常用的功能是Bean Copy,也就是copy bean的属性。如果做分层架构开发的话就会用到, 阅读全文
posted @ 2012-03-30 20:33 刺猬的温驯 阅读(318) 评论(0) 推荐(0) 编辑

摘要:stream代表的是任何有能力产出数据的数据源,或是任何有能力接收数据的接收源。在Java的IO中,所有的stream(包括Inputstream和Outstream)都包括两种类型:(1)字节流 表示以字节为单位从stream中读取或往stream中写入信息,即io包中的inputstream类和outputstream类的派生类。通常用来读取二进制数据,如图象和声音。(2)字符流以Unicode字符为导向的stream,表示以Unicode字符为单位从stream中读取或往stream中写入信息。区别:Reader和Writer要解决的,最主要的问题就是国际化。原先的I/O类库只支持8位的 阅读全文
posted @ 2012-01-26 15:00 刺猬的温驯 阅读(3315) 评论(1) 推荐(1) 编辑

上一页 1 2 3