package org.zhang.util;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
public class PicZoom
{
public static BufferedImage zoom(String srcFileName, int outputWidth, int outputHight)
{
ImageIcon imgIcon = new ImageIcon(srcFileName);
Image img = imgIcon.getImage();
return zoom(img, outputWidth, outputHight);
}
public static BufferedImage zoom(Image srcImage, int outputWidth, int outputHight)
{
BufferedImage buffImg = new BufferedImage(outputWidth, outputHight, BufferedImage.TYPE_INT_RGB);
Graphics2D g = buffImg.createGraphics();
g.setColor(Color.WHITE);
g.fillRect(0, 0, outputWidth, outputHight);
g.drawImage(srcImage, 0, 0, outputWidth, outputHight, null);
g.dispose();
return buffImg;
}
}
2.servlet类
package org.zhang.actions;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.zhang.util.PicZoom;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class ImgHandlerServlet extends HttpServlet
{
/**
* 注释内容
*/
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String imgId = request.getParameter("imgId");
if (null == imgId || "".equals(imgId))
{
throw new ServletException("图像参数错误!");
}
int id = Integer.parseInt(imgId);
String srcImgFileName = null;
switch (id)
{
case 1:
srcImgFileName = getServletContext().getRealPath("/") + "images/111.jpg";
break;
default:
throw new ServletException("图像参数错误!");
}
response.setContentType("image/jpeg");
ServletOutputStream sos = response.getOutputStream();
BufferedImage buffImg = PicZoom.zoom(srcImgFileName, 80, 80);
JPEGImageEncoder jpgEncoder = JPEGCodec.createJPEGEncoder(sos);
jpgEncoder.encode(buffImg);
sos.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
doGet(request, response);
}
}
3.jsp页面
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="image?imgId=1" method="post">
<button type="submit">show img</button>
</form>
</body>
</html>