1. js读写cookie
2. java获取ip
3. commons-lang.jar中的工具类简析
4.下载
1. js读写cookie
/* 读写cookie函数定义 begin */
function getCookie(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + "=");
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";", c_start);
if (c_end == -1)
c_end = document.cookie.length;
return decodeURIComponent(document.cookie.substring(c_start, c_end));
}
}
return "";
}
function setCookie(c_name, value, expiredays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + expiredays);
document.cookie = c_name + "=" + encodeURIComponent(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}
/* 读写cookie函数定义 end */
2. java获取ip
public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
} else {
if (ip.indexOf(",") != -1) {
ip = ip.substring(0,ip.indexOf(","));
}
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
3. commons-lang.jar中的工具类简析
3.1 StringUtil类
isEmpty(String str)方法。null和空字符串""返回true,其他返回false。
isNotEmpty(String str)方法。与isEmpty(String str)返回结果相反。
isBlank(String str)方法。null、空字符串""和只包含空格的字符串" "返回true,其他返回false。
isNotBlank(String str)方法。与isBlank(String str)方法返回结果相反。
3.2 ExceptionUtils类
getFullStackTrace(Throwable t)方法。获得格式化的完整异常堆栈字符串。
ExceptionUtils类还提供getMessage(Throwable t)等多个实用方法。
4.下载
//下载附件
public void downloadAtt(HttpServletRequest request, HttpServletResponse response) throws IOException{
response.reset();
response.setHeader("Content-Disposition", "attachment;filename=\"" + new String((name.getBytes(), "iso8859-1") + "\"");
response.setContentType("application/x-download;charset=UTF-8");
ServletOutputStream out = response.getOutputStream();
out.write(new byte[]{});
out.flush();
out.close();
}