基于java Servlet编码/异常处理(详解)
1. Servlet输出中文
(1)为什么会有乱码?
out.println方法在输出时或者表单提交的时候,浏览器会对表单中的中文参数值进行编码;
注:会使用表单所在的页面打开时使用的编码方式进行编码服务器端默认会使用ISO-8859-1进行解码所以会产生乱码
(2)如何解决?
1)post请求:requset.setcharcterencoding(string charset);添加到所有获取参数前并且该方法只支持post方法
2)get请求:修改服务器设置
2. 读取请求参数值
(1)String request.getParameter(String paramName)
a. 如果请求参数名写错,会获得null值。
b. 对于表单(文本输入框),如果什么都不填写,会获得""。
(2)String[] request.getParameterValues(String paramName)
a.当有多个请求参数名相同时,应该用该方法。
b.对于多选框,如果一个都不选择,会获得null值。
设置输出编码方式arg1.setContentType("text/html;charset=utf-8");
作用
1)设置返回给浏览器的数据(mime)类型;告诉服务器返回的数据类型和编码
2)设置out.print方法输出时使用什么字符集编码
异常处理:step1.记日志(保留现场)
step2.查看异常是否能够立即恢复,如果不能够恢复(比如数据库服务停止,网络中断,这样的异常我们可以称之为系统异常),提示用户稍后重试(我们要用一个运维祭天),如果能够恢复时立即恢复。
以上这篇基于java Servlet编码/异常处理(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
浅析Java Web错误/异常处理页面
发生服务器 500 异常,如果默认方式处理,则是将异常捕获之后跳到 Tomcat 缺省的异常页面,如下图所示. 不论哪个网站都是一样的,所以为了满足自定义的需要,Tomcat 也允许自定义样式的.也就是在 web.xml 文件中配置: <error-page> <error-code>500</error-code> <location>/error.jsp</location> </error-page> 首先说说自带的逻辑.如果某
-
java中Servlet处理乱码的方法
今天在部署一个webservices程序的时候,从页面获取数据的servlet出现了乱码问题,在servlet中我已经把request.setCharacterEncoding("GB2312");这段文字加入到代码中去,但是还是出现乱麻问题. 到网上找资料,如下:JAVA是Unicode编码,你先转换成ISO8859-1,然后再转换成GBK或是GB2312. java 代码 复制代码 代码如下: request.setCharacterEncoding("ISO8859-1
-
Java一些常见的出错异常处理方法总结
一些平时常见的错误及解决办法,我 是新手,每次遇到的错误都记录了下来. 1. 404错误 description The requested resource (/Struts2_0100_Introduction/hello.action) is not available. 先检查Manager Deployments,使之能打开(出现NullPointerException不能打开),主要是服务器在每次允许前备份,再修改了错误后不能及时更正.(如果是勾选的Backup,要改成delete)
-
基于java Servlet编码/异常处理(详解)
1. Servlet输出中文 (1)为什么会有乱码? out.println方法在输出时或者表单提交的时候,浏览器会对表单中的中文参数值进行编码; 注:会使用表单所在的页面打开时使用的编码方式进行编码服务器端默认会使用ISO-8859-1进行解码所以会产生乱码 (2)如何解决? 1)post请求:requset.setcharcterencoding(string charset);添加到所有获取参数前并且该方法只支持post方法 2)get请求:修改服务器设置 2. 读取请求参数值 (1)St
-
基于java URL和URLConnection(详解)
URL类将URL地址封装成对象,提供了解析URL地址的方法,如获取uri部分.host部分.端口等. URLConnection则是URL对象和Socket连接给结合起来了,使得可以更轻松地获取发起URL请求的连接套接字. 1.URL import java.net.MalformedURLException; import java.net.URL; public class URLDemo { public static void main(String[] args) throws Mal
-
Java字符串编码知识点详解介绍
在 Java 中,当我们处理String时,有时需要将字符串编码为特定字符集.编码是一种将数据从一种格式转换为另一种格式的方法.字符串对象使用 UTF-16 编码.UTF-16 的问题在于它不能被修改.只有一种方法可以用来获得不同的编码,即 byte[] 数组.如果我们得到意外的数据,编码的方式是不合适的.在本节中,我们将学习如何在Java中对字符串进行编码. 在继续本节之前,我们必须了解字符编码.让我们快速浏览一下.让我们了解为什么我们需要对字符串进行编码. 字符编码是一种将文本数据转换为二进
-
基于java的opencv开发过程详解
1.下载安装OpenCV https://opencv.org/releases/ 选择合适的平台安装包下载,然后双击安装,也就是解压的过程.这里主要记录windows下的环境搭建,opencv-342版本. 2.找到jar包 1)在-\opencv\build\java路径下能找到opencv-xx.jar 2)idea 新建工程,在Project Structure -> modules -> dependencies中添加jars or derectories 选择1)的jar包 3)运
-
深入Ajax代理的Java Servlet的实现详解
代码如下所示: 复制代码 代码如下: import java.io.IOException;import java.io.InputStream;import java.net.URL;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;impor
-
基于Java回顾之多线程详解
线程是操作系统运行的基本单位,它被封装在进程中,一个进程可以包含多个线程.即使我们不手动创造线程,进程也会有一个默认的线程在运行. 对于JVM来说,当我们编写一个单线程的程序去运行时,JVM中也是有至少两个线程在运行,一个是我们创建的程序,一个是垃圾回收. 线程基本信息 我们可以通过Thread.currentThread()方法获取当前线程的一些信息,并对其进行修改. 我们来看以下代码: 复制代码 代码如下: 查看并修改当前线程的属性 String name = Thread.currentT
-
基于java servlet过滤器和监听器(详解)
1 过滤器 1.过滤器是什么? servlet规范当中定义的一种特殊的组件,用于拦截容器的调用. 注:容器收到请求之后,如果有过滤器,会先调用过滤器,然后在调用servlet. 2.如何写一个过滤器? 1.写一个java类,实现Filter接口; 2.在接口方法中实现拦截方法; 3.配置过滤器(web.xml); 3.配置初始化参数 1.配置初始化参数.(init-param) 2.通过filterconfig提供的getinitparamenter方法读取初始化的值. 4.优先级: 当有多个过
-
Java Spring-IOC容器与Bean管理之基于注解的方式案例详解
Spring-IOC容器-Bean管理-基于注解方式 什么是注解? (1)注解是代码特殊标记,格式:@注解名称(属性名称=属性值, 属性名称=属性值-) (2)使用注解,注解作用在类上面,方法上面,属性上面 (3)使用注解目的:简化 xml 配置 Spring 针对 Bean 管理中创建对象提供注解 下面四个注解功能是一样的,都可以用来创建 bean 实例 (1)@Component (2)@Service (3)@Controller (4)@Repository 基于注解方式实现对象创建 ①
-
java基础检查和未检查异常处理详解
程序在运行时如果出错,编译器会抛出异常,异常如果没有被捕捉处理,程序会终止运行.异常分为未检查异常和已检查异常,以下对这两类异常做进一步说明. 检查异常 已检查异常(checked exceptions),编译器强制要求捕获并处理可能发生的异常,不处理就不能通过编译,如:IOException.SQLException以及用户自定义的Exception异常.如下图所示,程序运行时会因为IO等错误导致异常,要求处理异常,需要手动处理关闭释放资源. 继续抛出,通过throws exception抛出
-
java数据结构图论霍夫曼树及其编码示例详解
目录 霍夫曼树 一.基本介绍 二.霍夫曼树几个重要概念和举例说明 构成霍夫曼树的步骤 霍夫曼编码 一.基本介绍 二.原理剖析 注意: 霍夫曼编码压缩文件注意事项 霍夫曼树 一.基本介绍 二.霍夫曼树几个重要概念和举例说明 构成霍夫曼树的步骤 举例:以arr = {1 3 6 7 8 13 29} public class HuffmanTree { public static void main(String[] args) { int[] arr = { 13, 7, 8
随机推荐
- PostgreSQL中常用的时间日期脚本使用教程
- SQL计算timestamp的差值的方法
- 用正则提取全部的匹配结果的代码
- MD和RD命令的使用方法
- Java Swing中的文本区(JTextArea)实现换行保存到文件的几个方法
- JAVAEE中用Session简单实现购物车功能示例代码
- Android编程开发之打开文件的Intent及使用方法
- JavaScript初级教程(第四课)第1/2页
- mysql explain的用法(使用explain优化查询语句)
- 在JS数组特定索引处指定位置插入元素的技巧
- PHP daddslashes 使用方法介绍
- 解析ADT-20问题 android support library
- SQL查询出表、存储过程、触发器的创建时间和最后修改时间示例
- jQuery使用DataTable实现删除数据后重新加载功能
- JQuery 1.4 中的Ajax问题
- JavaScript中的console.assert()函数介绍
- Java利用自定义注解、反射实现简单BaseDao实例
- C#实现协同过滤算法的实例代码
- Java语言描述二叉树的深度和宽度
- AndroidStudio上传本地项目到码云的方法步骤(OSChina)