📄 readimage.java
字号:
package Information;
import comm.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.*;
import java.net.*;
import oracle.jdbc.driver.*;
import oracle.sql.*;
// 从数据库表中读取图片
public class ReadImage extends HttpServlet
{
private static final String CONTENT_TYPE = "text/html; charset=GBK";
public void service(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
HttpSession session = request.getSession(true);
// 获取客户端信息
String sImageId = request.getParameter("ImgId");
if (sImageId ==null ) return;
// 提供输出流,返回客户端相应数据
ServletOutputStream out = response.getOutputStream();
response.setContentType("image/jpeg");
// 选择存有图片的字段image
String sql = "Select Image from Images where ImageId ="+sImageId ;
// 提供输出流,返回客户端相应数据
InputStream ins =null;
try{
// 连接数据库,执行查询语句
DBOper o_DBOper = new DBOper();
ResultSet rs = o_DBOper.getResultSet(sql);
if (rs.next ())
{
// 以二进制方式读取image字段信息
ins=rs.getBinaryStream("Image");
// 读取输入流数据
int i=ins.read();
int lg=ins.available(); // 数据流的实际大小
while(i !=-1) {
// 输出到客户端
out.write(i);
i=ins.read();}
}
// 关闭输入流
if (ins !=null) ins.close(); ins =null;
// 关闭结果集
rs.close(); rs= null;
}
catch (Exception e){e.printStackTrace();}
finally{try{ if (ins !=null) ins.close(); } catch(Exception ee){}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -