Servlet读取字体文件

判断文件类型代码块

    /** 字体文件 */
    private static final  String FONT_TYPE_FILE = ".+(.eot|.svg|.ttf|.woff|.woff2)$";
    
    // 读取字体文件
        if(fileName.matches(FONT_TYPE_FILE)){
            System.err.println(filePath);
            ServletOutputStream  outputStream = response.getOutputStream();
            InputStream fis = new BufferedInputStream(Utils.readInputStreamFromResource(filePath));
            byte[] buffer = new byte[fis.available()];
            fis.read(buffer);
//            fis.close();
            // 清空response
            response.reset();
            response.setContentType("application/octet-stream");
            // html 页面读取
            outputStream.write(buffer);
            outputStream.flush();
            outputStream.close();
            return;
        }

读取文件流代码块

 public static InputStream readInputStreamFromResource(String resource) throws IOException {
        InputStream in = null;
        try {
            in = Thread.currentThread().getContextClassLoader().getResourceAsStream(resource);
            if (in == null) {
                return null;
            }

            return in;
        } finally {
        }
    }

pom.xml 配置文件拷贝字体文件

    <build>
        <plugins>
            <!-- 加入插件让字体文件不乱码 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <nonFilteredFileExtensions>
                        <nonFilteredFileExtension>ttf</nonFilteredFileExtension>
                        <nonFilteredFileExtension>eot</nonFilteredFileExtension>
                        <nonFilteredFileExtension>svg</nonFilteredFileExtension>
                        <nonFilteredFileExtension>ttf</nonFilteredFileExtension>
                        <nonFilteredFileExtension>woff</nonFilteredFileExtension>
                        <nonFilteredFileExtension>woff2</nonFilteredFileExtension>
                    </nonFilteredFileExtensions>
                </configuration>
            </plugin>
        </plugins>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>/views/layui/font/iconfont.eot</exclude>
                    <exclude>/views/layui/font/iconfont.svg</exclude>
                    <exclude>/views/layui/font/iconfont.ttf</exclude>
                    <exclude>/views/layui/font/iconfont.woff</exclude>
                    <exclude>/views/layui/font/iconfont.woff2</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
                <includes>
                    <include>/layui/font/iconfont.eot</include>
                    <include>/views/layui/font/iconfont.svg</include>
                    <include>/views/layui/font/iconfont.ttf</include>
                    <include>/views/layui/font/iconfont.woff</include>
                    <include>/views/layui/font/iconfont.woff2</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <filtering>false</filtering>
                <includes>
                    <include>**/**</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <!--<resource>-->
                <!--<directory>src/main/resources</directory>-->
                <!--<includes>-->
                    <!--<include>**/**</include>-->
                <!--</includes>-->
                <!--<filtering>false</filtering>-->
            <!--</resource>-->
        </resources>
    </build>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值