- 浏览: 346167 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (169)
- spring (20)
- java (44)
- ibatis (0)
- hibernate (6)
- struts (2)
- javascript (6)
- ajax (1)
- eclipse (4)
- 其他 (10)
- database (17)
- ibatis 分页 (7)
- xml (2)
- pl/sql (6)
- sql (4)
- apache (3)
- oracle (8)
- jdom (1)
- Open ModelSphere (1)
- 线程 (2)
- 多线程 (2)
- 查找文件 (1)
- Comparator (2)
- jxl (2)
- jquery (1)
- Flex (2)
- 非技术 (1)
- mysql (2)
- zxing (1)
- jdbc (1)
- Java内存 (1)
- editplus (1)
- log4j (1)
- sqlserver (2)
- base64 (1)
- Linux (4)
- Shell (2)
- 非技术共享 (1)
- 省市 (1)
- PowerDesigner (3)
- 观察者模式 (2)
- Servlet (1)
- 单点登录 (1)
- IO (1)
- tomcat (1)
- clob (1)
- html (1)
- jsp (2)
- JNative (1)
- WebService (2)
- Highcharts (1)
- Spring Security (1)
- ztree (1)
- Mongodb (3)
- sftp (1)
- SVN (1)
- openSUSE (1)
- Ubuntu (1)
- nio (1)
- springboot (1)
- java8 (1)
最新评论
-
wajjj:
[flash=200,200][url][img][list] ...
【JAVA】读取excel内容(兼容03和07格式) -
xurichusheng:
jjhe369 写道感谢分享!但是发现一个小问题,就是第13, ...
oracle 存储过程分页查询 -
jjhe369:
感谢分享!但是发现一个小问题,就是第13,14行的V_STAR ...
oracle 存储过程分页查询 -
飞天奔月:
为什么不用 Map<String, String> ...
读取.properties的内容,并将内容放入一个Map中 -
xurichusheng:
814687491 写道测试了一下,无法换行!你可以自定义自己 ...
使用google的zxing制作二维码
使用的是spring的注解
public ModelAndView toOtherDO(){
// public static final String Constants.NO_PERVIEW = "您没有权限访问";
return new ModelAndView(new RedirectView("toErrorPage.do?errInfo="+Constants.NO_PERVIEW));
}
要重定向到的.do如下:
@RequestMapping("/toErrorPage.do")
public ModelAndView toErrorPage(String errInfo){
try{
logger.debug("errInfo="+errInfo);
return new ModelAndView("error","error",errInfo);
}catch(Exception ex){
ex.printStackTrace();
return new ModelAndView("error","error","转码错误");
}
}
logger.debug出来的errInfo是乱码.
下面是解决方法:
自定义一个编码过滤器
package com.common.core;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
public class EncodingFilter extends HttpServlet implements Filter {
/**
*
*/
private static final long serialVersionUID = 9091617359805368168L;
protected String encoding = null;
protected FilterConfig filterConfig = null;
protected boolean ignore = true;
public void destroy() {
this.encoding = null;
this.filterConfig = null;
}
public void setEncoding(String encoding) {
this.encoding = encoding;
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
if (ignore || (request.getCharacterEncoding() == null)) {
String encoding = selectEncoding(request);
if (encoding != null)
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
}
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter("encoding");
String value = filterConfig.getInitParameter("ignore");
if (value == null)
this.ignore = true;
else if (value.equalsIgnoreCase("true"))
this.ignore = true;
else
this.ignore = false;
}
//设计编码方式
public String selectEncoding(ServletRequest request) {
return (this.encoding);
}
}
web.xml
<!-- 自定义编码过滤器 -->
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>
com.common.core.EncodingFilter
</filter-class>
<init-param>
<!-- 参数名 -->
<param-name>encoding</param-name>
<!-- 参数值 -->
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<!-- 表示应用运行时该过滤器会过滤所有的页面 -->
<url-pattern>/*</url-pattern>
</filter-mapping>
public ModelAndView toOtherDO(){
// public static final String Constants.NO_PERVIEW = "您没有权限访问";
return new ModelAndView(new RedirectView("toErrorPage.do?errInfo="+Constants.NO_PERVIEW));
}
要重定向到的.do如下:
@RequestMapping("/toErrorPage.do")
public ModelAndView toErrorPage(String errInfo){
try{
logger.debug("errInfo="+errInfo);
return new ModelAndView("error","error",errInfo);
}catch(Exception ex){
ex.printStackTrace();
return new ModelAndView("error","error","转码错误");
}
}
logger.debug出来的errInfo是乱码.
下面是解决方法:
自定义一个编码过滤器
package com.common.core;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
public class EncodingFilter extends HttpServlet implements Filter {
/**
*
*/
private static final long serialVersionUID = 9091617359805368168L;
protected String encoding = null;
protected FilterConfig filterConfig = null;
protected boolean ignore = true;
public void destroy() {
this.encoding = null;
this.filterConfig = null;
}
public void setEncoding(String encoding) {
this.encoding = encoding;
}
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
if (ignore || (request.getCharacterEncoding() == null)) {
String encoding = selectEncoding(request);
if (encoding != null)
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
}
chain.doFilter(request, response);
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter("encoding");
String value = filterConfig.getInitParameter("ignore");
if (value == null)
this.ignore = true;
else if (value.equalsIgnoreCase("true"))
this.ignore = true;
else
this.ignore = false;
}
//设计编码方式
public String selectEncoding(ServletRequest request) {
return (this.encoding);
}
}
web.xml
<!-- 自定义编码过滤器 -->
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>
com.common.core.EncodingFilter
</filter-class>
<init-param>
<!-- 参数名 -->
<param-name>encoding</param-name>
<!-- 参数值 -->
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<!-- 表示应用运行时该过滤器会过滤所有的页面 -->
<url-pattern>/*</url-pattern>
</filter-mapping>
发表评论
-
spring mvc 定时任务,避免同时执行两次
2019-03-09 18:14 3305spring版本:3.1.0 或以 ... -
Spring jdbcTemplate示例
2015-07-08 15:26 1193Spring jdbcTemplate示例 1. ... -
jsp页面显示二进制图片
2014-11-05 15:58 40861. DAO层 import java.sql.C ... -
Spring工具类,提供取得Spring配置文件中定义的Bean的方法
2014-05-15 19:02 1563在 java EE 工程中,经常会用到定 ... -
使用Spring的JdbcTemplate处理Clob
2013-11-01 11:04 43211. 数据库表 req_seq CREATE TA ... -
oracle 存储过程分页查询
2013-10-24 11:09 1975oracle 10gR2 Spring JDBCTe ... -
Spring MVC 处理请求流程
2011-06-01 15:03 1334Spring MVC 处理请求流程: ... -
在spring中配置ibatis 04_dao类
2011-05-31 14:15 1674BaseDAOImpl<T>.java p ... -
在spring中配置ibatis 03_xml配置
2011-05-31 14:11 1037UserEntity.xml <?xml ver ... -
在spring中配置ibatis 02_xml配置
2011-05-31 14:09 9841、applicationContext-service.xm ... -
在spring中配置ibatis 01_xml配置
2011-05-31 14:01 10781、applicationContext.xml &l ... -
jdbc.properties
2011-05-31 11:37 3810### mysql ### driverClassName ... -
Spring 配置文件--- 事务处理
2011-05-31 11:28 1375事务的处理在service层。 &l ... -
Spring 配置文件--- 数据源配置(c3p0)
2011-05-31 11:24 1251<!-- 数据库连接配置文件 --> & ... -
Spring 配置文件--- 数据源配置(dbcp)
2011-05-31 11:23 1211applicationContext.xml & ... -
spring 定时任务
2011-05-20 14:54 1149import java.util.TimerTask; ... -
另一个 spring 拦截器
2010-07-13 13:48 1583import javax.servlet.http.HttpS ... -
Spring 拦截器
2010-04-27 09:02 59051、在做项目的时候,遇到了一个Spring拦截器的问题。 项目 ... -
一个 Spring 拦截器
2010-04-13 14:40 1619package com.common.core.interce ...
相关推荐
### 传值与乱码处理在JSP中的实践 #### 一、背景介绍 在Web开发过程中,尤其是在处理用户输入的数据时,经常会遇到一个让人头疼的问题——“乱码”。这通常发生在不同编码格式之间转换不当时。对于Java Server ...
本篇将详细介绍如何解决JSP传值过程中出现的中文乱码问题。 首先,我们需要理解乱码产生的原因。在网页中,数据的编码和解码过程需要保持一致。如果服务器和客户端之间使用的字符编码不同,就可能出现乱码。例如,...
**Spring MVC传值详解** Spring MVC是Spring框架的一部分,它是一个模型-视图-控制器(MVC)架构,用于构建Web应用程序。在Spring MVC中,数据传输是开发过程中的关键环节,涉及到请求从客户端(通常是网页)传递到...
本文将深入探讨Freemarker中中文乱码的成因及解决策略。 ### 成因分析 中文乱码问题主要源于编码不一致。在Freemarker中,乱码可能发生在多个环节:模板文件的读取、数据模型的处理以及最终HTML页面的渲染。具体来...
根据题目中的描述,“Spring注解json传值,界面出现中文乱码”,结合给定的部分内容,可以明确几个关键点: 1. **Spring框架使用注解处理JSON数据**:这通常涉及到`@RestController`或`@Controller`配合`@...
Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring...
SpringBoot乱码问题解决方案 SpringBoot框架是一款流行的Java Web开发框架,但是在实际开发中,开发者经常会遇到乱码问题,导致项目无法正常运行。为了解决这个问题,本文将详细介绍SpringBoot乱码问题解决方案,并...
本篇文章将深入探讨如何彻底解决Spring MVC中的中文乱码问题,以便于开发者能够流畅地处理中文数据。 首先,当用户通过表单提交中文参数时,可能会遇到乱码问题。确保JSP页面的编码设置为UTF-8,例如在页面头部添加...
### 解决Struts2.1.6 + Spring + Hibernate 中文乱码问题 在Web开发过程中,特别是使用Java EE框架时,字符编码问题一直是开发者关注的重点之一。对于使用Struts2.1.6、Spring以及Hibernate这三个框架组合的项目而...
总结,解决Spring 3 MVC中GET提交方式乱码问题,主要涉及服务器端的字符编码过滤器配置、Controller方法的参数接收以及前端页面的编码设置。理解HTTP协议和字符编码原理,以及正确配置Spring MVC,将有助于避免此类...
本文将深入探讨JSP乱码的原因及其解决方案,帮助开发者有效地处理这类问题。 ### 1. JSP乱码的成因 - **字符集设置不一致**:JSP文件、HTML页面、HTTP头、Servlet输出以及数据库存储等环节的字符集设置不一致,...
本篇文章将详细介绍如何解决JSP中的中文乱码问题,并通过示例代码进行说明。 1. **设置请求编码**: 在处理HTTP请求时,JSP页面可以通过`request.setCharacterEncoding("UTF-8")`方法来指定请求的字符编码。这是...
本文将深入探讨如何通过JDBC(Java Database Connectivity)连接Oracle远程数据库时,解决中文乱码的困扰。 首先,我们需要理解的是,中文乱码通常源于字符集不一致或配置不当。在Java应用中,数据在JVM(Java...
Spring Cloud则是在Spring Boot基础上构建的服务治理框架,提供了服务发现、负载均衡、熔断器、配置中心等功能,为微服务架构提供了一整套解决方案。 当在IDEA中整合Spring Boot和Spring Cloud时,可能会遇到...
在Java Web开发中,我们经常会遇到各种乱码问题,特别是在使用Hibernate、Struts和Spring等框架时。这些框架处理数据的方式以及与数据库交互的过程都可能导致字符编码不一致,从而引发乱码现象。以下是对这些技术全...
本文将详细探讨如何在Struts2框架中通过JSON传值解决乱码问题的方法,涉及JavaScript编码和Java解码的相关操作技巧。 首先,我们来了解乱码产生的原因。在Web开发中,如果前端和后端没有对字符编码做统一的处理,就...
SpringMVC解决中文乱码问题 SpringMVC 框架中,中文乱码问题是常见的问题之一。解决这个问题的关键是正确地配置字符编码。下面我们将详细介绍 SpringMVC 中解决中文乱码问题的思路和方法。 配置文件中的字符编码 ...
### 如何在Spring中解决中文乱码的方法 #### 背景介绍 在Web开发过程中,中文乱码问题经常困扰开发者。特别是在早期的Java Web框架(例如本案例中提到的Spring 1.2.4、Struts 1.1、Hibernate 3.0.5等)中,这一问题...
本篇文章将详细讲解如何在Spring MVC项目中整合IReport来生成PDF,并解决可能出现的中文不显示和乱码问题。 首先,我们需要了解Spring MVC的基本概念。Spring MVC是Spring框架的一部分,它提供了一个模型-视图-控制...
### MySQL乱码问题解决方案 #### 一、理解MySQL字符集设置的重要性 在处理数据库操作时,字符集(Character Set)的正确配置对于确保数据的准确读取与存储至关重要。特别是对于包含多语言文本的应用场景,如中文、...