`

自定义标签库读取文件

 
阅读更多
jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="http://www.cgmcc.com/jsp/readfile"  prefix="my3"%>

<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
   
    <title>My JSP 'tagreadfile.jsp' starting page</title>
   
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">   
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->

  </head>
 
  <body>
       <my3:readFile file="/WEB-INF/tld/readfile.tld"/>
  </body>
</html>

java
package com.cgm.readFile;

import java.io.IOException;
import java.io.InputStream;
import java.util.Scanner;

import javax.servlet.jsp.JspContext;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.JspFragment;
import javax.servlet.jsp.tagext.JspTag;
import javax.servlet.jsp.tagext.SimpleTag;

public class TagReadFile implements SimpleTag {
private String file;
private PageContext pageContext;

public String getFile() {
return file;
}

public void setFile(String file) {
this.file = file;
}

public void doTag() throws JspException, IOException {  //可以动态生成jsp啊..
    //处理逻辑
       //开始读文件.

System.out.println("-----------------"+file);

   InputStream  in= pageContext.getServletContext().getResourceAsStream(file);
Scanner scanner=new Scanner(in,"UTF-8");
while (scanner.hasNext()) {
String line=scanner.nextLine();

line=line.replace("<", "&lt");
line=line.replace(">", "&gt");

pageContext.getOut().print(line);
pageContext.getOut().println("</br>"); //换行

}


}

public JspTag getParent() {
// TODO Auto-generated method stub
return null;
}

public void setJspBody(JspFragment jspBody) {
}

public void setJspContext(JspContext pc) {
this.pageContext=(PageContext) pc;



}

public void setParent(JspTag parent) {

}

}



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">
   
    <tlib-version>1.3</tlib-version>
    <short-name>my3</short-name>
    <uri>http://www.cgmcc.com/jsp/readfile</uri>
    <tag>
       <name>readFile</name>
      
       <tag-class>com.cgm.readFile.TagReadFile</tag-class>
       <body-content>empty</body-content>
       <attribute>
         <name>file</name>
         <required>true</required>
         <rtexprvalue>true</rtexprvalue>
         <type>java.lang.String</type>
       </attribute>
      
   
   
    </tag>
   
  </taglib> 





分享到:
评论

相关推荐

    java读取Excel中多个sheet生成xml文件

    java读取Excel表中的内容,可以读取多个sheet,生成自定义格式的xml文件

    详解C#读取Appconfig中自定义的节点

    我们往往需要在App.config中自定义一些节来满足实际需要,而不依赖于App.config的appSettings,下面通过一个简单的实例来说明自定义配置节点的设置与读取

    jstl深入学习知识

    自定义标签: 我们可以自己去定义一些jsp标签。自定义包含两个:java类,tld文件(标签的描述文件) 标签库JSTL(JSP Standard Tag Library): 因为在jsp中使用java代码去控制页面的显示(即:用小段的),可读性很...

    自定义用于读取matlab数据的类,仿照pytorch设计.rar

    不论什么样的数据格式输入...给定文件夹路径,读取文件夹内所有的mat文件,并且提取文件名、文件路径、进行one-hot编码; 默认提取所有mat文件,也可以指定mat文件; 可以对数据索引; 可以计算样本个数; 可以对数据可视化

    动掦siteFactory自定义签收人标签.rar

    直接读写数据库,签收单位是以单位名称为名称的会员帐号(例如登录帐号“办公室”代表部门办公室),签收人由...3、拷贝标签文件到标签目录下。 4、修改数据库PE_SigninLog,添加字段 SigninUserName(nachar(50))

    flask框架自定义过滤器示例【markdown文件读取和展示功能】

    自定义一个markdown过滤器, 使过滤器可以像safe解析html标签一样解析md语法. 安装库 pip install Markdown==2.3.1 自定义过滤器 使用@app.template_filter(‘md’)过滤器, 此时便拥有了名为md的过滤器. @app....

    yoyoplayer源码+程序

    YOYOPlayer的主要定位是Linux下的用户,因为Linux下几乎没有一款集成性高的音频播放软件,并且读取中文标签经常会出现乱码,由于YOYOPlayer是国人开发的,所以对中文的支持绝对可以放心,并且可以自定义标签的读取和写入...

    LabelTool-v3.0.jar

    以前用过几个标注工具,但生成的label文件和自己的程序的数据读取有点偏差,处理方法无外乎改读取程序,或者写个脚本转换生成label文件的格式,总之太不方便,所以就想做一个可以自定义标签模板的标注工具,...

    ID3TagEditor:一个用于读写任何mp3文件的ID3标签的Swift库。 支持的ID3标签版本:2.2、2.3和2.4。 支持的平台:iOS,macOS,tvOS,watchOS,Linux Ubuntu

    ID3TagEditor 一个快速库,用于读取和修改任何mp3文件的ID3标签。 在的“实现”部分。安装有四种方法可以在项目中安装ID3TagEditor: 手动安装构架椰子纲Swift Package Manager(支持Linux平台) 手动安装要手动安装...

    YOYOPlayer1.1.3

    YOYOPlayer的主要定位是Linux下的用户,因为Linux下几乎没有一款集成性高的音频播放软件,并且读取中文标签经常会出现乱码,由于YOYOPlayer是国人开发的,所以对中文的支持绝对可以放心,并且可以自定义标签的读取和写入...

    易得网站数据采集系统 v1.07 UTF-8

    标签清理 - 可以自定义保留的标签,清理掉不必要标签。 安全性能 - 通过密码控制读取,远程读取亦安全。 操作简单 - 一键读取操作,可以按规则分组读取,或指定规则id读取,单一id读取。 规则分组 - 按规则分组...

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    用curl函数读取远程文件 用file_getcontents提交数据 用php生成扭曲,有角度的验证图片(支持中文) 用正则加亮关键字 程序运行过程中直接输出 缩略图带版权信息函数 缩略图类 获得用户操作系统的换行符 ...

    全面了解js中的script标签

    在页面中用script标签引入javascript文件([removed][removed]),浏览器在渲染页面的时候,当读取到script元素时,浏览器不会以HTML或XHTML的方式处理其内容,浏览器会通知浏览器的脚本引擎来接管script元素中的...

    安卓 RE 文件管理器 Root Explorer 4.8.1 中文多语免费版.zip

    – 常用的文件管理功能,完全可自定义的列表图标,多标签页管理 – 查看/解压/创建Zip/Tar/Gzip文件,以及查看和解压RAR文件 – 显示图像缩略图,显示APK文件的图标,快速搜索文件 – 网络(SMB)、Google云端硬盘、...

    java配置文件 beta v1.0

    java配置文件助手(能读写ini,conf,txt,properties等任意格式的配置文件),文件内容支持自定义标签及语法.如需源代码,请联系我:mak0000@msn.com whsvc

    YOYOPlayer(与千千静听一样的Java播放器)

    并且读取中文标签经常会出现乱码,由于YOYOPlayer是国人开发的,所以对中文的支持绝对可以放心,并且可以自定义标签的读取和写入编码. 支持snd,aifc,aif,wav,au,mp1,mp2,mp3,ogg,spx,flac,ape,mac等音频格式音乐。...

    taglib-sharp:用于在媒体文件中读写元数据的库

    您可以读取/写入媒体的标准或更常见的标签/属性,也可以创建和检索自己的自定义标签。 它支持以下格式(通过文件扩展名): 视频: mkv,ogv,avi,wmv,asf,mp4(m4p,m4v),mpeg(mpg,mpe,mpv,mpg,m2v) ...

    动易SiteWeaver CMS内容管理系统 v6.8 090612.rar

    SiteWeaver6.8对系统标签进行一次比较全面的检测,对大部分标签都做了容错处理,特别是对自定义标签的内置方法进行了较大改进。同时修复了在最新IE8浏览器下出现的一些错误,让系统更好的兼容IE8浏览器。 四、大量...

    WEB后台管理基础框架

    15、thymeleaf自定义标签 16、文件系统(支持nginx、http、ftp、tomcat等方式配置) 17、消息通知(通过netty实时推送) 18、quartz定时任务管理 19、@CheckParam自定义检测参数 20、ip+并发控制,加入黑名单机制 21...

    易得网站数据采集系统 v1.07 UTF-8.zip

    标签清理 - 可以自定义保留的标签,清理掉不必要标签。 安全性能 - 通过密码控制读取,远程读取亦安全。 操作简单 - 一键读取操作,可以按规则分组读取,或指定规则id读取,单一id读取。 规则分组 - 按规则分组...

Global site tag (gtag.js) - Google Analytics