oracle数据库的blob类型字段中,表room_info:r_id <pk>,h_id <外键>,r_photo <blob类型>,r_price,r_describe,r_area,
如果要实现以二进制的形式存放在数据中该怎么实现啊?或者先把图片存储在文件夹下面,然后存路径那个怎么实现呢?
如果要实现以二进制的形式存放在数据中该怎么实现啊?或者先把图片存储在文件夹下面,然后存路径那个怎么实现呢?
解决方案 »
- 老问题,小弟再向数据库中插入数据,可是总出现??????????号
- html中是否有的basePath?
- hibernate问题
- struts+ibatis+spring -------------------------->如何在一个表单插入两张表格.
- 请问在JCreactor中,如何改变java文件的编译路径阿???
- servlet传数据到数据库错误
- 如何实现点一个按钮就能打开IE浏览器,到指定的网站? :)(急)
- J2EE项目规模的界定
- 关于EntityBean与数据库表的问题,请各位高手进来给点建议!
- 100分求助!用java生成xml文件时,如何实现对页面,甚至对页面的联接进行授权
- jsp界面显示数据库中日期以(yyyy年MM月dd日)格式显示 在线
- 用weblogic 8.1 ant编译webservice 客户端的问题?
PreparedStatement pst=conn.prepareStatement("insert into room_info(r_id,r_photo) values(SEQ_HOTEL.Nextval,?) "); File file=new File("D:\\hupeng.gif");
FileInputStream input = new FileInputStream(file);
pst.setBinaryStream(1,input,input.available());
pst.executeUpdate();
out.print("<br>success upload to database");
现在情况是这样的:可以把success upload to database打印出来的,是不是证明已经插入到数据库了啊?二进制流存放在数据库中是不是空白的啊?我的数据库里是空白的
还有就是的另外几个字段该怎么插入进去啊?room_info:r_id <pk>,h_id <外键>,r_photo <blob类型>,r_price,r_describe,r_area
form其中添加了enctype="multipart/form-data"属性 再用request.getParameter是不行地?????
code:
try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con=DriverManager.getConnection(uri, user, pwd);
String filelocation =request.getParameter("file"); //表单
File files = new File(filelocation);
FileInputStream fis=new FileInputStream(files);
psql =con.prepareStatement( //带参数SQL语句
"INSERT INTO album (name, data) VALUES (?, ?)");
String filelname=new String(request. //解决汉字编码
getParameter("name").getBytes("ISO-8859-1"));
psql.setString(1, filelname); //设置SQL语句参数
psql.setBinaryStream(2, fis, (int)files.length());
psql.executeUpdate(); //执行Sql语句
out.println("操作成功!");
fis.close(); psql.close (); con.close(); }
catch ( SQLException e) { out.println(e.toString()); }希望对您有帮助!