- 浏览: 55570 次
-
文章分类
- 全部博客 (87)
- 模糊查询 (1)
- 树查询 (1)
- 汉字文件编码 (1)
- 图片文件写入网页 (1)
- 网络爬虫 (1)
- 正则表达式实现IP排序 (1)
- javax读取xml (1)
- javax增删改查xml (1)
- java反射 (1)
- dom4j操作XML文件 (1)
- descode函数 (1)
- 用户在线管理 (1)
- oracle统计函数统计各个年份入职的人数 (1)
- js解绑时间和自定义时间 (1)
- extjs 树控件开发 (1)
- java导出excel (1)
- java导入excel... (1)
- 行转列 (1)
- 连接池 (1)
- oracle plsql (0)
- oracle (1)
- oracle存储过程 (5)
- plsql编程 (5)
- oracle触发器 (2)
- oracle知识 (1)
- web技术 (22)
- servle+jspt文件下载 (0)
- wen技术 (0)
- java连接池 (1)
- java基础 (10)
- weblogic (3)
- jstl标签库的使用 实例 (1)
- css技术 (1)
- 存储过程 (1)
- sql统计 (1)
- webservice技术 (5)
- spring框架总结 (1)
- mongoDB (1)
- 64位oracle安装plsql (1)
- mongoDB分组统计 (1)
- ssh 无密码登录 (0)
- mysql (1)
- hadoop (0)
- lucene (1)
最新评论
jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<c:url value="testWripperServlet?method=login" var="vv">
<c:param name="name" value="张三"></c:param>
</c:url>
<a href="${vv}">go_1</a>
<form action="<c url value='////'" method="get">
</form>
<a href="javascript:_go()">go</a>
<form action="<c:url value='testWripperServlet?method=login'/>" method="post">
<input type="text" name="name" value="">
<input type="submit" value="提交">
</form>
</body>
<script type="text/javascript">
function _go(){
var url="<c:url value='testWripperServlet?name=张三你&method=login'/>"
url=encodeURI(url);
alert(url);
window.location.href=url;
}
</script>
</html>
servlet类
package com.cgm.servlet;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestWripperServlet extends BaseServlet{
public void login(HttpServletRequest request,HttpServletResponse response) throws Exception{
String name=request.getParameter("name");
System.out.println("req is"+request);
System.out.println("hhhhhhhh--==="+name);
String[] names=request.getParameterValues("name");
System.out.println(names);
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
// Map<String, String> map=new HashMap<String, String>();
//默认调用父类方法 如果要修改必须覆盖
Map<String, String[]> map=request.getParameterMap();
String namess= map.get("name")[0];
System.out.println("namess="+namess);
}
}
调用包装类
package com.cgm.servlet;
import java.io.IOException;
import java.lang.reflect.Method;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class BaseServlet extends HttpServlet{
@Override
public void service(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
String methodName=req.getParameter("method");
try {
Method mm=this.getClass().getMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);
//声明包装类 调用
MyRequest myRequest=new MyRequest(req);
mm.invoke(this, myRequest,res);
} catch (Exception e) {
e.printStackTrace();
}
}
}
包装类
package com.cgm.servlet;
import java.io.UnsupportedEncodingException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
public class MyRequest extends HttpServletRequestWrapper {
private HttpServletRequest request;
//父类没有无参数构造 此方法必须实现
public MyRequest(HttpServletRequest request) {
super(request);
this.request=request;
}
//我们可以修改parmter方法
@Override
public String getParameter(String name) {
String value =request.getParameter(name);
if (request.getMethod().equals("GET")) {
System.out.println("==============转码");
try {
value=new String(value.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return value;
}
@Override
public String[] getParameterValues(String name) {
String[] values=request.getParameterValues(name);
if (request.getMethod().equals("GET")) {
System.out.println("=============开始转码");
for (int i = 0; i < values.length; i++) {
try {
values[i]=new String(values[i].getBytes("ISO-8859-1"), request.getCharacterEncoding());
System.out.println(values[i]);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
return values;
}
@Override
public Map getParameterMap() {
Map<String, String[]> mm=request.getParameterMap();
if (request.getMethod().equals("GET")) {
Iterator<String[]> it=mm.values().iterator();
while (it.hasNext()) {
String[] its=it.next();
for (int i = 0; i < its.length; i++) {
try {
System.out.println("mappppps1========="+its[i]);
//its[i]=new String(its[i].getBytes("ISO-8859-1"), request.getCharacterEncoding());
System.out.println("mappppps2========="+its[i]);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
return mm;
}
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<c:url value="testWripperServlet?method=login" var="vv">
<c:param name="name" value="张三"></c:param>
</c:url>
<a href="${vv}">go_1</a>
<form action="<c url value='////'" method="get">
</form>
<a href="javascript:_go()">go</a>
<form action="<c:url value='testWripperServlet?method=login'/>" method="post">
<input type="text" name="name" value="">
<input type="submit" value="提交">
</form>
</body>
<script type="text/javascript">
function _go(){
var url="<c:url value='testWripperServlet?name=张三你&method=login'/>"
url=encodeURI(url);
alert(url);
window.location.href=url;
}
</script>
</html>
servlet类
package com.cgm.servlet;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestWripperServlet extends BaseServlet{
public void login(HttpServletRequest request,HttpServletResponse response) throws Exception{
String name=request.getParameter("name");
System.out.println("req is"+request);
System.out.println("hhhhhhhh--==="+name);
String[] names=request.getParameterValues("name");
System.out.println(names);
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
// Map<String, String> map=new HashMap<String, String>();
//默认调用父类方法 如果要修改必须覆盖
Map<String, String[]> map=request.getParameterMap();
String namess= map.get("name")[0];
System.out.println("namess="+namess);
}
}
调用包装类
package com.cgm.servlet;
import java.io.IOException;
import java.lang.reflect.Method;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class BaseServlet extends HttpServlet{
@Override
public void service(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
String methodName=req.getParameter("method");
try {
Method mm=this.getClass().getMethod(methodName, HttpServletRequest.class,HttpServletResponse.class);
//声明包装类 调用
MyRequest myRequest=new MyRequest(req);
mm.invoke(this, myRequest,res);
} catch (Exception e) {
e.printStackTrace();
}
}
}
包装类
package com.cgm.servlet;
import java.io.UnsupportedEncodingException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
public class MyRequest extends HttpServletRequestWrapper {
private HttpServletRequest request;
//父类没有无参数构造 此方法必须实现
public MyRequest(HttpServletRequest request) {
super(request);
this.request=request;
}
//我们可以修改parmter方法
@Override
public String getParameter(String name) {
String value =request.getParameter(name);
if (request.getMethod().equals("GET")) {
System.out.println("==============转码");
try {
value=new String(value.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return value;
}
@Override
public String[] getParameterValues(String name) {
String[] values=request.getParameterValues(name);
if (request.getMethod().equals("GET")) {
System.out.println("=============开始转码");
for (int i = 0; i < values.length; i++) {
try {
values[i]=new String(values[i].getBytes("ISO-8859-1"), request.getCharacterEncoding());
System.out.println(values[i]);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
}
return values;
}
@Override
public Map getParameterMap() {
Map<String, String[]> mm=request.getParameterMap();
if (request.getMethod().equals("GET")) {
Iterator<String[]> it=mm.values().iterator();
while (it.hasNext()) {
String[] its=it.next();
for (int i = 0; i < its.length; i++) {
try {
System.out.println("mappppps1========="+its[i]);
//its[i]=new String(its[i].getBytes("ISO-8859-1"), request.getCharacterEncoding());
System.out.println("mappppps2========="+its[i]);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
return mm;
}
}
发表评论
-
excel 导出及单元格合并
2014-08-13 16:00 617合并单元格类 public ActionForward do ... -
jsp Select 级联
2014-07-31 08:56 426<%@page import="java.ut ... -
jsp动态生成table并且进行表头表列合并
2014-07-31 08:54 1518<%@page import="java.ut ... -
jsquery解析XMl文件二级联动实现
2014-07-26 21:14 574xml文件 <?xml version="1. ... -
json使用
2014-07-20 12:46 374后台 String json="[{'key' ... -
struts1标签循环里面的判断
2014-07-07 10:21 539<%@ page language="java ... -
自定义标签库循环数组 list map输出
2014-07-07 08:24 947jsp <%@ page language=" ... -
自定义标签库读取list输出
2014-07-06 14:59 374jsp <%@ page language=" ... -
jsp标签循环数字到jsp页面
2014-07-06 13:53 541jsp <%@ page language=" ... -
自定义标签库读取文件
2014-07-06 11:38 401jsp <%@ page language=" ... -
jsp自动标签实现字母转换
2014-07-06 11:35 347jsp <%@ page language=" ... -
jsp自定义标签实现比较两个数值的大小
2014-07-06 11:33 858jsp <%@ page language=" ... -
jstl自定义标签库入门
2014-07-05 10:39 4501.先写java代码 package com.cgm.tldt ... -
jsp调用普通java类实例
2014-07-05 10:10 4411.jsp页面 <%@ page language= ... -
jstl c标签库的使用
2014-07-05 09:27 407<%@ page language="java ... -
文件多线程下载
2014-07-04 08:27 618//线程下载类 package com.c ... -
HttpURLConnection实现断点下载
2014-07-02 23:35 2141package cn.demo; import java.i ... -
java不依赖浏览器的(HttpUrlConnection)单线程不间断下载
2014-07-02 23:01 564package cn.demo; import java.io ... -
HttpUrlConnection模拟浏览器发送请求
2014-07-02 22:32 539servlet...code package cn.itc ... -
servle+jspt文件下载
2014-07-02 22:22 516jsp code <%@ page language=& ...
相关推荐
当涉及到汉字这类非ASCII字符集的传递时,可能会遇到乱码问题。本篇文章将深入探讨如何防止Socket传递汉字乱码,确保数据传输的正确性。 1. **字符编码理解** - 字符编码是计算机表示和处理文本的方式,常见的有...
5. **避免乱码问题**:确保在创建ZIP文件时,文件名也使用了正确的编码,这样在解压时使用相同的编码就不会出现问题。 以上就是关于“ZipInputStream解压有中文名报错问题”的详细解析,包括问题的根源、关键概念...
然而,当尝试用它来写入包含中文字符的文本时,可能会遇到乱码问题。这是因为`FileOutputStream`并不理解字符编码,它只是简单地将字符串的每个字符转换为对应的字节并写入文件。对于非ASCII字符,如中文,每个字符...
通过本文介绍的方法,我们可以有效地实现 POS 打印机无驱串口打印的功能,并且能够解决常见的中文乱码问题。这对于实际应用中提高效率、降低成本有着重要意义。此外,需要注意的是,在实际部署时还需考虑更多因素,...
为了避免这类问题,可以使用`-encoding`选项强制指定源文件的编码。一种检测方法是插入一个Unicode汉字`\u4e00`,然后检查其在JVM内部的整数值是否正确,或者直接以UTF-8打开编译后的`.class`文件查看汉字是否保存...
总结来说,解决Android向服务器发送请求时的中文乱码问题,关键在于对请求参数进行正确的URL编码,并在服务器端适当地进行解码。使用过滤器可以有效地简化这个过程,使得代码更加简洁且易于维护。对于其他可能出现...
总的来说,`TomcatFormFilter`通过在请求到达目标资源之前设置合适的字符编码,有效地解决了中文表单提交时可能出现的乱码问题。此外,这种解决方案还具有一定的通用性,可以应用于其他类似的字符编码转换场景,增强...
在Java Web开发中,Filter过滤器是...通过以上方法,可以有效地处理Java Web应用中的中文乱码问题,确保数据在传输过程中的正确性。在实际开发中,一定要注意编码的统一和正确设置,避免因编码不一致导致的乱码问题。
中文字符集的编码方式多样,包括GBK、GB2312、UTF-8等,不同编码间的转换可能导致乱码问题。本文将详细讲解如何在Java中创建一个过滤器来转换中文字符。 首先,我们要理解Java中的字符编码概念。Java内部使用...
在Java编程语言中,中文字符的正确显示是一个常见的挑战,特别是在处理...通过学习和分析这个实例,开发者可以更好地理解和应用Java中的编码过滤器,从而在实际项目中解决中文乱码问题,提高代码的可维护性和用户体验。
7.7. 使用ProxyFactory通过编程创建AOP代理 7.8. 操作被通知对象 7.9. 使用“自动代理(autoproxy)”功能 7.9.1. 自动代理bean定义 7.9.1.1. BeanNameAutoProxyCreator 7.9.1.2. DefaultAdvisorAutoProxyCreator ...
在处理`.properties`文件时,由于Properties类默认使用ISO8859-1编码读取,所以包含汉字的.properties文件需要通过`native2ascii`工具转换为`\uXXXX`格式。XML文件的读取需要注意文件头部的编码声明,以确保与实际...
- `.properties`文件:`Properties`类使用ISO8859-1编码读取,所以不能直接包含汉字。需要使用`native2ascii`工具将汉字转换为`\uXXXX`格式。 - XML文件:XML文件的编码应在文件头中声明,如`...
7. char类型变量理论上可以存储一个汉字,但由于编码方式的不同,可能出现乱码。实际使用时,通常会考虑使用char数组或者字符串来存储中文字符。 8. 计算2乘以8最有效率的方法是使用位运算符,如 2 。 9. final...
如果以非UTF-8编码(如GBK)写的源文件在英文环境下编译,可能会出现乱码问题。一种检测方法是插入`\u4e00`这样的Unicode字符,然后检查编译后的`.class`文件中的字符串是否正确保存。 文件的读写涉及到字符编码的...
如果编码不匹配,编译时可能会出现乱码问题。例如,GBK编码的源文件在英文环境下的UNIX系统中编译,可能会导致Java无法正确识别汉字。检测这类问题的一种方法是编写包含Unicode转义序列(如`\u4e00`)的汉字,然后...
这个过滤器确保了请求参数和输出内容的正确编码,防止出现乱码问题。本篇文章将详细介绍`EncodingFilter`的原理、配置以及使用方法。 首先,让我们了解什么是过滤器(Filter)。在Servlet规范中,过滤器是Java Web...
根据给定的文件信息,我们可以总结出以下几个关于Java...需要注意的是,对于中文字符的处理,应选择合适的编码方式以避免乱码问题。同时,在进行文件操作时,妥善处理异常情况也非常重要,以确保程序的稳定性和安全性。
第二种方法是使用过滤器(Filter)来解决中文乱码问题。这一方法更为通用和长效,适用于整个应用范围内。通过编写一个实现了Filter接口的类,可以在请求到达具体的Servlet之前对其进行预处理。在这个例子中,过滤器...