
Servlet/JSP
零度anngle
情商不是八面玲珑的圆滑,而是德行具足后的虚心、包容和自信;成熟不是单纯到复杂的世故,而是复杂回归简单的超然;觉悟不是对世事的无所谓,而是对无能为力之事的坦然接受;成功不是追求别人眼中的最好,而是把自己能做的事情做得最好。热爱生活,热爱编程,热爱Java,喜欢探索,纸上得来终觉浅,绝知此事要躬行,愿与你一起在技术的海洋中成长!
博客:http://blog.csdn.net/zmx729618
展开
-
Servlet异常处理
当一个servlet抛出一个异常,Web容器中搜索inweb.xml使用与之匹配的抛出的异常类型的异常类型元素的配置。需要使用error-page元素在web.xml中指定的servlet调用若干例外情况或HTTP状态码。web.xml 配置:考虑一下,有一个ErrorHandler的servelt将被调用在有异常或错误出现时。以下将是在web.xml中创建的项。转载 2016-05-13 13:38:56 · 898 阅读 · 0 评论 -
Servlet实现文件上传的几种方法
1. 通过getInputStream()取得上传文件。/** * To change this template, choose Tools | Templates * and open the template in the editor. */package net.individuals.web.servlet;import java.io.DataInputStream;转载 2017-01-12 11:19:28 · 11424 阅读 · 1 评论 -
Sitemesh3 的使用及配置
1、Sitemesh 3 简介Sitemesh 是一个网页布局和修饰的框架,基于 Servlet 中的 Filter,类似于 ASP.NET 中的‘母版页’技术。参考:百度百科,相关类似技术:Apache Tiles。官网:http://wiki.sitemesh.org/wiki/display/sitemesh/Home 。2、Sitemesh 3 下载最新版本转载 2016-10-14 14:52:12 · 1794 阅读 · 0 评论 -
Iframe高度自适应(兼容IE/Firefox、同域/跨域)
在实际的项目进行中,很多地方可能由于历史原因不得不去使用iframe,包括目前正火热的应用开发也是如此。随之而来的就是在实际使用iframe中,会遇到iframe高度的问题,由于被嵌套的页面长度不固定而显示出来的滚动条,不仅影响美观,还会对用户操作带来不便。于是自动调整iframe的高度就成为本文的重点。采用JavaScript来控制iframe元素的高度是iframe高度自适应的转载 2016-05-20 16:33:40 · 635 阅读 · 0 评论 -
自定义jsp标签之: TagSupport与BodyTagSupport的区别
1、 TagSupport与BodyTagSupport的区别 TagSupport与BodyTagSupport的区别主要是标签处理类是否需要与标签体交互,如果不需要交互的就用TagSupport,否则如果需要交互就用BodyTagSupport。 交互就是标签处理类是否要读取标签体的内容和改变标签体返回的内容。 用TagSupport实现的标签,都可以用Bo转载 2016-05-16 15:01:10 · 2360 阅读 · 0 评论 -
JSP自定义标签实例之:BodyTagSupport
当需要处理标签体时,标签处理类应继承BodyTagSupport: 一、需求分析: 数据展示是常有长字符串会影响页面显示效果,需要对其按一定和长度和形式进行省略。来控制显示效果。 二、标签处理类: Java代码 public class StringOmitTag extends BodyTagSupport{ private sta转载 2016-05-16 14:47:16 · 816 阅读 · 0 评论 -
自定义标签TLD文件中,rtexprvalue属性是什么意思
rtexprvalue的全称是 Run-time Expression Value, 它用于表示是否能够利用JSP表白式 上网看了一下,有所收获,总结来说最简单的就是在使用标签时能不能使用表达式来动态指定数据。true是可以,false是不可以。 做个简单例子:定义TLD文件如下:Java代码 selectDet转载 2016-05-16 14:37:25 · 2009 阅读 · 0 评论 -
JSP自定义标签开发
一般情况下开发jsp自定义标签需要引用以下两个包 import javax.servlet.jsp.*;import javax.servlet.jsp.tagext.*; 首先我们需要大致了解开发自定义标签所涉及到的接口与类的层次结构(其中SimpleTag接口与SimpleTagSupport类是JSP2.0中新引入的)。 目转载 2016-05-16 10:58:22 · 585 阅读 · 0 评论 -
HttpServletRequest.getHeader() 详细说明
== JAVA 部分request.getHeader() 详细说明==System.out.println("rotocol: " + request.getProtocol()); System.out.println("Scheme: " + request.getScheme()); System.out.println("Server Name: " + request.ge转载 2016-05-13 17:26:33 · 26394 阅读 · 3 评论 -
jsp下载文件的实现方法及注意事项
jsp中实现文件下载,最简单的方式是在网页上做超级链接,如:点击下载。 但是,这样服务器上的目录资源会直接暴露给最终用户,会给网站带来一些不安全的因素。 因此,可以采用其它方式实现下载,常使用的有以下两种: 1、RequestDispatcher的方式进行; 2、采用文件流输出的方式下载(推荐)。 1、采用RequestDispatcher的方式:转载 2016-05-13 17:21:29 · 7222 阅读 · 1 评论 -
Servlet监听器与Timer定时器配合实现JAVA WEB应用简单自动作业
在web应用中,有时候客户需要一些定时程序,不需要客户自己去操作,而是由应用程序自行触发执行某些操作。这个时候监听与定时器的配合使用就基本可以实现这个需求了。 1.创建一个监听的SERVELET,这个类继承javax.servlet.http.HttpServlet并且实现javax.servlet.ServletContextListener。package com.bndz转载 2016-05-13 16:37:25 · 7328 阅读 · 0 评论 -
从HttpServletRequest获取各种路径总结
关于request.getRealPath() 1、此方法已过时,现在可替换的实现方法有 request.getSession().getServletContext().getRealPath("/") 在Servlet 里用this.getServletContext().getRealPath("/");获得绝对路径。 struts里用thi转载 2016-05-13 15:49:09 · 49546 阅读 · 3 评论 -
web.xml文件中<mime-mapping>配置
项目中发现使用IE9下载文件(doc,docx等)时,浏览器有时直接打开文件显示乱码有时可以下载但下载后是一文件夹是里面一堆以xml文件(微软的office存储文件信息主要以xml文件存储),后来跟踪代码发现后台默认是以text形式输出文件,然后打开web.xml文件发现[html] view plaincopymime-mapping>转载 2016-05-13 15:37:45 · 7515 阅读 · 2 评论 -
Web.xml的<context-param>与<init-param>的使用与区别
web.xml的配置中配置作用:1.启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: 和 2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文. 3.容器将转化为键值对,并交给ServletContext. 4.容器创建中的类实例,即创建监听. 5.在监听原创 2016-05-13 15:19:16 · 1930 阅读 · 0 评论 -
HttpServletRequest getHeader("x-forwarded-for")获取真实客户端IP
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP。转载 2016-05-13 14:52:49 · 1313 阅读 · 0 评论 -
Listener/Filter/Servlet的初始化顺序
Listener、Filter、Servlet都有一个初始化的过程,对应的初始化方法分别为: contextInitialized(ServletContextEvent arg0) init(FilterConfig filterConfig) init(ServletConfig config) 那么,它们转载 2016-05-13 14:39:59 · 2496 阅读 · 0 评论 -
Servlet的生命周期及工作原理
Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。 init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet对象。可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Servlet。无论有多少客户机访问Servlet,都不会重复执行init()。转载 2016-05-13 14:17:59 · 428 阅读 · 0 评论 -
Spring管理Filter和Servlet
在使用spring容器的web应用中,业务对象间的依赖关系都可以用context.xml文件来配置,并且由spring容器来负责依赖对象 的创建。如果要在filter或者servlet中使用spring容器管理业务对象,通常需要使用WebApplicationContextUtils.getRequiredWebApplicationContext(getServletContext()转载 2016-05-13 11:08:49 · 2219 阅读 · 0 评论 -
Servlet 3.0新特性概览与开发详解
1.Servlet、Filter、Listener无需在web.xml中进行配置,可以通过Annotation进行配置;2.模块化编程,即将各个Servlet模块化,将配置文件也分开配置。3.Servlet异步处理,应对复杂业务处理;4.异步Listener,对于异步处理的创建、完成等进行监听;5. 文件上传API简化; tomcat 7.0.X 支持Servlet 3.0转载 2017-01-12 11:44:33 · 485 阅读 · 0 评论