webwork action同时输出图片以及其他数据信息到jsp
2013-11-28 15:52
465 查看
不知道webwork是否提供了这方面的支持。
在这里,我们就用最土的办法来做了。
首先,写1个OutListAction,它有2个方法,一个是getImage(),另一个是getList()。OutListAction extends WebWorkResultSupport 这样子,action就可以return null 了。return null的目的是为了采用response输出图片流.
Java代码
public class OutListAction extends WebWorkResultSupport {public String getImage() throws IOException {
InputStream in = null;
OutputStream out = ServletActionContext.getResponse().getOutputStream();
ServletActionContext.getResponse().setContentType("image/jpeg");
String strFullPath = ServletActionContext.getServletContext()
.getRealPath("/");
File f = new File(strFullPath + "img//none.bmp");
in = new FileInputStream(f);// 初始化inputStream 默认为img//none.bmp
if (picno != null && !picno.equals("")) {
imageList = dao.getImageByID(picno);
if (imageList != null && imageList.size() > 0) {
Image img = (Image) imageList.get(0);
if (img != null && img.getImage() != null) {
Blob blob = img.getImage();//上面这部分都是通过picno来查询数据中是否有该图片,如果没,就采用默认的图片img//none.bmp来显示在页面。
if (blob != null) {
try {
in = blob.getBinaryStream(); // 更改inputStream
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
try {
byte[] b = new byte[1024];
int i = 0;
while ((i = in.read(b)) > 0) {
out.write(b, 0, i); // 读图片
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (in != null) {
in.close();
if (out != null) {
out.close();
}
}
}
return null;
}
public String getList() {
kindList = dao.getKindName();
}
}
OK! Action写完了!现在我们来看list.jsp
这里要输出图片的话,通过javascript来获取该图片输出流。其代码如下:
Java代码
<img id ="carimage" width="135" height="120" hspace="2"></td>
<script type = "text/javascript">
var picno ='<ww:property value="top[37]" />';
var url ="getImage.action?picno="+picno;
document.getElementById("carimage").src=url;
</script>
至于list输出就随便输出了!
Java代码
<ww:iterator value="kindList " status="li">
<ww:property value="#li.count" />
</ww:iterator >
相关文章推荐
- jsp+servlet实现多个图片(附件)和其他信息同时上传
- Struts2 访问Action和Jsp页面出现的路径问题解决方案之 ---- 为jsp、图片、js、css等获取Web工程的绝对路径的方法
- 【JavaWeb-18】ActionContext存取数据、ValueStack存取值、EL新查找顺序、iterator、OGNL投影、其他标签、UI主题、防重复提交
- 微软BI 之SSIS 系列 - 使用 Multicast Task 将数据同时写入多个目标表,以及写入Audit 与增量处理信息
- Xcode 宏定义log 以及lldb控制台输出数据信息
- 对jsp的一个小结(1)搭建web应用环境、用jsp实现输出、实现数据传递
- 输出web系统环境信息的jsp
- 关于struct2获取jsp表单里的数据,以及隐藏传递给action的变量的方法
- JSP页面加载时同时访问action获取数据( struts标签s:action方法)
- 将控件中的数据输出保存到本地excel或word中,同时保存图片到本地(c#)
- Tomcat 利用server.xml进行其他盘符的其他项目映射的部署以及JSP引用其他盘符的图片(虚拟目录及虚拟路径)
- jsp上传图片生成缩略图并将数据信息添加到数据库(转)
- javaweb-day06-1 (Servlet - Response - 输出中文、输出1、中文名字的文件下载、字符流读图片会导致数据丢失的剖析)
- 将控件中的数据输出保存到本地excel或word中,同时保存图片到本地(c#)
- Golang 如何定义一个接口类型的切片,它可以用来存储混合类型的数据,又如何自定义错误信息输出,以及如何定义变参函数,还有字符串多种拼接方式
- C# WebRequest同时Post提交图片和字段信息
- 将控件中的数据输出保存到本地excel或word中,同时保存图片到本地(c#)
- J2ME网络编程(获得Web中的文字,图片,多媒体,与JSP交互)以及网络游戏的实现
- php获取图片的拍摄及其他数据信息
- JSP Web 页面收集用户IP地址信息-聚合数据IP地址数据接口的使用