自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(282)
  • 资源 (3)
  • 收藏
  • 关注

原创 动态代理(1)----JDK动态代理

在Java的Java.lang.reflect包下提供了一个Proxy类和一个InvocationHandler接口,通过使用这个类和接口可以生成JDK动态代理类或动态代理对象.Proxy提供用于创建动态代理类和代理对象的静态方法,它也是所有动态代理类的父类.如果我们在程序中为一个或多个接口动态地生成实现类,就可以使用Proxy来创建动态代理类:如果需要为一个或多个接口动态的创建实例,也可以使用P

2013-02-27 14:05:07 2704 2

原创 年度回忆录(2012.10----2013.01)

寒假结束了,年也过完了,提前回来一天就开始着手补上这迟到的年终总结,写了一个多星期还觉得有些东西没有写出来,无奈,点到为止吧:)。2012年的后半年经历了很多,收获了很多,感触了很多,各种很多……还是按照咱们的老规矩:以时间为主线,以事件为标志,请听我把这半年的事娓娓道来。关于学习计算机学习EJB看了一下上次总结的时间(2012-09-11),当时正在研究中间件的理论知识,期间接触到了EJB。现在

2013-02-19 23:16:46 3866 31

原创 Struts1和Struts2核心控制器的执行原理

Struts11、初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web、xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(struts-config、xml)的配置信息,为struts中不同的模块初始化相应的对象。2、发送请求:用户提交表单或通过URL向WEB服务器提交请求,请求的数据用HTTP协议传给web服务器。3、form填充:s

2013-01-31 23:29:52 6859 3

原创 Model2中的两种控制器

上一篇文章中所提到在Model2模型里是利用Servlet控制器或者过滤器来接收来自用户输入并控制模型和视图部分做出相应的变化,其中核心部分是对URI进行处理,然后做出一系列的动作,最终将内容显示在浏览器上。下面的两段代码分别展示了用Servlet和过滤器来充当Model2当中的控制器。Servlet控制器的核心代码package struts2_01;import java.io.IOExc

2013-01-24 23:43:46 2115 3

原创 别跟我扯依赖注入

依赖注入(Dependencyinjection)在Java的流行框架中得到了广泛的应用,比如Struts,Spring等等。(Martin Fowler写过一篇这个模式的精彩文章,感兴趣的童鞋可以去度娘)在Fowler最先提出依赖注入这个术语之前,人们经常用“控制反转”(inversion ofcontrol)这个词来描述同样的事情。其实IOC的范围比依赖注入的范围更大,IOC包括依赖注入和依赖

2013-01-10 23:25:48 2282 7

原创 从Servlet到JSP,从Model1到Model2

Servlet的出现Servlet技术和JSP技术是利用Java语言开发Web应用程序的两个主要技术,1996年Sun公司首次推出Servlet技术来解决Web程序当中的性能问题。Servlet在首次被用户请求的时候加载到内存当中,之后将一直驻留在内存里,对同一个servlet的后续请求将不用再对这个servlet的类进行实例化,这种机制大大提高了Web应用程序的相应速度。可是Servlet并不是

2013-01-03 23:39:32 3971 7

原创 Java中的集合

