04 2013 档案
摘要:当我们实现一个文件下载功能时,大多数人是通过Strust等框架实现的。Strust框架把底层的文件下载细节隐藏了起来,使我们不得其要领。下面我通过一个程序示例来再现通过Servlet下载文件的细节和原理。示例.....。文件下载的原理非常简单,就是把数据从一个输入流中读出数据,再写入一个输出流。这里的输入流是FileInputStream(为了提高速度,对其包装了一个装饰类BufferedInputStream,以提供缓冲功能),输出流是ServletOutputStream。
阅读全文
摘要:本文主要通过一个测试程序,来观察全局变量、静态变量、局部变量、常量、子函数、函数参数等,它们在内存中的分布规律。最后列举了内存中的几种空间类型。希望对大家有所帮助。变量在内存地址的分布(由大到小):全局\静态(未初始化)、常量数据、全局\静态(初始化)、代码区、堆、栈;栈中的变量按声明的顺序在内存的中依次,地址由大到小。证明了栈的伸展方向是由高地址向低地址扩展的;栈中的变量:主/子函数内声明的非静态变量(包括数组变量、指针变量、const变量);函数的参数变量。……
阅读全文
摘要:笔者所发表的设计模式系列的随笔一共包含15篇,归纳总结了《Head First 设计模式》一书中的内容。在这些随笔中,尽量用简洁、概括的语言说明每个模式的概念、特点、用法,并配以图片(类图、流程图)给读者一种直观、具体的印象。看了这么多设计模式,我们再来回顾一下“模式”的概念,以及我们应该怎样来应用这些模式。模式:是在某情景(context)下,针对某问题的某种解决方案。……
阅读全文
摘要:我们一开始只是从功能上或者说从数学意义上理解函数,知道函数名代表的是一个功能(或是说一段代码)。函数名到底又是什么东西呢?一个数据变量的内存地址可以存储在相应的指针变量中,函数的首地址也以存储在某个函数指针变量中。这样,我就可以通过这个函数指针变量来调用所指向的函数了。我们将通过多个示例,来深入理解函数指针的本质。。。
阅读全文
摘要:在计算机系统中,因为有字节的限制(C语言中float类型占4字节,double类型占8字节),小数的表示要复杂的多。IEEE制定的浮点标准得到了所有的计算机的支持。接下来我们将介绍IEEE浮点标准所规定的计算机系统内的小数的组成结构,浮点数的分类,并且举例介绍浮点数的特点。最后介绍浮点数的舍入方式,以及浮点数的运算。
阅读全文
摘要:计算机系统内的整数运算的局限:
表示整数的二进制位是一定的,所以表示的整数的范围是局限的。
“整数”运算实际上是一种模运算:
表示数字的有限字长限制了可能的取值范围,结果运算可能溢出,所以运算结果都是取模之后的。
无符号加法
一个算术运算溢出,是指完整的整数结果不能放到数据类型的字长限制中去。
C语言中真正执行的无符号加法,又称为 模数加法。
……
阅读全文
摘要:SCA(Service Component Architecture)是为实现 SOA 而产生的一种规范。它提供了一种编程模型,能够十分方便、快速地来构建 SOA 所需的系统和应用。 SCA内部既融合了IOC的思想,同时又把面向对象的复用由代码复用上升到了业务模块组件复用,同时将服务接口,实现,部署,调用完全分离,通过配置的形式灵活的组装,绑定。从代码级的面向对象思想,到组件级的EJB概念,再到服务级的SOA理念,是一个开发复用的不断提升的过程,经历的经验教训正在给实践做出最好的指导。SOA提倡的就是更高级别的复用,服务的复用。 SCA基于这样的理念:将业务功能作为一系列的服务而提...
阅读全文
浙公网安备 33010602011771号