登录模块加载中...
会员投稿 投稿指南 今天是:
打印本页 | 关闭窗口 | 双击滚屏 您的位置首页>>网页制作学习园地>>JSP教程>>JspServlet>>一个Jsp初学者的学习过程(八)
一个Jsp初学者的学习过程(八)
来源:不详 ‖ 作者:佚名 ‖ 点击: ‖ 时间:13-11-04 10:44:13 ‖ 【 】‖ 我要投稿
一个Jsp初学者的学习过程(八)

TheUnforgiven


第八章 图片文件的操作——Blob类型数据的存取和使用第一个Servlet

关于这部分内容,我在网上找到一些资料,最后按照我的需求,经过改编得到了下面的代码:
------------------------------upphoto.htm------------------------------------



无标题文档
head>


上传图片:


(输入一个整数作为该图片的ID)






 


 


显示图片:





(输入该图片的ID)





---------------------------------------------------------------------------
upphoto.htm包括两个
,form1用于选择要存于数据库的图片;form2用于显示一张数据库里的图片。
-----------------------------upphoto.jsp----------------------------------
<%@ include file="include.inc"%>
<%@ page contentType="text/html;charset=gb2312"%>




无标题文档



<%
int id=Integer.parseInt(request.getParameter("id"));
request.setCharacterEncoding("gb2312");
String f=request.getParameter("file");//得到路径,如:c:\d\e.jpg
String fpath=f.replaceFirst("\\\\","\\\\\\\\");//把一个\变成两个\,即路径改成:c:\\d\e.jpg

Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
Class.forName(CLASSFORNAME);//载入驱动程式类别
con=DriverManager.getConnection(SERVANDDB);//建立数据库连接
con.setAutoCommit(false);
String sql="insert into blb(id,blob) values("+id+",empty_blob())";//数据库里那个表名叫blb,字段的名就叫blob
pstmt=con.prepareStatement(sql);//添加一条blob字段为空的记录,
pstmt.executeUpdate();
pstmt=null;
sql="select * from blb where id="+id+" for update";
pstmt=con.prepareStatement(sql);//查找刚刚添加的那条记录
rs=pstmt.executeQuery();
if (rs.next()) 
{
oracle.sql.BLOB osb = (oracle.sql.BLOB) rs.getBlob("blob");
//到数据库的输出流
OutputStream outStream = osb.getBinaryOutputStream();
//这里用一个文件模拟输入流
File file =&nbs
|<< << < 1 2 3 4 > >> >>|
加入收藏:  加入收藏夹  | 发送给好友:  发送给好友
责任编辑:admin
  • 上一篇:一个Jsp初学者的学习过程(六)
  • 下一篇:无
  • 相关文章列表
    请文明参与讨论,禁止漫骂攻击。  
    网友评论