加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

JSP用户 IP地址自定义标签的获得方式

发布时间:2023-06-26 14:31:57 所属栏目:教程 来源:
导读:相信很多人都会好奇JSP自定义标签获取用户IP地址的方法是什么,本文主要是为大家介绍JSP自定义标签如何获取用户IP地址的内容,感兴趣的朋友们一起来看看吧。

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

复制代码
相信很多人都会好奇JSP自定义标签获取用户IP地址的方法是什么,本文主要是为大家介绍JSP自定义标签如何获取用户IP地址的内容,感兴趣的朋友们一起来看看吧。
 
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文件中对标签处理器进行描述
 
复制代码 代码如下:
 
<?xml version="1.0" encoding="UTF-8" ?>

<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
 
    version="2.0">
 
    <description>A tag library exercising SimpleTag handlers.</description>
 
    <tlib-version>1.0</tlib-version>
 
    <short-name>SimpleTagLibrary</short-name>
 
    <uri>/itcast</uri>

    <tag>
 
        <name>viewIP</name>  <!-- 为标签处理器类配一个标签名 -->
 
        <tag-class>cn.itcast.web.tag.ViewIPTag</tag-class>
 
        <body-content>empty</body-content>
 
    </tag>
 
</taglib>

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

复制代码 代码如下:
 
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 
<%@taglib uri="/itcast" prefix="itcast" %>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 
<html>
 
  <head>
 
    <title>输出客户机的IP</title>
 
  </head>
 
  <body>
 
     您的IP是:<itcast:viewIP/>
 
  </body>
 
</html>
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!