前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图片名字是中文的解决方案

图片名字是中文的解决方案

作者头像
马克java社区
修改2021-07-09 10:51:53
7410
修改2021-07-09 10:51:53
举报
文章被收录于专栏:java大数据

马克-to-win:当我写到本章第七节(jsp一些其它相关话题)的时候,我有一个话题就是解决jsp下面的所有的中文的问题。但当图片名字是中文的时候,怎么都显示不出来图片。上网查了很长时间,也都没有理想的解决方案。有的说改变服务器的设置,有的说把图片的中文名字改成数字名字,之后把相关的信息存在数据库当中。有一个人建议用html的img标签指向Servlet。这个技术我早就知道,但是用在这里,这个想法还真是富有启发性。不过在那个人的例子里,中文图片名是硬编码进Servlet去的,没有实际的意义。我也就没太在意这件事。这次回来写这部分知识,还真是仔细想了想。马克-to-win:底下我这个例子的思路是:当我运行html的时候,这个html的img能够调用servlet,这是大家都知道的技术。最关键的是 Servlet可以知道是谁在调用它。这个就用Referer技术。知道了哪个html调用它以后,反过来这个Servlet可以读出这个html文件, 解析它,找到img标签儿。再找到中文图片名称,Servlet读出这个图片文件,传送给html,让它显示出来就可以了。

例:4.4.2

chinesePicture.jsp:

<%@ page contentType="text/html; charset=GBK"%>

正常的中文图片应该显示不了 <img src="我们.jpg" />

<br>然而,下面的方法可以显示中文图片:

<img id="code" src="MarkToWinServlet" alt="马克.jpg"/>

ServletHello1.java:

package com;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import javax.servlet.ServletContext;

import javax.servlet.ServletOutputStream;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class ServletHello1 extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) {

System.out.println("finish");

}

}

更多请看:https://blog.csdn.net/qq_44638460/article/details/104233575

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档