ShowImageFromDiskServlet.java代码如下:
package cn.com.songjy.test.db;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class ShowImageFromDiskServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static final Log log = LogFactory
.getLog(ShowImageFromDiskServlet.class);
String imagePath;
public ShowImageFromDiskServlet() {
}
@Override
public void init(ServletConfig config) throws ServletException {
imagePath = config.getInitParameter("imagePath");
log.info("图片路径:" + imagePath);
}
@Override
protected void service(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(
response.getOutputStream());
File file = new File(imagePath);
BufferedInputStream bufferedInputStream = new BufferedInputStream(
new FileInputStream(file));
byte[] buffer = new byte[1024];
for(int len=0;(len=bufferedInputStream.read(buffer))>0;){
bufferedOutputStream.write(buffer, 0, len);
}
//bufferedOutputStream.flush();//关闭时会自动刷新,无需显示调用,否则必须显示调用
bufferedOutputStream.close();
bufferedInputStream.close();
}
/*private byte[] readStream(InputStream in) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int data = -1;
try {
while ((data = in.read()) != -1) {
baos.write(data);
}
return baos.toByteArray();
} catch (IOException e) {
e.printStackTrace();
return null;
}
}*/
}
spring mvc 通过字节流返回图像
/**
* 通过url请求返回图像的字节流
*/
@RequestMapping("icon/{cateogry}")
public void getIcon(@PathVariable("cateogry") String cateogry, HttpServletRequest request,
HttpServletResponse response) throws IOException {
if (StringUtils.isEmpty(cateogry)) {
cateogry = "";
}
String fileName = request.getSession().getServletContext().getRealPath("/") + "resource\\icons\\auth\\"
+ cateogry.toUpperCase().trim() + ".png";
File file = new File(fileName);
// 判断文件是否存在如果不存在就返回默认图标
if (!(file.exists() && file.canRead())) {
file = new File(request.getSession().getServletContext().getRealPath("/") + "resource/icons/auth/root.png");
}
FileInputStream inputStream = new FileInputStream(file);
byte[] data = new byte[(int) file.length()];
int length = inputStream.read(data);
inputStream.close();
response.setContentType("image/png");
OutputStream stream = response.getOutputStream();
stream.write(data);
stream.flush();
stream.close();
}
通过Servlet 将服务器硬盘图片 展示到浏览器
通过Java HTTP连接将网络图片下载到本地
在jsp页面中响应速度提高的7种方法
又一编辑神器-百度编辑器-Ueditor
教你如何调用百度编辑器ueditor的上传图片、上传文件等模块
分享到:
相关推荐
使用servlet,jdbc将mysql中数据显示在jsp页面中
登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+...
本示例为servlet+jsp+mysql做的。基于servlet从mysql数据库读取数据到jsp页面,并提供增删改查功能,解压后导入eclipse即可使用。
jsp网页通过ajax传递json数据到java的servlet中,servlet处理数据后回传json数据到jsp页面
JSP 调用servlet 显示图片,通过Servlet显示图片。
JSP 在servlet中使用session 猜数字
Jsp+Servlet+Echarts实现动态数据可视化,对应讲解博文:https://blog.csdn.net/ITBigGod/article/details/81023802
下载使用tomcat就可以使用,数据库语句也有,如果要修改数据库配置就在tool下面的工具类修改即可大学本科JSP课程的期末作业JSP+Servlet+layui实现的博客系统源码。教程 下载使用tomcat就可以使用,数据库语句也有,...
编写jsp页面实现如下界面效果,然后交给servlet计算矩形的周长和面积,并输出结果。
用servlet jsp实现简单购物车 jsp显示页面 使用了jstl
jsp简单语法,servlet,JSP概述,JSP页面构成,注释,指令,脚本元素,动作元素,错误处理
利用servlet+jsp+javabean进行分页查询,用到的数据库为mysql
Servlet+JSP+JavaBean(MVC)模式适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据。 Servlet+JSP、JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此...
使用jsp+servlet实现图片的上传保存,有完整的可运行的代码。
2.利用搭建好的jsp+servlet框架提供http请求及响应视图能力,展示项目所需各个jsp页面。根据响应显示注册页面进行注册操作。 3.根据注册所填写的帐号和密码进行系统登录,如忘记密码,可根据邮件动态验证码形式进行...
JSPServlet技术在管理信息系统中的应用
使用Servlet生成验证码图片。 一个生成验证码图片的工具类。
servlet与jsp中文乱码处理,详细介绍多种乱码处理方法,包括使用过滤器的方法
2、要求:JSP页面仅用于显示,Servlet程序处理所有的逻辑功能 (1)用户登录:根据已经注册的用户可输入正确的用户名及密码实现登录 (2)设计IP地址过滤器,只有在指定的IP地址范围内(自定义范围)才可以登录,而不...