重温Servlet学习笔记--编码问题】的更多相关文章

在说编码问题之前,首先先了解一下常见的字符编码: ISO-8859-1:  拉丁编码,不支持中文 gbk,gb2312,gb18030:系统默认编码,是中国的国标码 utf-8: 支持几乎所有语言的编码,一般我们同意用这个 为什么为出现乱码问题呢?我们知道web程序通常就是服务器和客户端之间的通信,服务器的默认编码是ISO,而浏览器的默认编码不太统一,一般浏览器会默认是gbk编码,这样,当传送数据的时候就会很容易出现乱码问题了. 响应(response)编码 服务器发送给客户端数据!响应是由re…
首先要了解cookie必须得先了解http协议,,Cookie是http协议指定的,先由服务器保存cookie到浏览器,在下次浏览器请求服务器时把上次请求得到的cookie归还给服务器,cookie以键值对的形式保存在本地的缓存中. HTTP协议规定: 1个cookie最大4kb 一个服务器最多向一个浏览器保存20个cookie 一个浏览器最多保存300个cookie 注意,不同浏览器还是略有差异,不是所有浏览器都老老实实的遵守这个规定. cookie的用途举例: 服务器使用cookie来跟踪客…
在用户浏览网页时,服务器对于客户端浏览器做出的响应被封装成一个HttpServletResponse对象,要对浏览器操作只需要操作这个response对象即可.response的功能分类及介绍: 响应正文 response是响应对象.向客户端输出响应正文(响应体)可以使用response的响应流,response提供了两个响应流对象: PrintWriter printWriter = response.getWriter();  只能写字符流,如输出text信息 ServletOutputSt…
session的类型是属于HttpSession,HttpSession是由javaWeb提供的,用来会话跟踪的类.session是服务器端对象,保存在服务器端. HttpSession是servlet三大域对象之一,其他两个是request和application(servletContext),所以它也有setAttribute(),getAttribute(),等方法. HttpSession的会话范围是某用户从首次访问服务器开始,到该用户关闭浏览器结束,session对象会存活在这中间的…
request和response是一对搭档,一个负责请求一个负责响应,都是Servlet.service()方法的参数,response的知识点前面梳理过了,这里只说一下request,在客户端发出每个请求时,服务器都会创建一个request对象,把请求的数据封装到request中,然后在调用Servlet.service()中传递进去.我们在创建一个servlet时通常会使用doGet或者doPost方法,并没有看到service()方法,就是因为父类的service方法已经读取到了reque…
一个项目中只有一个ServletContext对象,我们可以在多个servlet中获取这个唯一的对象,使用它可以给多个servlet传递数据,我们通常成servletContext为上下文对象.这个对象在tomcat启动时就创建,在tomcat关闭时才被销毁.有时候我们也把这个对象叫做application. ServletContext对象的作用就是在整个web应用的动态资源之间共享数据,比如在AServlet中向ServletContext中保存一个数据,然后在Bservelt中获取这个数据…
   java web 学习笔记 编码问题总结 1.非form表单中提交的中文参数---------------------------传递给Servlet服务器时,默认以iso-8859-1解码.所以要用iso-8859-1编码,在以utf-8编码 代码示例: String username = request.getParameter("username"); //将jsp页面用UTF-8中文文本,在服务器端默认用ISO-8859-1解码接收,然后在服务器编码用iso-8859…
