struts2+mysql 二进制流显示问题

我在进行图片上传和显示操作其中,struts2的相关action源码如下

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package bphone.action;

import bphone.iservice.IGoodsService;
import bphone.model.Goods;
import com.opensymphony.xwork2.ActionContext;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;

/**
 *
 * @author RZB
 */
public class GoodsAction {
    @Autowired
    private IGoodsService goodsService;
    private String phPinpai;
    private String phXinghao;
    private double phJiage;
    private String phXitong;
    private String phWeb;
    private String phRam;
    private String phRom;
    private String phCpu;
    private File phTupian;
    private String phChicun;
    private int phKucun;
    public String GoodsInfo()
    {
        ActionContext ctx=ActionContext.getContext();
        List<Goods> goodsinfo=goodsService.findAll();
        ctx.put("goodsinfolist", goodsinfo);
        return "goods_info";
    }
    public String GoodsDelete()
    {
        ActionContext ctx=ActionContext.getContext();
        goodsService.deleteGoodsInfo(getPhXinghao());
        return "goods_info";
    }
    public String GoodsAdd() throws FileNotFoundException, IOException
    {
        Goods goods=new Goods();
        goods.setPhChicun(getPhChicun());
        goods.setPhCpu(getPhCpu());
        goods.setPhJiage(getPhJiage());
        goods.setPhKucun(getPhKucun());
        goods.setPhPinpai(getPhPinpai());
        goods.setPhRam(getPhRam());
        goods.setPhRom(phRom);
        FileInputStream in=new FileInputStream(getPhTupian());
        byte[] bt=new byte[in.read()];
        goods.setPhTupian(bt);
        goods.setPhWeb(getPhWeb());
        goods.setPhXinghao(getPhXinghao());
        goods.setPhXitong(getPhXitong());
        goodsService.addGoodsInfo(goods);
        return "goods_info";
    }
 ……get和set方法省略,页面显示信息使用的<s:iterator>来显示list内容,但是显示不出来图片,如何才能显示图片呢,请大家指导一下

1个回答

你需要单独写一个action 然后返回图片的流信息(直接响应返回) 设置mime类型为图片的

rzb8412792
rzb8412792 搜了 但是看不懂
6 年多之前 回复
jinnianshilongnian
jinnianshilongnian 你自己搜下吧 网上应该有
6 年多之前 回复
rzb8412792
rzb8412792 嗯知道了 可是我的action应该怎么写能给例子吗 谢谢 我是用iterator显示的信息
6 年多之前 回复
jinnianshilongnian
jinnianshilongnian 二进制流 肯定不行 需要专门写个action 做 图片下载
6 年多之前 回复
rzb8412792
rzb8412792 可是我应该怎么写呢?我用的不是serverlet,我不能直接用List读出来吗?
6 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!