在java里面 把 文件转换成二进制流 然后在.net里面 再把二进制流转化成文件.......
1个回答
2013-03-30
展开全部
方法1:专门写个函数把数据从数据库中读出,作为文件形(如test.jpg)式保存在硬盘上,然后在html中显示<img src="test.jpg"/
----------------------------------------------------------------------
方法2:写一个servlet
public class GetPhotoAction extends Action {
private static final String CONTENT_TYPE = "image/gif; charset=GBK";//输出类型为 图像
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response) {
int empid;
try {
empid = Integer.parseInt(request.getParameter("empid"));//员工id
} catch (NumberFormatException e) {
empid = 0;
}
response.setContentType(CONTENT_TYPE); //设置输出类型
OutputStream out = null;
try {
out = response.getOutputStream();//得到输出流
} catch (IOException ex1) {
ex1.printStackTrace(System.out);
}
try {
byte[] photo = Operator.getDBPhoto(empid);//从数据库中读出文件
if (photo!=null && photo.length > 0) {
out.write(photo); //输出到网页上
}
} catch (Exception ex) {
ex.printStackTrace(System.out);
}
return null;
}
}
我是在struct中写的,如果你用的是jsp+servlet,把Action改成Servlet即可.
由于CONTENT_TYPE = "image/gif; charset=GBK",所以你直接在浏览器中访问这个servlet的话只能看到一张大的图片,就算写了out.write("aaaaaaaaa"),也不会看到字符输出,所以你只能在jsp中调用这个servlet
<img src="getPhotoAction.do?empid=123"alt="照片" width="185" height="218">
----------------------------------------------------------------------
方法2:写一个servlet
public class GetPhotoAction extends Action {
private static final String CONTENT_TYPE = "image/gif; charset=GBK";//输出类型为 图像
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response) {
int empid;
try {
empid = Integer.parseInt(request.getParameter("empid"));//员工id
} catch (NumberFormatException e) {
empid = 0;
}
response.setContentType(CONTENT_TYPE); //设置输出类型
OutputStream out = null;
try {
out = response.getOutputStream();//得到输出流
} catch (IOException ex1) {
ex1.printStackTrace(System.out);
}
try {
byte[] photo = Operator.getDBPhoto(empid);//从数据库中读出文件
if (photo!=null && photo.length > 0) {
out.write(photo); //输出到网页上
}
} catch (Exception ex) {
ex.printStackTrace(System.out);
}
return null;
}
}
我是在struct中写的,如果你用的是jsp+servlet,把Action改成Servlet即可.
由于CONTENT_TYPE = "image/gif; charset=GBK",所以你直接在浏览器中访问这个servlet的话只能看到一张大的图片,就算写了out.write("aaaaaaaaa"),也不会看到字符输出,所以你只能在jsp中调用这个servlet
<img src="getPhotoAction.do?empid=123"alt="照片" width="185" height="218">
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询