目录 jsp及servlet学习笔记 JSP(Java Server Page Java服务端网页) 指令和动作: servlet(小服务程序) jsp及servlet学习笔记 JSP(Java Server Page Java服务端网页) 动态网页的动态指的是能与用户进行交互,比如登录时输入正确的用户名和密码,系统会提示登录成功. WEB-INF为java里面的安全目录只能通过服务器来访问,所谓安全即为客户端无法访问,目录下的web.xml项目部署文件,可以设置欢迎页面等等 JSP三大指令元素…
目录 Servlet学习笔记(四) 一.会话技术Cookie.session 1. 什么是会话技术? 2. 会话技术有什么用? 3. Cookie 3.1 什么是Cookie? 3.2 使用Cookie 3.2 可以创建多个Cookie吗? 3.3 Cookie在浏览器保存多久时间? 3.4 Cookie保存中文 3.5 Cookie的不可跨域名性 3.6 修改.删除Cookie的值 3.7 Cookie的共享 3.8 Cookie的安全属性 3.9 Cookie的应用 4.Session 4.…
目录 Servlet学习笔记(三) 一.HTTP协议 1.请求:客户端发送欸服务器端的数据 2.响应:服务器端发送给客户端的数据 3.响应状态码 二.Response对象 1.Response设置响应消息 2.书写路径的注意事项: 3.response对象输出到浏览器乱码? 三.ServletContext对象 1.什么是ServletContext对象? 2.获取ServletContext对象 3.ServletContext对象有什么功能/方法? Servlet学习笔记(三) 一.HTTP…
目录 Servlet学习笔记(二) Request对象 1.request和response对象: 2.request对象继承体系结构: 3.什么是HttpServletRequest ? 4.HttpServletRequest对象的常用方法: 5.Request对象接收的参数是乱码? 6.请求转发: 7. 共享数据 Servlet学习笔记(二) Request对象 1.request和response对象: request和response对象由tomcat服务器来创建的,request将浏…
1.路径引用问题 一个css.jsp.html.或者javascript文件从从一个工程复制到另一工程,如果引用的时候使用的时相对路径,看似没有错误,但是却一直引用不进来,这时候要使用绝对路径,这样才能将原来的工程名改成现在的工程: 2.el处理form表单数据问题 我们常用:    request.getParameter(String name)和    request.getParameterValues(String name) 取得用户在表单中输入的数据,但在EL中可以使用隐含对象pa…
一.response.1.response.characterEncoding和response.setContentType("text/html;charset=UTF-8"),response.setCharacterEncoding是设置服务器端输出的编码,而response.setContentType(),既指定了 服务器端的编码,又指定了浏览器端的编码.2.常见的方法: response.setStatus(int)://设置状态码,通常需要和响应头一起结合.例如302状…
Servlet 运行在服务器上的 java 类: Servlet 容器为 javaWeb 应用提供运行时环境,负责管理 servlet 和 jsp 生命周期,以及管理他们的共享数据. 现在我们知道了 Servlet 是运行在服务器上的 Java 类,那么什么是服务器?我们平常最常用的服务器都有哪些呢? 服务器是一种被动程序:只有当Internet上运行其他计算机中的浏览器发出的请求时,服务器才会响应: 最常用的Web服务器是Apache和Microsoft的Internet信息服务器. 对于现在…
最近在温习javaweb的相关基础知识,鉴于我弄丢了记满了整整一本的笔记,决定以后把笔记和一些学习上的心得以及碰到的一些问题统统都放在网上,今天看了一下jsp的相关基础,以下是笔记: JSP三大指令: page    ------>最复杂的一个指令,属性很多,常用的像import,language,pageEncoding等等 include-------->静态包含,一般在一个网站不同网页上把相同的元素单独写在一个jsp中,其他页面直接用该命令导入,能大大减少重复代码提高访问速度 tagli…
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神们可以自动过滤掉.下面的步骤有这样的前提:你的eclipse嵌入了TomCat插件(我们会在Eclipse上操作servlet)或者本地主机已经有安装好某一个版本的TomCat,我这里用的是Tomcat7.0.69. 第一步:创建Dynamic Web Project Eclipse下->new->…
笔记六中实现了三种过滤器:字符编码过滤.登录权限过滤.敏感词过滤,可是有个缺陷就是,限定了过滤顺序,而不能实现先进行request过滤.最后response过滤,而且中间几项过滤的顺序不能动态改变.所以这里做个改进.实现一个过滤顺序的FilterChain. 多个Filter的运行顺序在这篇博文中得到非常细致的解说,总结一点.多个过滤器的运行顺序是依据web.xml中不同<filter-mapping>的顺序来先后运行的,比方: <?xml version="1.0"…
HTML(HyperText Markup Language):超文本标记语言 HTTP(HyperText Transfer Protocol):超文本传输协议 URL(Uniform Resource Locator):统一资源定位符,以文字的方式来说明因特网上的资源如何取得. URN(Uniform Resource Name):代表某个资源独一无二的名称,如图书的ISBN. URI(Uniform Resource Identifier):URL和URN是URI的子集. 一个简单的htm…
以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是对el表达式的扩展,是一种标签语言,使用起来比较方便,他不属于jsp内置的标签,使用之前需要导包,以及指定标签库,在Myeclipse中,内置了jstl的jar包,所以不需要导包这个操作. JSTL有四个标签库,常用的只有一个core,其他的几乎不怎么用,使用前首先要导入标签库,代码如下: <%@…
上一篇笔记写的是jsp的三个指令九个内置对象,这篇随笔开始写jsp的动作标签,动作标签是由服务器(Tomcat)来解释执行,与java代码一样,都是在服务器端执行的,jsp动作标签有十几多个,这里只写了比较常用的几个. <jsp:include> 包含:与RequestDispatcher的include方法是一样的,只是一个在jsp中使用,一个在servlet中使用 这个标签一般被叫做动态包含,原因在他在编译时,当前页面jsp与include进来的jsp会生成两个java文件,进而生成两个c…
一.路径问题如果是在浏览器端请求服务器的数据(超链接,js的src),那么加/代表在Tomcat的webapp目录,不加/的话通常不考虑,实际上不加/在浏览器端也是当前项目目录(但是开发中通常必须要写/)如果是在服务器端请求的服务器的数据,那么加/代表在项目的webcontent下面,而不加/是一样的.getServletContext和getClassLoader.getResourceAsStream()的区别.getServletContext寻找的范围要大于getClassLoader.…
Servlet 主要内容: 1)servlet初始化参数与上下文参数 2)过滤器 3)监听器一.servlet初始化参数与上下文参数 1)servlet初始化参数 把某些变量放在web.xml配置,到时无需修改Servlet类 配置: <servlet> <init-param> <param-name>userName</param-name> <param-value>admin</param-value> </init-p…
Servlet主要内容: 1)表单处理 2)乱码问题 3)页面跳转 4)生命周期 一.表单处理 Servlet获取表单数据 request.getParameter():通过表单参数名获取参数值 request.getParameterValues():若相同参数出现多次,如(复选框),可获取多个值 request.getParameterNames():获取所有参数名列表二.乱码问题 1)Post请求后台乱码: request.setCharacterEncoding("UTF-8"…
一.Servlet概述 1.什么是Servlet Servlet是一个运行在服务器端的Java小程序,通过HTTP协议用于接收来自客户端请求,并发出响应. 2.Servlet中的方法 public void service(ServletRequest req,ServletResponse res) throws ServletException,java.io.IOException ServletRequest req:代表着请求对象,该对象中有HTTP协议的请求部分的所有内容.它的实现类…
 Cookie和HttpSession 什么是会话: 用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些数据,以便为客户提供更多的服务. 例如:用户点击超链接通过一个servlet购买了一个商品,程序应该想办法保存用户购买的商品,以便于用户点结帐servlet时,结帐servlet可以得到用户购买的商品为用户结帐. 思考:用户购买的商品保…
 HttpServletQequest对象的学习 HttpServletRequest HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息.HttpServletRequest的对象时域对象. 常用方法: 获得客户机信息 getRequestURL方法返回客户端发出请求时的完整URL. getRequestURI方法返回请求行中的资源名部分. getQu…
关键代码如下: index.jsp <body> <center> <h3>文件上传</h3> <font color="red"><%=request.getAttribute("msg")==null?"":request.getAttribute("msg") %> </font> <form enctype="multi…
我们常说的JSP有九大内置对象分别为:request.response.session.out.pagecontext.page.exception.application.config. 我们知道,JVM只能识别java类,并不能识别JSP代码,那么这些对象是如何产生的的呢?这就要提到Servlet.Servlet就是用Java编写的服务器端程序.狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类. JSP的本质就是Servlet,…
一.Servlet概述 1.什么是Servlet Servlet是一个运行在服务器端的Java小程序,通过HTTP协议用于接收来自客户端请求,并发出响应. 2.Servlet中的方法 public void service(ServletRequest req,ServletResponse res) throws ServletException,java.io.IOException ServletRequest req:代表着请求对象,该对象中有HTTP协议的请求部分的所有内容.它的实现类…
一.HTTP请求常用方法: Cookie[] getCookies()返回一个数组,包含客户端发送该请求的所有的 Cookie 对象. Enumeration getAttributeNames()返回一个枚举,包含提供给该请求可用的属性名称. HttpSession getSession()返回与该请求关联的当前 session 会话,或者如果请求没有 session 会话,则创建一个. HttpSession getSession(boolean create)返回与该请求关联的当前 Htt…