【我要编程】Java技术手册之根据图片链接把图片转化为io流,并输出到页面上的方法

适用场景:A程序只能内网访问,B程序可以外网访问,只有B程序可以访问A程序,用户需要通过B程序访问A程序的图片资源。这是可以使用该方法。

@RequestMapping("/getImageByPath")

public void getImageByTomcat(String path,String suffix,HttpServletResponse response) {

OutputStream os=null;

try {

//这里需要一个最终能在服务器浏览器只能访问图片的地址

String strUrl = "http://ip地址/image/"+path;

URL url = new URL(strUrl );

HttpURLConnection conn = (HttpURLConnection)url.openConnection();

conn.setRequestMethod("GET");

conn.setConnectTimeout(5 * 1000);

InputStream inputStream = conn.getInputStream();//通过输入流获取图片数据

os = response.getOutputStream();

int count = 0;

byte[] buffer = new byte[1024 * 8];

while ((count = inputStream.read(buffer)) != -1) {

os.write(buffer, 0, count);

os.flush();

}

inputStream.close();

//设置发送到客户端的响应内容类型  


 if (path.toLowerCase().endsWith("jpg"))

 {

   response.setContentType("image/jpg");

 }

 else if (path.toLowerCase().endsWith("jpeg"))

 {

   response.setContentType("image/jpeg");

 }

 else if (path.toLowerCase().endsWith("gif"))

 {

   response.setContentType("image/gif");

 }

 else if (path.toLowerCase().endsWith("png"))

 {

   response.setContentType("image/png");

 }

 else if (path.toLowerCase().endsWith("bmp"))

 {

   response.setContentType("image/bmp");

 }else if (path.toLowerCase().endsWith("mp3"))

 {

   response.setContentType("audio/mpeg");

 }

os = response.getOutputStream();

} catch (Exception e) {

e.printStackTrace();

}finally {

if(null != os){

try {

os.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

免费学习编程:www.51program.com

全套Java课程免费分享请关注微信公众号:我要编程(微信号:oset51)

技术交流群:259657781

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 先创建服务端的APP 1.官网下载Winrun4j。http://winrun4j.sourceforge.net...
    Alex_1799阅读 1,833评论 1 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 经验告诉我,5点钟起床最好,阳气生发,大肠运作,先排毒后进食。你会听从经验吗? 甘少健经验告诉我,不要依附任何一个...
    freshriver阅读 183评论 0 0
  • 活动筹备小组 总策划:义工部管理共进小组 总筹备:欢喜组(人文关怀) 总执行:各组组长及组员 活动具体内容 活动主...
    欽靜阅读 500评论 0 1
  • 勇敢的人不会把自己困在一座城池 纵使那里有丛林 骏马 布满鲜花 甚至有弯弯大河从城中穿过 我们不想拥有他 不想他追...
    钱毛儿阅读 283评论 0 0