1---jsp
<body>
<img src="ImagehandlerServlet">
</body>
2---servlet
package com.sertvlet;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.ImageIcon;
public class ImagehandlerServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//通过JPEG图像数据输入流创建JPEG数据流解码器
//获取图片源 super.getServletContext().getRealPath("/")得到当前的根路径
ImageIcon oneImg=new ImageIcon(super.getServletContext().getRealPath("/")+"image/0.jpg");
ImageIcon twoImg=new ImageIcon(super.getServletContext().getRealPath("/")+"image/1.jpg");
//制作画布
BufferedImage buffImg=new BufferedImage(oneImg.getIconHeight(), oneImg.getIconWidth(), BufferedImage.TYPE_3BYTE_BGR);
//制作画笔
Graphics g=buffImg.getGraphics();
//将图片写在画布上
g.drawImage(oneImg.getImage(), 0,0,null);
g.drawImage(twoImg.getImage(),30,30,null);
//写文字
//设置大小
g.setFont(new Font("宋体", Font.BOLD, 50));
//设置颜色
g.setColor(Color.yellow);
g.drawString("这是文字", 50, 50);
//释放画笔资源
g.dispose();
//将画布以输出流的方式显示在客户端
OutputStream out=response.getOutputStream();
//写入客户端
ImageIO.write(buffImg, "jpg", out);
}
}