1.必备的jstl-1.2.jar驱动包
2.获得IP java代码如下:
packagecom.eduask.tag;
importjava.io.IOException;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.jsp.JspException;
importjavax.servlet.jsp.JspWriter;
importjavax.servlet.jsp.PageContext;
importjavax.servlet.jsp.tagext.SimpleTagSupport;
//测试获得IP地址;
publicclassIpextendsSimpleTagSupport {
@Override
publicvoiddoTag()throwsJspException, IOException {
//获取pageContext域对象;
PageContext ctx=(PageContext)this.getJspContext();
//获取request域对象;
HttpServletRequest req=(HttpServletRequest) ctx.getRequest();
//获取IP地址;
String ip=req.getRemoteAddr();
//jsp的输出;
JspWriter out=ctx.getOut();
//输出本机IP地址;
out.write(ip);
}
}
- user.tld配置文件放在WEB-INF中,代码如下:
<tag>
<!--标签的名字 -->
<name>ip</name>
<!--自定义标签类 -->
<tag-class>com.eduask.tag.Ip</tag-class>
<!-- 内容为空 -->
<body-content>empty</body-content>
</tag>
- useTld.jsp放在WebRoot下,代码如下:
<%@ page language="java"contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="u"uri="http://java.sun.com/jsp/jstl/mytld"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
本机的IP是:<u:ip/>
</body>
</html>
4.程序运行如下:
本机的IP是 192.168.1.100