`

Java图片/文件下载+Hibernate+Oracle数据库Blob字段类型

    博客分类:
  • Java
阅读更多
@RequestMapping(value = "files.action")
public void files(HttpServletRequest request, HttpServletResponse response) {
	try {
		String faId = request.getParameter("id");
		GzryFjxx fjxx = gzryFjxxServ.getByFaId(faId);
		Blob img = fjxx.getTp();
		long size = img.length();
		byte[] b = img.getBytes(1, (int) size);
		if (b.length > 0) {
			for (int i = 0; i < b.length; i++) {
				if (b[i] < 0) {
					b[i] += 256;
				}
			}
			String filename = java.net.URLEncoder.encode(fjxx.getText(),"UTF-8");
			response.addHeader("Content-Disposition","attachment;filename=" + filename);
			response.addHeader("Content-Transfer-Encoding", "binary");
			response.setContentType("image/jpg");//MIME类型			
                                OutputStream outs = response.getOutputStream();
			outs.write(b);
			outs.flush();
			outs.close();
		}
	} catch (Exception e) {
		System.out.println(e);
	}
}

//Hibernate实体类:
import java.sql.Blob;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "T_GZRY_FJXX")
public class GzryFjxx {

	private String id;
	private Blob tp;
	private String text;
	
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	public String getId() {
		return this.id;
	}

	public void setId(String id) {
		this.id = id;
	}

	@Column(name = "TP")
	public Blob getTp() {
		return tp;
	}

	public void setTp(Blob tp) {
		this.tp = tp;
	}

	@Column(name = "TEXT", length = 200)
	public String getText() {
		return text;
	}

	public void setText(String text) {
		this.text = text;
	}	

}

分享到:
评论

相关推荐

    spring+hibernate操作oracle的clob字段

    J2EE开发中,经常会遇到存储大文本的文字信息,而oracle数据库的vachar字段最大能存储4000个字节,存储更大的信息必须使用clob或blob字段,本文档就是针对j2ee开发中对colb字段操作的实现。

    struts+hibernate+spring+blob

    struts+hibernate+spring+blob 三个框架集成了一下,主要包括利用struts的上传附件功能,并把上传的图片存储到oracle的blob字段。并提供显示。 没做过多的限制,还有很多bug别见怪,功能跑得通!

    Hibernate读取blob字段

    Hibernate读取blob字段

    Struts2,Hibernate3,Spring2实现oracle存取blob字段(图片等二进制文件)(原来2分的,现在免费了!!给评分哦!!)

    Struts2,Hibernate3,Spring2实现oracle存取blob字段(图片等二进制文件) Myeclipse6.0下开发 哈哈,原来2分的,现在免费了!!!!!!!!!!!!!!!!!!!!!!!!给评分哦!!!!!!!!!!!!!!!!

    spring+hibernate 解决大字段(clob)

    是我自己验证过的 用的是oracle10数据库 文件里面有具体的配置。

    使用JDBC和Hibernate来写入Blob型数据到Oracle中

    使用JDBC和Hibernate来写入Blob型数据到Oracle中;使用JDBC和Hibernate来写入Blob型数据到Oracle中

    关于在Hibernate中对于Clob,Blob字段的处理方法

    oracle的jdbc驱动程序,用这个版本的操作Clob,blob类型的数据很方便。 博文链接:https://zhenjw.iteye.com/blog/173419

    spring+hbernate对clob、blob字段的处理

    一个完整的工程,主要功能为:spring+hbernate对clob、blob字段的处理 包括:数据脚本、典型的SSH框架处理,以及spring、hibernate数据批量保存等功能源码、所用到的lib包 数据环境为:oracle 10G 开发:Mycelipse5.1...

    hibernate保存图片

    一般网站在处理用户上传图片时通常采用两种策略:一是直接把图片存入数据库中的Blob字段;...在此例中数据库我采用mysql,oracle的Blob字段比较特殊,你必须自定义类型,具体的请自行搜索,这方面的资料很多.

    Hibernate-Oracle-MySQL-image.rar_oracle

    Hibernate如何操作Oracle以及MySQL数据库中的图片文件,进行图片文件的自由存取,该文档详细描述了Hibernate如何对Oracle数据库以及MySQL数据库进行Blob字段的配置

    ssh(structs,spring,hibernate)框架中的上传下载

     本文选用的数据库为Oracle 9i,当然你可以在不改动代码的情况下,通过配置文件的调整将其移植到任何具有Blob字段类型的数据库上,如MySQL,SQLServer等。  总体实现  上传文件保存到T_FILE表中,T_FILE表结构...

    DBKING使用指南

    在dbking中,所有的数据库数据只有五种数据类型,String、Number(BigDecimal)、Timestamp、Clob(String)、Blob(byte[]),经过反复测试后,我们会例出各种数据库数据类型到这五种类型的映射表,当然我们也有...

    Spring中文帮助文档

    11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall使用的参数 11.5.7. 如何定义SqlParameters 11.5.8....

    Spring API

    11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall使用的参数 11.5.7. 如何定义SqlParameters 11.5.8....

Global site tag (gtag.js) - Google Analytics