InputStream不能序列化吧?所以返回InputStream可能不行
解决方案 »
- 有人用过JatoolsPrinter打印控件吗?
- 存储过程返回结果集 取值问题? 急
- spring oracle,如何传递嵌套对象
- 设计态画图运行态监控
- 【这个统计查询该如何做???】
- 请大家一个问题 关于开发JAVA servlet
- <html:text 提交 经修改的默认值: Cannot find bean in any scope
- 请问,用jsp访问mysql数据库,出现ClassNotFoundException错,,请问怎么回事?
- java想数据库中导入图片
- 我用的是apache+tomcat,取缺省配置,请问Bean的java包应该放在哪个地方?
- 我在执行Servlet时,浏览器怎么会提示下载?
- jbuilder中的javax包中为什么没有javax.sql.*,如何可以import javax.sql.*
{
InputStream in = null;
Statement stmt = null;
Resultset rs = null;
public void getInputStream()
{
}
public void showPicture(HttpServletResponse response)
{
}
}
C which is an abstract reference you can have a handle (or pointer if
you like) to the LOB. Using LOB locators avoids shipping LOBS back and
forth between client and server.a LOB locator does not refer to an actual value for various
reasons.
应该怎么改?我想在Program2.getInputStream()里返回数据库的blob字段内容
To takecare(大厅) :
在我的源程序里,所有的变量都得到了定义,所以您说的该问题不存在。
public class Program1 extends HttpServlet
{
public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
Program2 p2 = new Program2();
p2.showPicture(response,p2.getInputStream()); }
}
加载数据库连接然后
在该类中定义Connection Statement ResultSet初始化的值为null;
然后将它们传递到Program2中可能正常工作凭借感觉,乱说的。
public class Program1 extends HttpServlet
{
public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
Program2 p2 = new Program2();
p2.showPicture(response,p2.getInputStream()); }
}
该类中定义Connection Statement ResultSet初始化的值为null;
然后将它们传递到Program2中,然后在Program2对它们进行赋值
可能正常工作凭借感觉,乱说的。
我试过了,这样也不行不通
对你第一次说的:照你说的试过了,出现同样的错误。
对你第二次说的:对于函数返回一个对象,这样的做法是行得通的。我认为这里出错的原因在于我返回的是InputStream对象,可能InputStream对象不能这么处理。
按你的意思是:该InputStream对象一直是指向数据库里的该字段,而不是该字段的内容。
那我怎样将该blob字段从数据库里拷贝出来,不是指向数据库里的该字段?
或者呢将数据缓存起来,建议用第一中。
将数据成员都变成类的成员而不是在try快中定义的局部变量
当然他少了一个Connection对象。
ResultSet 依赖于Connection 大厅的做法应该是本帖的正解:因为离开了try 块,Connection的生存周期已经过去,如果在别的语言中,如c++,这种错误应该是一眼就能看出来的。
通道技术我没用过。通过你的提示我以解决改问题,具体来说是将:Connection Statememt ResultSet InputStream 变为Program2的属性。
在Program2里不能关闭Connection Statement ResultSet 的数据库连接,在servlet Program1中call完Program2.getInputStream()和Program2.showPicture()后再关闭Program2的Connection Statement ResultSet连接。虽然增加了设计的耦合性,但是问题还是被解决了。
在此谢谢study_body(珍惜每一天) ,takecare(大厅) !加分