web
起一个好听的名字
学无止境,学海无涯,乐在其中
展开
-
什么是跨域?怎么解决跨域问题?
跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器施加的安全限制。所谓同源是指,域名,协议,端口均相同,不明白没关系,举个栗子:http://www.123.com/index.html 调用 http://www.123.com/server.php (非跨域)http://www.123.com/index.html 调用 http://www.456.com/s...转载 2018-02-28 12:55:53 · 1247 阅读 · 0 评论 -
HttpServletResponse进一步学习
创建响应正文:•getOutputStream与getWriter方法•与getWriter方法相关的一些小疑问•输出缓冲区 •实现动态文件内容的下载•图像访问计数器 getOutputStream与getWriter方法:•getOutputStream方法用于返回Servlet引擎创建的字节输出流对象,Servlet程序可以按字节形式输出响应转载 2016-09-07 18:11:14 · 1077 阅读 · 0 评论 -
HTTP协议之multipart/form-data请求分析
首先来了解什么是multipart/form-data请求:根据http/1.1 rfc 2616的协议规定,我们的请求方式只有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE等,那为为何我们还会有multipart/form-data请求之说呢?这就要从头来说了。http协议大家都知道是规定了以ASCII码传输,建立在tcp、ip协议之上的应用层规转载 2016-08-24 09:43:34 · 810 阅读 · 0 评论 -
header中Content-Disposition的作用
今天查看Struts2的文件上传部分 发现有个例子开头打印的信息中有Content-Disposition,一时好奇,所以了解了一下。顺便学习一下文件上传所需要的注意事项。 Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。当 Internet Explorer 接收到头时,它会激活文件下载对话框,它的文件名框转载 2016-09-02 10:19:25 · 10507 阅读 · 0 评论 -
javaweb中使用百度、谷歌地图进行定位
之前给一个公司做了一个定位,调用一个接口获得经纬度,然后在地图上显示,之前我做了三种显示,百度、谷歌、搜狗,搜狗和百度类似,这里就介绍百度和谷歌了,之前我们在一个城市里面坐了测试,不一定很准确,但是比较出来的结果是就定位来说 谷歌是比百度要精准的,包括一些位置的信息,都比较全,但是因为谷歌在中国的处境来说,现在很多机房的服务器都把谷歌给禁用了,根据情况来看吧! 第一种转载 2016-07-28 11:09:18 · 1054 阅读 · 0 评论 -
HTTP协议详解
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HT转载 2016-06-27 11:42:23 · 201 阅读 · 0 评论 -
JavaWeb 服务启动时,在后台启动加载一个线程。
JavaWeb 服务启动时,在后台启动加载一个线程。 目前,我所掌握的一共有两种方法,第一种是监听(Listener),第二种是配置随项目启动而启动的Servlet。 下面对这两种方法做一简单的介绍,(Mark一下,防止以后急用又忘记了): 监听(Listener) 首先,我们创建一个监听的类,继承ServletContextListener,如下: 源码复制打印转载 2016-06-24 11:46:21 · 339 阅读 · 0 评论 -
${pageContext.request.contextPath}的作用
${pageContext.request.contextPath}等价于 或者可以说是>的EL版 意思就是取出部署的应用程序名或者是当前的项目名称比如我的项目名称是ajax01 在浏览器中输入为http://localhost:8080/ajax01/login.jsp ${pageContext.request.contextPath}或取出来的就是/ajax01,而"/"代表的含义就转载 2016-02-24 17:56:53 · 305 阅读 · 0 评论 -
java基础学习总结——GUI编程(二)
一、事件监听 测试代码一: 1 package cn.javastudy.summary; 2 3 import java.awt.*; 4 import java.awt.event.*; 5 6 public class TestActionEvent { 7 public static void main(String args[]) {转载 2016-01-18 20:56:36 · 468 阅读 · 0 评论 -
java 实现文件的下载功能
我们就直接切入主题啦,文件下载只需要四步:1.设置文件ContentType类型2.设置文件头3.通过response获取ServletOutputStream对象(out)4.写到输出流(out)中//文件下载public String download() throws Exception { HttpServletRequest request =原创 2016-02-24 15:37:18 · 492 阅读 · 0 评论 -
request.getRealPath()详解
有关Linux下request.getRealPath("/")获取路径的问题request.getRealPath("/") 在window获取的是服务器的根目录,结尾包含分隔符,如E:\apache-tomcat-6.0.29-bak\apache-tomcat-6.0.29\apache-tomcat-6.0.29\webapps\test\在Linux下获取的不含分隔符,如转载 2016-03-29 16:05:03 · 3144 阅读 · 0 评论 -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener转载 2016-01-13 16:14:39 · 256 阅读 · 0 评论 -
javaweb学习总结(三十一)——国际化(i18n)
一、国际化开发概述 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的、符合来访者阅读习惯的页面或数据。 国际化(internationalization)又称为 i18n(读法为i 18 n,据说是因为internationalization(国际化)这个单词从i到n之间有18个英文字母,i18n的名字由此而来)二、转载 2016-01-18 20:54:30 · 311 阅读 · 0 评论 -
JavaWeb学习总结(五十三)——Web应用中使用JavaMail发送邮件
现在很多的网站都提供有用户注册功能, 通常我们注册成功之后就会收到一封来自注册网站的邮件。邮件里面的内容可能包含了我们的注册的用户名和密码以及一个激活账户的超链接等信息。今天我们也来实现一个这样的功能,用户注册成功之后,就将用户的注册信息以Email的形式发送到用户的注册邮箱当中,实现发送邮件功能就得借助于JavaMail了。一、搭建开发环境1.1、创建Web项目转载 2016-01-18 20:53:33 · 658 阅读 · 0 评论 -
JavaWeb学习总结(五十二)——使用JavaMail创建邮件和发送邮件
一、RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔。 邮件头包含的内容有:from字段 --用于指明发件人to字段 --用于指明收件人subject字段 --用于说明邮件主题cc字段 -- 抄送,将邮件发送给收件人的同时抄送给另一个转载 2016-01-18 20:52:52 · 362 阅读 · 0 评论 -
Servlet详解
Servlet详解-转Servlet第一天 2007年6月21日 一、简述 1、Servlet,服务器端的小程序,它是相对于Applet而言的,Applet是客户端小程序。 Servlet,是接受来自网络的请求(form表单,以及其他的请求),并对不同请求作出不同的响应 Servlet,是基转载 2016-03-28 15:22:59 · 417 阅读 · 0 评论 -
request.getRequestURI()、getRequestURL()、getContextPath()、getServletPath()区别
request.getRequestURI() 、request.getRequestURL()、request.getContextPath()、request.getServletPath()区别request.getRequestURI() /jqueryWeb/resources/request.jsprequest.getRequestURL() http://localhost转载 2016-10-27 17:26:19 · 627 阅读 · 0 评论 -
java 下载文件名乱码问题
String UserAgent = request.getHeader("USER-AGENT").toLowerCase();if (UserAgent != null) { if (UserAgent.indexOf("mise") > -1){ //IE浏览器 response.setHeader("Content-disposition", "attach原创 2017-12-12 09:25:34 · 590 阅读 · 0 评论 -
从session到token
上班的时候偶尔有些HTTP的请求发到我这里, 我简单的看一下, 取出相对应的html文档,图片,发回去就可以了, 然后就可以继续喝茶聊天。我的创造者们对我很好, 他们制定的一个简单HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求, 每个请求对我来说都是全新的!邮件服务器很羡慕我, 他说:老弟,你的生活太惬意了, 哪像我, 每次有人从客户端访转载 2017-11-08 18:15:42 · 311 阅读 · 0 评论 -
Servlet的线程安全问题
Servlet容器默认采用单实例多线程的方式来处理请求,这样减少产生Servlet实例的开销,提升了对请求的响应时间Servlet 体系结构是建立在Java多线程机制之上的,它的生命周期是由Web容器负责的。当客户端第一次请求某个Servlet时,Servlet容器将会根据 web.xml配置文件实例化这个Servlet类。当有新的客户端请求该Servlet时,一般不会再实例化该Servl转载 2017-08-04 13:57:05 · 160 阅读 · 0 评论 -
Servlet容器与Web容器
Servlet规范定义了一个API标准,这一标准的实现通常称为Servlet容器,比如开源的Tomcat、JBoss。web容器更准确的说应该叫web服务器,它是来管理和部署 web应用的。还有一种服务器叫做应用服务器,它的功能比web服务器要强大的多,因为它可以部署EJB应用,可以实现容器管理的事务,一般的应用服务器 有weblogic和websphere等,它们都是商业服务器,功能强大但都是收转载 2017-08-04 10:45:06 · 189 阅读 · 0 评论 -
Request获取用户真实IP
在Servlet里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid,Nginx等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,例如将http://192.168.101.88:80/ 的URL反向代理为http://pay.kedou.com/ 的URL时,用requ转载 2017-08-03 17:16:26 · 239 阅读 · 0 评论 -
Tomcat default servlet 的url-pattern
当一个请求发送到servlet容器的时候,容器先会将请求的url减去当前应用上下文的路径作为 servlet的映射url,比如我访问的是http://localhost/test/aaa.html,我的应用上下文是test,容器会将 http://localhost /test去掉,剩下的/aaa.html部分拿来做servlet的映射匹配。这个映射匹配过程是有顺序的,而且当有一个servlet匹转载 2017-04-06 13:57:27 · 416 阅读 · 0 评论 -
session超时跳出iframe并跳到登陆页面
在网页编程时,我们经常需要处理,当session过期时,我们要跳到登陆页面让用户登陆,由于我们可能用到IFrame框架,所以我们我登陆页面需要显示在整个页面,而不是一个IFrame中,大部分的网友是用下面的代码进行实现的。 在过滤器中写如下代码:[java] view plain copy print?printWriter out = re转载 2017-03-24 09:14:11 · 6135 阅读 · 1 评论 -
javaweb实现一个账号只能同时被一个人使用(Java实现)
大家在登陆qq的时候,电脑上登陆了qq,如果另一台机器上也登陆该qq账号,那么之前的qq账号会被挤下去。我们现在用web的方式来做一个非常简单的演示。先简单的说一下功能吧,用户只有一个User,这个entity设置成账号为hello,密码world这样做为了简化不到数据库里面去查用户的账号信息。首先,我们看一看我们的web.xml[html] v转载 2017-03-28 22:33:54 · 20255 阅读 · 7 评论 -
如何实现无刷新安全图片上传功能
有时候我们想通过表单的方式收集用户的数据,例如,想收集用户在使用系统的过程中遇到的故障,我们可能需要提供一个表单让用户填写故障模块并附上截图。这时候,我们可能面对的是匿名的用户,即用户无需任何权限就能够提交表单,这就不得不考虑安全性的问题。例如,要检查用户提交的内容中是否包含恶意代码,防范SQL注入、XSS攻击等行为,另外,还要对用户的访问行为进行控制,例如是否频繁提交和刷新。(当然,授权用户也要转载 2017-01-18 09:28:05 · 791 阅读 · 0 评论 -
java 重定向和转发的区别
response.sendredirect("http://www.foo.com/path/error.html");重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过程。 与之相反,重定向方式的含义是第一个页面通知浏览器发送一个新的页面请求。因为,当你使用重定向时,浏览器中所显示的URL会变成新转载 2017-01-09 09:25:40 · 199 阅读 · 0 评论 -
JavaWeb 服务启动时,在后台启动加载一个线程。
JavaWeb 服务启动时,在后台启动加载一个线程。目前,我所掌握的一共有两种方法,第一种是监听(Listener),第二种是配置随项目启动而启动的Servlet。下面对这两种方法做一简单的介绍,(Mark一下,防止以后急用又忘记了):监听(Listener)首先,我们创建一个监听的类,继承ServletContextListener,如下:[java] vie转载 2017-01-06 11:33:28 · 277 阅读 · 0 评论 -
jetty中使用jsp el表达式问题
org.apache.jasper.JasperException: /Home/MdAAO/Moures.jsp(48,16) PWC6038JAVA_SAE_Fatal_error: org.apache.jasper.JasperException: /Home/MdAAO/Moures.jsp(48,16) PWC6038: "${(empty lists.studyTim原创 2016-11-02 13:51:22 · 1519 阅读 · 0 评论 -
request.getParameter()、request.getInputStream()和request.getReader()
这是一个异常引发的故事:需要实现一个手机客户端行为分析的需求,手机客户端需要上传一些数据文件。手机客户端通过http协议post方式上传数据文件的时候,我们发现在服务器端无法通过request.getInputStream()获取到相应的数据,调用request.getInputStream()读取数据里头啥都木有。经过各种尝试我们注意到如下的情况:1.在不做任转载 2016-11-10 11:12:06 · 463 阅读 · 0 评论 -
JavaWeb请求-响应学习笔记
先来看一个流程图: 服务器处理请求的流程: (1)服务器每次收到请求时,都会为这个请求开辟一个新的线程。 (2)服务器会把客户端的请求数据封装到request对象中,request就是请求数据的载体! (3)服务器还会创建response对象,这个对象与客户端连接在一起,它可以用来向客户端发送响应。 由流程图可以看出,在转载 2016-10-28 09:23:50 · 321 阅读 · 0 评论 -
JavaWeb学习总结(五十一)——邮件的发送与接收原理
一、 邮件开发涉及到的一些基本概念1.1、邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器。例如现在Internet很多提供邮件服务的厂商:sina、sohu、163等等他们都有自己的邮件服务器。 这些邮件服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中。 电子邮箱(E转载 2016-01-18 20:52:03 · 1148 阅读 · 0 评论 -
JavaWeb学习总结(四十九)——简单模拟Sping MVC
在Spring MVC中,将一个普通的java类标注上Controller注解之后,再将类中的方法使用RequestMapping注解标注,那么这个普通的java类就够处理Web请求,示例代码如下: 1 /** 2 * 使用Controller注解标注LoginUI类 3 */ 4 @Controller 5 public class LoginUI { 6转载 2016-01-18 20:51:15 · 245 阅读 · 0 评论 -
JavaWeb学习总结(四十八)——模拟Servlet3.0使用注解的方式配置Servlet
一、Servlet的传统配置方式 在JavaWeb开发中, 每次编写一个Servlet都需要在web.xml文件中进行配置,如下所示:1 servlet>2 servlet-name>ActionServletservlet-name>3 servlet-class>me.gacl.web.controller.ActionServletservlet-c转载 2016-01-18 20:50:15 · 325 阅读 · 0 评论 -
JavaWeb学习总结(十三)——使用Session防止表单重复提交
在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发中必须防止表单重复提交。一、表单重复提交的常见应用场景有如下的form.jsp页面 1 @ page language="java" import="java.util.*" pageEncoding="UTF-8"%>转载 2016-01-18 20:34:44 · 202 阅读 · 0 评论 -
JavaWeb学习总结(十二)——Session
一、Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,当用户使用浏览器访问其它程序时,其它程序可以从用户的session中取出该用户的数据,为用户服务。二、Session和Coo转载 2016-01-18 20:33:31 · 258 阅读 · 0 评论 -
javaweb学习总结(十一)——使用Cookie进行会话管理
一、会话的概念 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。 有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学曾经来过,这称之为有状态会话。二、会话过程中要解决的一些问题? 每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些转载 2016-01-18 20:32:43 · 304 阅读 · 0 评论 -
javaweb学习总结(十)——HttpServletRequest对象(一)
一、HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息。二、Request常用方法2.1、获得客户机信息 getRequestURL方法返回客户端发出请求时的完整URL。转载 2016-01-18 20:31:53 · 241 阅读 · 0 评论 -
javaweb学习总结(九)—— 通过Servlet生成验证码图片
一、BufferedImage类介绍生成验证码图片主要用到了一个BufferedImage类,如下:创建一个DrawImage Servlet,用来生成验证码图片 1 package gacl.response.study; 2 import java.awt.Color; 3 import java.awt.Font; 4 import java转载 2016-01-18 20:29:27 · 368 阅读 · 0 评论 -
javaweb学习总结(八)——HttpServletResponse对象(二)
一、HttpServletResponse常见应用——生成验证码1.1、生成随机图片用作验证码 生成图片主要用到了一个BufferedImage类, 生成随机图片范例: 1 package gacl.response.study; 2 3 import java.awt.Color; 4 import java.awt.Font; 5 im转载 2016-01-18 20:28:42 · 207 阅读 · 0 评论