用Apache Commons FileUpload来实现文件上传的时候,往往会遇到一些中文乱码的问题,有可能是获取的文件路径或者文件名称为乱码,也有可能获取的表单字段为乱码,以UTF-8编码为例,解决的办法如下:
- 调用FileUpload.settingHeaderEncoding(”UTF-8″),这项设置可以解决路径或者文件名为乱码的问题。
- 在取字段值的时候,用FileItem.getString(”UTF-8″),这项设置可以解决获取的表单字段为乱码的问题。
技术人生
用Apache Commons FileUpload来实现文件上传的时候,往往会遇到一些中文乱码的问题,有可能是获取的文件路径或者文件名称为乱码,也有可能获取的表单字段为乱码,以UTF-8编码为例,解决的办法如下:
position:fixed做为CSS2规范中的一项,可以让元素相对于屏幕来定位,而不是相对于网页,比如有一些网页元素需要始终停留在屏幕上 的某个位置,而不是随着页面滚动而位置变动,这个时候这项特性是非常有用的,但这项特性却不被ie支持,以下是一些实现这种效果的变相方式,基本上在所有 主流浏览器中都适合。最简单是把修饰元素的position改为absolute,然后在css中加上以下style:
html, body {
height: 100%; overflow: auto;
}
更多参考文章:
网页设计中圆角的使用越来越多,往往多是以图片背景的方式来实现,用这种方式实现圆角的缺点是图片加载增加了网络传输量,同时如果圆角的大小需要改 变,需按照尺寸重新制作圆角图片。这里介绍一种用javascript来灵活实现圆角的方式,开发人员要实现圆角效果,不用每次都去求助美工了。
首先从curvycorners.net下载一个rounded_corners.js的js文件,遵循LPGL协议,最新的版本是1.2.9,支持对HTML中DIV元素实现圆角(rounded corners)修饰。主要特性:
用法:
<script type=”text/JavaScript” src=”rounded_corners.js”></script>
<DIV id=”myDiv”></DIV>
<script type=”text/JavaScript”>
window.onload = function()
{
settings = {
tl: { radius: 20 },
tr: { radius: 20 },
bl: { radius: 20 },
br: { radius: 20 },
antiAlias: true,
autoPad: false
}
var divObj = document.getElementById(”myDiv”);
var cornersObj = new curvyCorners(settings, divObj);
cornersObj.applyCornersToAll();
}
</script>
更 加详尽的用法参考它自带的demo,大概的工作原理是curvyCorners一个像素一个像素的画出圆角,每一个像素用一个div实现,同时通过给每一 个像素加上一定的不透明性来实现反锯齿。可以同时给多个div实现圆角,通过newCornersObj = new curvyCorners(settingsObj, divObj1[, divObj2[, divObj3[, . . . [, divObjN]]]]);
Spring开发过程中常用的几种模式或者说最佳实践。
REST(Representational State Transfer),有人翻译成中文为“具象状态传输”,最近在开发者社区中被广泛讨论,可以把它理解为同MVC和Ajax一样,是一种架构模式,来源于 最初对互联网web架构的定义,在URI和HTTP这类标准之上的一套web通用架构,URI表示资源,HTTP协议提供GET/POST/PUT /DELETE四种基本操作动作,任何动作都可以由这四种最原子的动作组成。当然REST只是一种架构和思想,所以也不限于URI和HTTP协议,用户可 以自己定义新的协议实现REST架构,如用直接在TCP/IP协议上来实现REST架构。
因为现有的浏览器软件提供商都没有实现HTTP协 议中的PUT和DELETE方法,所以严格来讲,现在的web应用都不是REST架构,包括html中的form method也只能是GET和POST方法,但是很多web应用服务器都已支持PUT和DELETE方法,如java servlet api可以看到put和delete接口。一些http client如apache commons httpclient也支持这两种方法。在现阶段要实现REST架构的应用程序,我们只能借助ajax(XMLHttpRequest可以支持PUT和 DELETE方法)或者在某些情况下自己写客户端。
REST架构的特点在于把一些逻辑放在了客户端,客户端与服务器端的交互就是对服务器端资源的操作,或者可以理解为远程资源调用,Ruby on Rails在REST架构上已经有所尝试,估计在今后几年内,REST架构会有一个大的发展。
资源:
越来越多的人采用Subversion代替CVS来构建版本控制系统,Subversion默认提供两种服务模式,一种是自己实现的 svnserve,可以通过svn协议访问,另一种也是采用最为广泛的一种方式是借助apache http server来实现,可以通过http webdav方式访问,这里主要介绍第二种方式的安装和使用,安装环境为Windows XP。
安装完成,更详细的说明和配置参考svnbook。
其他资源: