当前位置:  编程技术>java/j2ee

JSP自定义标签获取用户IP地址的方法

    来源: 互联网  发布时间:2014-10-18

    本文导语:  1、编写一个实现tag接口的标签处理器类 代码如下:package cn.itcast.web.tag; import java.io.IOException; import javax.servlet.http.HttpServletRequest;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.PageContext;import javax.servlet....

1、编写一个实现tag接口的标签处理器类

代码如下:

package cn.itcast.web.tag;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.Tag;

public class ViewIPTag implements Tag {

    private PageContext pageContext;

    public int doStartTag() throws JspException {

        HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();//获取页面Servlet中 request 和out 对象
        JspWriter out = pageContext.getOut();

        String ip = request.getRemoteAddr(); //获取用户IP地址
        try {
            out.write(ip);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

        return 0;
    }

    public int doEndTag() throws JspException {
        return 0;
    }
    public Tag getParent() {
        return null;
    }
    public void release() {
    }
    public void setPageContext(PageContext arg0) {
        this.pageContext = arg0;//PageContext获取用户request out 等对象
    }
    public void setParent(Tag arg0) {
    }
}


2、在web-inf/目录下新建tld文件,在tld文件中对标签处理器进行描述

代码如下:



    A tag library exercising SimpleTag handlers.
    1.0
    SimpleTagLibrary
    /itcast

   
   
        viewIP 
        cn.itcast.web.tag.ViewIPTag
        empty
   

3、在jsp页面中导入并使用自定义标签

代码如下:





 
    输出客户机的IP
 

 
     您的IP是:
 


    
 
 

您可能感兴趣的文章:

  • 关于获取在jsp上获取客户端时间的问题
  • JSP中如何获取屏幕分辨率?
  • type="file"如何用jsp获取?
  • 菜鸟问题:如何让jsp来获取与之关联的java 数据(赚分了)
  • JSP 获取Spring 注入对象示例
  • 怎样在jsp或servlet中获取服务器端的物理路径????
  • jsp页面获取服务器时间的简单调用示例
  • 请问在JSP中,如何获取当前时间呀?小弟是新人,请老大门多指点
  • 关于JSP中获取输入流的问题,急呀,一定给分!
  • jsp获取action传来的session和session清空以及判断
  • jsp中获取时间?
  • jsp源码实例3(获取jsp各种参数)
  • JSP 获取真实IP地址的代码
  • JSP中获取ExtJS.Ajax前台传递的JSON数据实现过程
  • jsp 获取客户端的浏览器和操作系统信息
  • <FORM METHOD="POST" ACTION="upload.jsp" onsubmit="return mysub();" name="myform" ENCTYPE="multipart/form-data">如何获取text参数?
  • jsp中获取状态怎么写(两种实现方式)
  • Java从服务器上获取时间动态显示在jsp页面实现思路
  • jsp源码实例2(获取表单参数)
  • 获取jsp各种参数
  • 有谁说说jsp中的变量与函数定义
  • 关于bean和jsp预定义中的小问题
  • jsp中怎样定义全局变量
  • 在写自定义标签时,如何得到引用当前标签的jsp文件名呢?
  • JSP页面中能定义文件输出流变量吗?
  • JSP教程(三)--JSP中”预定义变量”的使用
  • 请问在jsp中是不是不允许有自定义的函数呀?
  • 请问JSP中如何调用自己定义的类包?谢谢!
  • 高分求助关于jsp自定义函数的问题
  • 在JSP中多维数组如何定义,初始化?救命呀!
  • JSP怎么定义日期变量并赋值
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 使用JSP扩展标签,可否从标签内得到一个输出参数?
  • JSP表格标签库 WebJMX
  • 请高手指点,怎样学习JSP标签库,一定给分,不够在加!
  • JSP标签库 Coldtags
  • JSP 标签库集合 Taglibs
  • Google地图JSP标签库
  • JSP 标准标签库 JSTL
  • JSP标签 Noka Tag
  • JSP标签库 AjaxTags
  • JSP加密标签库 JCE taglib
  • 如何在html标签的属性里引用一个jsp变量
  • jsp 常用标签的使用
  • 简单!如果网页的内容为HTML标签和JAVASCRIPT代码,那应该将该文件保存为.jsp还是
  • JSP分页标签库 Pager Tag Library
  • JSP分页标签库 Pager-taglib
  • 在编译使用扩展标签的java文件时,得到package javax.servlet.jsp does not exist,package javax.servlet.jsp does not exist的错误
  • JSP表格标签库 eXtremeTable
  • jsp页面中如何将时间戳字符串格式化为时间标签
  • (在线)高分求解:Jdk1.3找不到javax.servlet.jsp.*包,编译不了标签库文件。
  • ExtJS的JSP标签库 ExtTag
  • JSP中清空cookie代码参考
  • 现有1.jsp、2.jsp、3.jsp三个文件,我怎么在3.jsp文件中得到1.jsp中输入的值?
  • 一个框界网爷包含上下两个网页a1.jsp和a2.jsp,怎么实现a1.jsp自身不变且提交数据到下面的a2.jsp呢?不胜感激,急..
  • 请问jsp和serlet之间怎么通讯,jsp和jsp之间呢?
  • 请问<%@include file="abc.jsp"%>与<jsp:include page="abc.jsp"/>之间的差别
  • response.sendRedirect("index.jsp") 和 <jsp:forward page="index.jsp"/>的区别?
  • 想把一个jsp转到另一个jsp页面,要穿参数,中文的(jsp变量)。谁教教我?!
  • aaa.jsp有如下链接,当单击该链接时将id值传递给bbb.jsp,怎样在bbb.jsp中引用这个id值?
  • jsp+bean还是jsp+ejb还是jsp+servlet还是asp+activex好?
  • 谁能告诉我,怎么调试jsp程序呀!我在jsp中调用java,但是Tomcat这家伙只会给我报jsp文件出错。这可怎么办呀?
  • jsp中如何获得当前jsp文件所在的目录,用request.getServletPath()得到的路径含有jsp文件名,有没有办法得到目录(不含文件名)?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3