在编程时,常常需要集中存放多个数据,例如权限管理里面对角色所具有的权值进行遍历然后返回。当然我们可以使用数组来保存多个对象,数组存放数据的好处就是查找简单,通过数组的下标可以准确的进行定位。但是数组也有其自身的缺陷,其长度不可变化,也就是说一旦初始化数组时指定了数组长度,则这个数组长度是不可变的。所以如果需要保存个数变化的数据,数组就无能为力了。还有一点就是而且数组无法保存具有映射关系的数据(例如

2012-12-31 07:26:33 3845 5

原创 Java中的位运算符

技术只有落实到工程当中才显得那么有血有肉,之前学J2SE的时候运算符这块没有多在意,前一段时间实现权限管理模块的时候才发觉位运算符内有乾坤。笔者在这里进行简单总结,希望对读者有用。Java支持的位运算符:&:按位与。|:按位或。~:按位非。^:按位异或。:左位移运算符。>>:右位移运算符。:无符号右移运算符。这四个运算符比较常见,也比较简单总结如下表所示: 第一个运算符 第二个运算符 按位

2012-12-31 07:26:11 7020 6

原创 深入理解JS中的变量作用域

在JS当中一个变量的作用域(scope)是程序中定义这个变量的区域。变量分为两类:全局(global)的和局部的。其中全局变量的作用域是全局性的,即在JavaScript代码中,它处处都有定义。而在函数之内声明的变量,就只在函数体内部有定义。它们是局部变量,作用域是局部性的。函数的参数也是局部变量,它们只在函数体内部有定义。我们可以借助JavaScript的作用域链(scope chain)更好地

2012-12-18 22:27:38 28413 11

原创 JSTL学习(二)自定义标签库

JSTL自带的标签功能非常强大,但是仅仅有这些标签并不能完全满足实际开发中的需要,必要的时候我们可以自己动手写自己的标签,甚至于构建自己的标签库。开发自定义标签,首先需要开发标签所对应的类,其次要编写标签的描述文件tld,并把这个文件放在WEB-INFO目录下(其实可以放在别的目录下,只不过需要在Web.xml中配置而已,为了方便使用我们一般默认放在WEB-INF目录下)。最后在JSP页面上标记t

2012-12-10 20:25:23 3278 2

原创 JSTL学习(一)简介及常用标签

JSTL的全名为JavaServerPages Standard Tag Library,即JSP标准标签库(网上下载完成后的包为jakarta-taglibs-standard-current.zip),其主要功能是为JSP Web开发人员提供一个标准通用的标签库。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。JSTL简介JSTL标签是基于JS

2012-11-30 22:35:08 3001 2

原创 MySql乱码问题解决实录

开发过程中总避免不了遇到恶心的乱码,或者由乱码引发的一系列问题。出现乱码是字符集的原因一般而言和逻辑没有太大关系,也就是说整个系统大的方向没有问题,小的地方出现了漏洞,进而导致程序不能正常运行,所以说出现乱码是一件令人非常很恶心的事情。这里简要介绍一下自己遇到的乱码问题和解决问题的过程中的想法以及大致的操作,我们要学会的是如何分析问题进而解决问题,而不仅仅是照着网上的操作去一次次的解决眼前的困难,

2012-11-28 16:42:03 2093 5

原创 工作中遇到新知识应该怎么办

活到老学到老是我们常常说的一句话,但是真正在工作中学习的时候就没有那么轻松了。一般人面对工作中的新知识往往先是恐惧然后抱怨进而不自信最后逃之夭夭,末了还得出结论:自己不是这块儿料。其实不然,智力上人们之间差不了多少,缺少的就是那么一点点的方法和信心而已。这次外包中遇到了自己从未接触过的新知识,在此分享一下学习的感受或者说是对待新知识的方法,希望在读者以后的工作中能起到帮助作用。看帮助文档还记得当年

2012-11-15 10:34:32 2905 10

原创 业务之谜

开发当中常常听说“业务”这个词,什么“业务为王”之类的词不绝于耳,那么什么是业务?百度上的解释是:“‘业务’更白话一些来说,就是各行业中需要处理的事务……”。软件开发的目的就是利用计算机帮助人们完成自己工作中的事务,可见业务对于软件开发来说多么的重要,也就是说只有把业务搞清楚了才能进行软件开发,否则一切都是空中楼阁。那么到底什么是业务,怎样才能搞清楚业务?听到的故事一个农民出钱请科学家帮一忙,农民

2012-11-12 09:12:05 2948 7

原创 深入学习Tomcat——servlet容器

上一篇文章里分析了一个简单的Web容器的实现过程,今天笔者来分析一个servlet容器是如何实现的。相信通过这两篇博客读者就可以理解为什么说Tomcat是一个容器了,既是Web容器又是servlet容器。所谓Web容器仅仅是可以处理静态资源(html)但是servlet就不一样了,由于在servlet里面我们可以按照servlet的规范编写我们的逻辑所以就出现了变化无穷的网页。所谓的Web2.0正

2012-10-31 23:37:29 1811

原创 关于项目经理不懂技术

自己之前的想法是项目经理应该是技术大牛,或者起码应懂一些技术,因为只有这样才能更好的确定客户所提出的需求是不是可以实现。但是现在又有了一些新的想法,项目经理不需要懂技术,或者说项目经理不懂技术反而更好。讨好客户如果项目经理懂技术就会被技术所束缚,简单来说就是在客户提出需求的时,项目经理根据自己已有的技术水平做出判断:这个需求无法实现,或者实现起来工作量过大。于是很有可能当面就把客户的需求给回绝了,

2012-10-31 23:37:11 8457 12

原创 那些和JS有关的人呐

JS的位置题目当中那些和JS有关的人们中自己就是其中之一,因为这次外包的主要任务就是用JS调用人家已经写好的框架来实现功能。以往学JS的时候没觉得这门语言怎么样,就是一般的脚本语言嘛。负责和用户打交道,再具体一点就是做一些基本的数据验证而已。所以一般说起JS都要和DIV+CSS一起说,毕竟他们都是关于用户体验的技术。但是最近的这个项目让我看到了JS背后的东西。从软工说起因为软件工程的特点,项目如果

2012-10-31 09:46:38 2363 10

原创 做开发----你的位置在哪里?

项目快结束了,这次自己是以外包人员的身份参与的这个项目,学到了很多,感触也很多。虽然说自己所在的团队是一个很年轻的团队,但所处的公司还是比较大的,所以说项目开发算正规。笔者今天就根据自己所了解的情况来谈一谈,一般情况下开发团队中人员的大致配置。希望这篇博文可以帮助读者找到自己的位置,更重要的是找到自己的目标。各个角色公司项目负责人无疑这是开发团队中职位最高的,所谓最高并不是事无巨细,样样过问。他只

2012-10-18 00:10:49 3827 16

原创 从配电脑看公司管理

一个公司想扩大、想盈利,管理上不去是不行的。这次外包到一个全球500强的公司,自己最大的感触就是公司的管理对公司的发展具有决定性的作用,或者说管理的水平直接决定了公司的定位。下面就简单从一件事说说自己这次对公司管理的感受。遵纪守法尊重版权外包到别的公司去做项目,刚开始的时候打算用自己的机器,后来才接到通知说用公司的电脑。本来环境已经配置好了,但是突然通知换电脑,心里多少有些抱怨。得到的解释是公司为

2012-09-30 23:44:35 4486 11

原创 项目管理之任务分配

一个项目需求确定了(需求这个东西永远没有确定的哪一天,时时刻刻都是在变化,但是经理认为确定了那就是确定了:P),然后项目经理给了一份需求文档就算真是开始开发了。大致用了一天的时间数据库就由一个开发人员设计了出来(其实对于这个速度我还是比较“惊讶”的,一天就把数据库设计出来,可见数据库中丢字段、字段设计不合理等等问题一定在后面等着我们),数据库经过大家统一“审查”过一遍之后没有什么异议(时间这么紧没

2012-09-30 22:21:50 6460 6

原创 项目经理注意事项

不说“不知道”项目经理是一个项目的直接负责人,其最大的作用就是和客户沟通获取需求,然后根据需求合理安排自己团队的资源。于是在开发过程中项目经理一定不要将“不知道”挂在嘴边,做到十“知”八九是本分之内的事情。在开发过程中面对自己团队的开发人员遇到的业务问题,千万不能说不知道。下面是一段经典问答开发人员A:这个按钮在这里是干嘛的?项目经理:我哪知道,……(这是客户的意思)开发人员A:……(你他妈干啥吃

2012-09-30 15:18:10 4983 8

原创 年度回忆录(2011.12----2012.09)

前几天刚刚参加了提高班十期的开学典礼,最近师院的新生也陆陆续续的开始报道了。每年到这个时候都会感慨“年年岁岁花相似,年年岁岁人不同”啊。对于提高班来说每年都有新的血液注入进来,提高班的队伍在不断的扩大,中国软件业的明天也越来越明晰了;对于师范学院来说每年都有一批怀揣梦想的孩子们,拿着他们引以为豪的录取通知书前来报到,憧憬着自己美好的未来(但是他们不知道四年后他们面临的究竟是什么)。而我在这个地方度

2012-09-11 11:52:46 3439 20

原创 XML简明教程(7)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML名称空间XML语法结构XML验证之SchemaDOM4J读写配置文件关于SLTXML验证之Schema就像前面的文章所说的,通过DTD我们可以很容易的判断要验证的XML是否符合我们所定义的规范(元素之间的关系,属性的取值是否正确)但是如果要验证元素的内容DTD就无能为力了,于是人们研究了新的验证方法——S

2012-08-29 20:53:45 3214 4

原创 XML简明教程(6)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML名称空间XML语法结构DOM4J读写配置文件关于SLTXML语法结构 张三 24 上面是一个基本的XML,我们就以这个为例来详细说明XML文档的结构和语法。XML声明(第1行)XML文档总是以一个XML声明开始,其中指明所用的XML版本、文档的编码、文档的独立性

2012-08-28 00:20:24 3763 13

原创 XML简明教程(5)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML名称空间XML语法结构DOM4J读写配置文件关于SLTXML名称空间一个XML文档中可以包含许多元素与属性,当我们使用他人的XML文档或者使用多个校验文件(DTD或者Schema)时很有可能出现相同的元素或属性名称,而这些元素或属性的意义是不一样的,类似于java当中很多类的类名是相同的而这些类的具体作用

2012-08-19 15:14:03 3287 3

原创 XML简明教程(4)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML语法结构XML命名空间DOM4J读写配置文件关于SLTXML验证之DTD如前面教程中所说的那样,XML的最大作用在于存储、传输以及交换数据。在这期间XML的正确性至关重要,为了保证XML的正确性人们采取了相应的措施。XML的正确性分为两方面:一方面是XML的语法,一方面是XML的内容。人们把拥有正确语法的

2012-08-06 08:06:24 3543 11

原创 XML简明教程(3)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML语法结构XML命名空间DOM4J读写配置文件关于SLT和XML对比之语法细节除了上一篇文章中所说的可扩展之外,XML文档还常常被看做是文档的数据库化和数据的文档化。而以显示为主的HTML在这方面就要差一点,于是就造成了这两者的显著差异。1.  XML只能有一个根元素在HTML中可以有多个根元素,但是在XM

2012-07-26 15:27:51 3610 9

原创 XML简明教程(2)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML语法结构XML命名空间DOM4J读写配置文件关于SLT和HTML对比之可扩展相信对于XML而言更多的人比较熟悉HTML,随便打开一个网页然后右键查看源文件,那里面呈现的的就是为我们提供数据和样式的HTML代码。这篇文章就简要描述一下同样作为标记语言的HTML和XML他们之间的区别。先从名字开始分析,之所以

2012-07-26 15:27:32 3254 10

原创 XML简明教程(1)

目录发展历史XML和HTML对比之可扩展XML和HTML对比之语法细节XML验证之DTDXML语法结构XML命名空间DOM4J读写配置文件关于SLT发展历史学习知识首先要知道这个知识是如何产生的,是为了解决什么问题产生的,然后才有这个知识怎么运用的问题,所以这个教程的第一篇就来说说XML是怎么来的。XML的发展历史如下图所示,图中部分内容篇幅所限,不深入探讨。为了促进数据交换和操作,在20世纪60

2012-07-26 15:27:06 4802 11

原创 Ajax核心对象——XMLHttpRequest对象

XMLHttpRequest对象在Ajax中占据着十分重要的地位,因为通常意义上的和服务器进行交互是通过提交表单的形式,而在Ajax中的客户端通过XMLHttpRequest对象实现与服务器的通信。也就是说正是因为XMLHttpRequest才使得Ajax得以实现,于是我们的与服务器的交互速度明显提升,消除了令人头疼的等待之后用户体验便也更加良好。名字由来:XMLHttpRequest之所以叫这个

2012-07-11 11:10:08 9468 43

原创 Ajax原理

本文将通过一个具体的例子来展示Ajax的工作原理,通过与传统请求响应方式的对比展现Ajax中处理请求响应的不同方式。在这个示例程序中,所要完成的任务非常简单,仅仅需要输入一个姓名然后提交这个表单,在服务器端处理这个请求,然后在页面显示处理的结果,在下面的示例程序中,将展示通过传统方式和Ajax方式分别处理这个请求响应的具体过程。传统方式:<%@ page language="java" conte

2012-07-07 23:50:39 5905 19

原创 从Ajax说开去----Web开发技术历史

Web应用程序发展至今大体经历了三个阶段,第一个阶段使用的是简单的静态页面,第二个阶段使用得是ASP、JSP、PHP等动态脚本语言,第三个阶段是Web2.0阶段,而Ajax就是Web2.0中的核心技术。其中在Web应用程序发展的第一个阶段中,只能使用静态的HTML页面来开发Web应用程序,这个阶段的Web应用程序不能与客户产生任何互动,所实现的功能仅仅是信息的展示。但是客户的需求总是不断提高的,客

2012-06-30 22:13:03 3004 7

原创 毕业有感

毕业了也发生了很多事情,一直想说一说,但是却不知道该从哪说起。看来“万事开头难”这句话在写博客这方面也是同样适用的。按照以往的规律只要手指敲击键盘那么思绪就会跟着手指,然后手指控制键盘一点一滴的落到屏幕上。于是这篇文章就这样开始了,事情很多咱就先说说高兴的。云姐就业“从投简历到拿到Offer不到一个星期解决战斗,月薪8500五险一金齐全”,这是老师说的一句话,感觉很霸气,贴到博客里咱也鼓励鼓励自己

2012-06-29 13:55:14 2852 28

原创 使用Ajax以及CSS+DIV高仿谷歌搜索(附源码下载)

在使用Google搜索或者是Baidu搜索的时候,在输入搜索关键字的同时,会自动弹出匹配的其他关键字的提示,全心全意为人民服务的精神在这里崭露无遗。这种利用Ajax技术实现输入提示和自动完成的功能是Google率先推出的,然后在其他的Web应用中被广泛的应用。利用Ajax实现部分页面刷新或者自动完成会使得用户体验绝大大提升。技术永远是为用户服务的(无论是性能方面还是美观方面),脱离了用户就没有技术

2012-06-11 07:44:03 10795 19

翻译 《雷神的微软平台安全宝典》简介

在使用微软基础设施和企业部署这么多年的过程中,微软的文件加密系统(EPS)是我迄今为止见过的最安全但也是最未被充分应用的技术之一。在企业级或者中等规模的开发过程中很少被使用,无论是个人还是团队在安全控制中都孤立的来使用(EPS)。由于EPS易于个人设置和自主使用,但是在大规模部署时需要进行认证,恢复代理管理,备份,存储以及在实现访问模型方面要进行详细计划。EPS的错误部署可能导致数据的丢失。虽然通

2012-06-03 11:06:46 5561 7

原创 servlet应用之cookies&session操作

Cookies操作Cookies是指在Web应用中,为了辨别用户身份而存储在用户本地计算机上的数据。Servlet API提供了Cookie操作类,封装了操作Cookies常用方法。代码: package com.foxmail.xxy668;import java.io.*;import javax.servlet.*;import javax.servlet.http.*;pub

2012-05-31 21:26:51 2788 5

原创 servlet过滤器

在Web应用中可以使用过滤器对所有的访问和请求进行统一的处理、IP访问限制以及用户发送请求的字符编码转换等,在进行具体的业务逻辑处理之前,首先要经过过滤器的同意处理,然后才开始进入真正的逻辑处理阶段。过滤器的基本原理过滤器的功能就是在服务器和酷虎中间增加了一个中间层,可以对两者之间的交互进行统一的处理,每一个从客户端提交的请求都需要通过过滤器的处理然后再进行其他操作。在实际开发过程中,过滤器可以用

2012-05-31 11:32:36 6422 6

原创 servlet文件操作

在JSP开发过程中,经常会遇到需要把相关内容存储为文件的情况,在JSP中是输入输出流进行操作的,在Servlet中叶可以使用输入输出流实现对文件的读写,同时使用Servlet还可以很方便地实现文件的上传下载。读取文件代码:package com.foxmail.xxy668;import java.io.BufferedReader;import java.io.File;import j

2012-05-30 14:41:14 4479 7

原创 Servlet简介及工作原理

Servlet是一种服务器端的编程语言,是J2EE中比较关键的组成部分(其实学到现在J2EE里面的13个标准才接触了3个,他们分别是EJB,Servlet,JSP),Servlet技术的推出扩展了Java语言在服务器端开发的功能,巩固了Java语言在服务器端开发过程中的地位,而且现在使用非常广泛的JSP技术也是基于Servlet的原理,JSP+JavaBeanstalk+Servlet成为实现MV

2012-05-18 11:13:45 16113 12

原创 信息化时代下的我们----弄潮儿

读完《信息化与信息管理实践之道》的部分章节想起了《第三次浪潮》中的一段话,摘录如下。人类到现在已经经历了两次巨大的变革浪潮。这两次浪潮都淹没了早先的文明和文化,都是以前人所不能想象的生活方式,替代了原来的生活方式。第一次浪潮的变化,是历史数千年的农业革命。第二次浪潮的变革,是工业文明的兴起,至今不过是三百年。今天的历史发展甚至更快,第三次浪潮的变革可能只要几十年就会完成。我们正好生长在这急剧转变的

2012-04-28 15:36:26 12516 24

EasyMock单元测试例子

几个例子展示如何使用EasyMock进行单元测试

2013-12-31

运用Ajax高仿谷歌自动完成关键词

运用Ajax以及DIV+CSS高仿谷歌自动完成关键词

2012-06-10

简易Web服务器

基于java的简易服务器,希望她对和我一样的初学者有所帮助。

2012-04-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除