- 浏览: 933296 次
- 性别:
- 来自: 山西
文章分类
最新评论
-
白小默:
你好 可以提供下源码DEMO吗,不知为何,我导出来的excel ...
jxls 使用模板文件导出生成excel -
zkzqzzz:
博主威武!
让微信二维码扫描您的APK -
zkzqzzz:
感谢博主 原来那些类都不是必须的 或者自己写!!博主真棒 ...
抢红包插件实现原理浅析 -
zkzqzzz:
博主 请问你的其他类在哪里呢?
抢红包插件实现原理浅析 -
zkzqzzz:
其他类在哪呢?
抢红包插件实现原理浅析
一、 描述 项目编码一向做为系统设计级别难题,servlet2.4还未实现跨应用服务器编码支持,个应用服务器之间编码存在很大差异,因此导致部署不同应用服务器上会出现不同乱码问题。为了实现开发环境(tomcat)和生产环境(weblogic9.2)编码统一,特此实现WEB.XML配置FILTER过滤编码,经过多次测试,基本实现跨应用服务器编码统一。 二、 配置(工程编码:UTF-8) 1. 个人编码规范 由于一些模块存在GET请求,在处理request.getParameter后出现乱码问题,一般个人实现方式为dwmc = new String(dwmc.getBytes("iso-8859-1"), "gb2312"); 此转码形式只适合一种应用服务器tomcat,为保证生产环境下weblogic能正常编码,需要:完全清理因个人书写而改变编码设置代码。并使用系统编码设置。 2. 系统配置TOMCAT POST:系统web.xml中使用filter进行过滤POST请求,并其自动对其编码转换为utf-8。实现代码为 request.setCharacterEncoding(encod); GET:filter过滤无法为TOMCAT进行GET编码转换,因此需要修改TOMCAT/CONF/ server.xml文件,在项目Connector标签下增加URIEncoding="GB2312"属性。 3. 系统配置WEBLOGIC9.2 POST与GET统一处理方式,使用FILTER进行处理。判断request.getContentType()空的时候则为GET 请求,处理如下: request.setCharacterEncoding(encod_wlc); response.setContentType("application/x-www-form-urlencoded;charset="+ encod_wlc); response.setCharacterEncoding(encod_wlc); encod_wlc:为配置参数,此处:GB2312 POST请求则正常转换成utf-8即可, request.setCharacterEncoding(encod); 三、 web.xml配置 <filter> <filter-name>encodingFilter</filter-name> <filter-class>com.vstsoft.csi.util.SetCharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value>//默认POST编码规则 </init-param> <init-param> <param-name>encoding_wlc</param-name> <param-value>GB2312</param-value>//默认WEBLOGIC下GET编码规则 </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> 四、 JAVA文件 package com.vstsoft.csi.util; 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; public class SetCharacterEncodingFilter implements Filter { protected String encoding = null; protected String encoding_wlc = null; protected FilterConfig filterConfig = null; protected boolean ignore = true; public void destroy() { this.encoding = null; this.encoding_wlc=null; this.filterConfig = null; } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if (ignore || (request.getCharacterEncoding() == null)) { String encod = selectEncoding(request); String encod_wlc = selectEncoding_wlc(request); if (request.getContentType() == null) { request.setCharacterEncoding(encod_wlc); response.setContentType("application/x-www-form-urlencoded; charset="+ encod_wlc); response.setCharacterEncoding(encod_wlc); } else { request.setCharacterEncoding(encod); } encod=null; encod_wlc=null; } chain.doFilter(request, response); } public void init(FilterConfig filterConfig) throws ServletException { this.filterConfig = filterConfig; this.encoding = filterConfig.getInitParameter("encoding"); this.encoding_wlc = filterConfig.getInitParameter("encoding_wlc"); String value = filterConfig.getInitParameter("ignore"); System.out.println("======>编码过滤初始化, 默认POST请求编码: "+this.encoding+", WBL下GET请求编码: "+this.encoding_wlc+"<====="); if (value == null) this.ignore = true; else if (value.equalsIgnoreCase("true")) this.ignore = true; else if (value.equalsIgnoreCase("yes")) this.ignore = true; else this.ignore = false; } protected String selectEncoding(ServletRequest request) { return (this.encoding); } protected String selectEncoding_wlc(ServletRequest request) { return (this.encoding_wlc); } }
发表评论
-
java通过sftp JSch 上传文件下载文件查看文件目录,测试可用
2019-12-19 18:19 887基于maven ... -
服务器之间的 zip 文件定时传送
2019-12-19 10:28 4771、expect 安装 将expect和tcl的软 ... -
Java/web/jsp根据pdf模板生成荣誉证书PDF文件
2019-07-19 14:48 8671.前言 最近博主在 ... -
Java生成荣誉证书PDF文件
2019-07-19 13:08 1284Java生成荣誉证书PD ... -
百度云API刷脸
2019-07-13 11:41 582刷脸登录是基于人工智能、生物识别、3D传感、大数据风控技术, ... -
maven--maven配置多个源文件夹
2019-06-13 21:32 864需求 Maven 为我们提供了一致的项目目录配置(源文件 ... -
绿盟检测出“检测到目标URL存在http host头攻击漏洞”如何解决
2019-06-09 10:00 875绿盟检测出“检测到目标URL存在http host头攻击漏 ... -
Linux安装apache及其简单的反向代理配置
2019-06-07 09:06 563Apache简介 Apache HTTP Se ... -
Linux二进制安装apache2.4.25
2019-06-07 09:06 667Linux二进制安装apache2.4. ... -
weblogic配置https,http自动跳转转https,ssl
2019-05-21 09:44 855最近,公司要求将http ... -
bootstrap-table组合表头
2019-03-06 10:04 855bootstrap-table组合表头 ... -
[Weblogic]如何清理缓存
2019-03-04 15:23 809[Weblogic]如何清理缓存 ... -
Guns第十节Swagger的讲解
2019-01-23 16:51 5462018年08月01日 15:54:30 ze ... -
Anaconda详细安装使用教程
2019-01-22 15:07 570关注微信公众号【Mi ... -
Windows系统下Eclipse上搭建Python开发环境
2019-01-22 15:00 288Windows系统下Eclipse上搭 ... -
Python 3.6 中使用pdfminer解析pdf文件
2019-01-22 14:50 893所使用python环境为最新 ... -
Python提取PDF内容(文本、图像、线条等)
2019-01-22 14:43 7499使用Python抽取PDF文件内 ... -
用python解析pdf中的文本与表格【pdfplumber的安装与使用】
2019-01-22 14:40 1477我们接触到的很多文档资料都是以pdf格式存在的,比如:论文, ... -
java实现PDF转HTML
2019-01-21 10:14 857java实现PDF转HTML 问题场景: ... -
JAVA PDFBOX 读取PDF表格
2019-01-18 17:39 2637最近在帮公司做工具,需要读取PDF中表格的数据。网上查了, ...
相关推荐
对于不同的问题,不同的JDK版本,不同的应用服务器(如Tomcat,Jboss,Weblogic),处理方法都会有一些微小的差异。在这里,主要针对Tomcat中JSP开发容易出现的中文乱码问题进行讨论,一般有以下几种情况:
集成了日志、联接池、性能优化、权限控制、数据展现,常规模块功能(增加、删除、修改、查询、导出、排序)实现,采用JAVA语言编写,可以应用于JBoss,WebLogic,Tomcat ,Resin,WebSphere等多种服务器。 并且在这些...
多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java....
2. 查看linux系统汉字编码 3. 查CPU 4. 修改服务器字符集,支持中文 5. 查内存大小 6. 压缩命令 7. 查看操作系统 8. 查看端口是否被占用 9. 为服务器添加浮动ip 10. 启动ssh 11. 启动、关闭WebLogic 12. 启动、关闭...
WEB服务器:Weblogic、Tomcat、WebSphere、JBoss 等 数据库服务器:Mysql等 操作系统:Windows、Linux、Unix 等 MCMS内容管理系统重要文件说明 数据库连接文件: config.properties 数据库文件:doc/db-mcms-...
9. 熟悉Tomcat等应用服务器的使用,熟悉LINUX操作系统,熟悉TCP/IP、HTTP等网络协议,掌握多线程编程,编写过Socket程序。 10. 熟悉MyEclipse等开发平台和工具。 11. 5年以上JavaEE项目开发经验,熟悉J2EE体系、深入...
77.1. 解决端口冲突导致tomcat无法启动的问题 87 77.2. 修改java虚拟机内存 88 77.3. 修改tomcat连接数 88 77.4. 禁止列出目录下的文件 88 77.5. 设置session失效的时间 89 77.6. 设置MIME响应类型 89 77.7. 设置...
多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang....
WEB服务器:Weblogic、Tomcat、WebSphere、JBoss、Jetty 等 数据库服务器:Mysql5.8 操作系统:Windows、Linux、Unix 等 快速体验 将项目源码通过maven形式导入eclipse; 导入.sql数据文件,注意:数据库使用utf-8...
WEB服务器:Weblogic、Tomcat、WebSphere、JBoss、Jetty 等 数据库服务器:Mysql5.8 快速体验 将shopping-mall项目源码通过maven形式导入IDEA; 导入shop.sql数据文件,注意:数据库使用utf-8编码;
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
2. 我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 30 3. 请问输出什么,为什么? 30 4. 编程题: 写一个Singleton出来。 31 5. 设计4个线程,其中两个线程每次对j...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...
19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 98 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...