大家好,今天遇到一个问题,没有找到好的解决方法,就是特殊字符的转义;
情况如下:jsp
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<script type="text/javascript">
function tt(t){
var url = '<%=request.getContextPath()%>/TestApecCharServlet?name=李&&code=AA+';
t.href=encodeURI(url);
}
</script>
<a href="javascript:void(0);" onclick="tt(this)">test转移特殊符号</a>
</body>
</html>
下面是servlet
package com.lc.test;
import java.io.IOException;
import java.net.URLDecoder;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class TestApecCharServlet
*/
public class TestApecCharServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* Default constructor.
*/
public TestApecCharServlet() {
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
this.doPost(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("GBK");
String name = request.getParameter("name");
name=new String (name.getBytes("ISO8859-1"),"UTF-8");
name = URLDecoder.decode(name, "UTF-8");
String code = request.getParameter("code");
code=new String (code.getBytes("ISO8859-1"),"UTF-8");
code = URLDecoder.decode(code, "UTF-8");
System.out.println("------------name----------------:"+name);
System.out.println("------------name----------------:"+code);
}
}
在JSp一面传入参数 code=AA+ 但是在servlet即是AA 了,有什么处理这样的好办法啊?
分享到:
相关推荐
在编程和数据库交互时,确保数据安全至关重要,尤其是在插入数据到数据库之前,必须对特殊字符进行转义处理。这是因为不转义的特殊字符可能导致SQL注入等安全问题,从而造成数据破坏、信息泄露甚至整个系统的瘫痪。...
特殊字符(\,_,%)转义工具类 MyQueryInterceptor.java: Mybatis自定义拦截器 注意:该拦截器只支持QueryWrapper的like方法,serviceImpl层传全角模糊查询(%%) mapper或xml层的全角模糊查询(%*%)和半角模糊查询(%*或*%)
为防止这种情况,我们需要对特殊字符进行转义,例如将`转义为`<`,`>`转义为`>`,`"`转义为`"`,`'`转义为`'`,`&`转义为`&`,`\`转义为`\`。 2. **Spring MVC的解决方案**: - Spring MVC...
代码包含: EscapeUtil.java:特殊字符(\,_,%)转义工具类 MyQueryInterceptor.java: Mybatis自定义拦截器 注意:该拦截器只支持QueryWrapper的like方法,serviceImpl层传全角模糊查询(%%) mapper或xml层的全角模糊查询(%...
本篇文章主要探讨的是如何在SQLite中对特殊字符进行转义,以便正确执行查询。 在SQLite中,特殊字符包括但不限于`/`、`'`、`[`、`]`、`%`、`&`、`_`、`(`和`)`。这些字符在LIKE表达式中具有特定的含义,例如`%`代表...
- **功能**:此函数用于准备字符串以安全地插入到MySQL数据库中,通过转义特殊字符来防止SQL注入。 - **语法**:`mysql_real_escape_string(string, connection)` - **参数**: - `string`:要转义的字符串。 -...
转义字符`\`是最常用的特殊字符转义方法,将其放在特殊字符前即可使其失效。例如,如果想打印名为`test*`的文件内容,可以使用`cat test\*`,这里的`\`告诉Shell不要将`*`作为通配符处理。 单引号`' '`和双引号`" ...
例如,使用encodeURIComponent()函数对特殊字符进行转义的示例如下: ```javascript alert(encodeURIComponent("-")); // 转码后得到"-" alert(encodeURIComponent("#")); // 转码后得到"%23" ``` 在这个例子中,...
了解并掌握这些转义技巧,可以有效地帮助我们在处理含有特殊字符的ID时避免遇到问题,从而提高代码的稳定性和可维护性。在编写HTML和JavaScript时,良好的命名规范和避免使用特殊字符是防止这类问题的良好实践。
解决这类问题的方法是在特殊字符前加上反斜杠`\`,使其变为`\*`,这样Java的正则解析器就能识别出我们想要匹配的是一个星号,而非重复符号。 但是,需要注意的是,使用字符类`[]`来包含特殊字符在某些情况下可能也...
通过这些案例,可以清晰地看到Mybatis在处理特殊字符和进行复杂SQL语句编写时的各种转义方法和技巧。开发者应灵活运用这些技术,确保SQL语句的正确性及可读性。总之,正确处理Mybatis在Mapper.xml文件中的转义字符,...
因此,开发者在插入用户输入的数据到网页时,应确保对特殊字符进行转义处理,以保障网站的安全性。 总的来说,了解和掌握HTML转义字符、JavaScript转义符以及相关的字符对照表,是成为合格的前端开发者的基本技能。...
### 关于附件上传文件名包含特殊字符的问题解决办法 #### 背景介绍 在互联网应用开发中,经常需要处理用户上传的附件。这些附件可能包括文档、图片、视频等多种类型。然而,在实际操作过程中,可能会遇到一个常见...
在这个例子中,`userInput` 是用户提供的字符串,`escape-string-regexp` 会确保其中的特殊字符被转义,然后我们就可以用 `regex` 对字符串进行匹配操作。 除了基础的转义功能,`escape-string-regexp` 还可能提供...
处理特殊字符、特殊表情转义的工具类,用于对字符串类型的数据处理,避免编码格式的错误。
然而,在实际应用过程中可能会遇到一些问题,比如某些特殊字符(如HTML标签、Unicode字符等)会被自动转换为Unicode转义字符,这在一定程度上可能会影响到数据的正确性和可读性。本文将围绕“gson转义字符”这一主题...
在C#中,这些转义序列主要用于字符串和字符常量中,使得开发者可以方便地插入这些特殊字符。 #### 转义序列列表 以下是C#中常见的转义字符: - `\a`:警报(ANSI C) - `\b`:退格 - `\f`:换页 - `\n`:换行 - `\...
在SQL(结构化查询语言)中,转义字符是一个关键概念,它允许用户在字符串中插入特殊字符,如单引号、百分号和下划线,这些字符在SQL语句中通常具有特定含义。转义字符使得这些特殊字符能够被当作普通文本处理,而...
通过对ibatis框架下SQL语句中特殊字符处理方法的详细分析,我们可以看到,合理地使用字符串转义处理结合动态SQL标签,可以有效地解决特殊字符带来的问题。这样不仅可以保证查询的准确性,还可以提高代码的健壮性和...
但是,在使用 AJAX 技术时,需要对特殊符号进行转义,以避免数据传输过程中的错误。 LotusScript 是一种基于 Visual Basic 语言的脚本语言,用于开发 Lotus Domino 应用程序。在 LotusScript 中,可以使用 Select ...