Tag: blob

从JSON webservice中检索android中的byte

我成功地以数据库BLOB格式存储图像。 webservices模型类中的图像的DataType是byte []。 我的网络服务: @POST @Consumes(“application/json”) @Produces(“application/json”) @Path(“login”) public Korisnici Login(Korisnici k) { Korisnici exception = new Korisnici(); ………… Json webservice示例: [ { “id”: 2, “ime”: “haris”, “mjestoGoogleMaps”: null, “password”: “1234”, “username”: “haris”, “image”: “iVBORw0KGgoAAAANSUhEUgAizDMizDMizDMizDMizDMizDMizDMizDMizDMizDMiz/JPL/AOc68RGNGkMYAAAAAElFTkSuQmCC” } ] 我们看到json服务转换为String,byte []转换为字符串。 我试图在Android中将转换String转换为byte [],但我没有看到图片。 这是我的代码: byte [] b = new byte[getString_Image().length()]; profilna.setImageBitmap(getImage(b)); 从字节数组转换为位图 public static Bitmap getImage(byte[] image) […]

在数据库中存储BLOB的最流行的方法?

在编写实用程序脚本以将图像插入数据库时​​,我想知道是否有一种更加便捷的方式。 最终解决了这个问题: def sql = Sql.newInstance(…) // … Connection conn = sql.getConnection() PreparedStatement stmt.prepareStatment(…) stmt.setBinary(…) stmt.executeUpate() 必须有一种更加时髦的方式,能有人开导我吗?

用Java从MySQL读取blob

我在使用Java从MySQL数据库中读取blob时遇到问题。 我需要用jax-rs编写一个web服务来提供保存在数据库中的图像。 对于传输,必须使用Base64进行编码。 这是我的代码: public String getImage(@PathParam(“id”) int id) throws SQLException{ System.out.println(id); String img64str = “null”; Blob image = null; Connection conn = MySQLConnection.getInstance(); if(conn != null) { try{ // Anfrage-Statement erzeugen. Statement query; query = conn.createStatement(); // Ergebnistabelle erzeugen und abholen. String sql = “SELECT bild FROM beitraege where id=”+id; ResultSet result = query.executeQuery(sql); […]

在MySQL数据库上存储歌曲(BLOb支持)

我想在MySQl db上存储歌曲和歌词。 我用google搜索示例如何做到这一点,但没有帮助。但是,我能够存储图像: con = DriverManager.getConnection(connectionURL, “root”, “”); PreparedStatement ps = con.prepareStatement(“INSERT INTO image VALUES(?,?)”); File file = new File(“E://guitar.gif”); FileInputStream fs = new FileInputStream(file); ps.setInt(1,id); ps.setBinaryStream(2,fs,fs.available()); int i = ps.executeUpdate(); ps.close(); con.close(); //rest code 任何人都可以帮助我如何存储歌曲?例如?以及如何检索它?

如何用JSON表示数据库中的图像

我需要根据数据库中的blob创建JSON。 要获取blob图像,我使用下面的代码并在json数组中显示之后: Statement s = connection.createStatement(); ResultSet r = s.executeQuery(“select image from images”); while (r.next()) { JSONObject obj = new JSONObject(); obj.put(“img”, r.getBlob(“image”)); } 我希望根据图像blob为每个图像返回一个JSON对象。 我怎样才能实现它?

如何在不将完整文件加载到内存的情况下将大文件插入BLOB(Oracle)?

我们在临时文件系统上存储了一个大文件,我需要的是使用BufferedInputStream读取那个巨大的文件(可能是几个或几个演出),如下所示 InputStream is = is = new BufferedInputStream(new FileInputStream(file)); 这将有效地减少读取文件的时间,并希望将文件保存到DB(Oracle)中的BLOB。 这是真正的问题: 我不希望文件被完全读入我的内存,因为我登陆内存不足并想要读取块并将文件内容作为字节数组推送到我的DB BLOB列。 基本上,我的想法是杀死将完整文件加载到内存并实现将文件保存到BLOB(可能附加到现有BLOB内容等)的头顶 有没有办法实现这一目标? PS:我们使用Hibernates来保存BLOB文件

HSQLDB和.lobs文件大小

我在Java中使用HSQLDB数据库,它将文件存储在定义为BLOB的列中。 当我将一个带有文件/ BLOB的表行添加到我的表时,.lobs文件的大小增加了文件/ BLOB。 当我向我的表添加另一个文件时,它再次增加大小(2 x BLOB大小)。 所以,我实现了一个迭代10次的测试方法,并将相同的文件写入我的表并在插入后立即删除它。 现在,我的.lobs文件是10 x文件大小…即使我删除了包含该文件的所有表行。 我试图执行CHECKPOINT DEFRAG,但没有任何反应。 .lobs文件保持相同的文件大小。 这让我很担心,因为我正在创建的webapp会将大量文件写入我的数据库,即使带有文件(BLOB)的表行将在一段时间后被删除,.lobs文件将始终增加或保持不变大小,最终吃掉我所有的磁盘空间。 我错过了一些设置还是这是HSQLDB和BLOB的预期行为? 非常感谢! 亲切的问候,安德烈亚斯

Hibernate – 如何通过注释设置sql-type?

我有一个文件作为byte [] fileContent。 我的mySql方案是由Hibernate生成的,默认情况下,hibernate将fileContent的sql-type设置为BLOB。 但BLOB对我的文件来说还不够大。 我至少需要一个MEDIUMBLOM甚至一个LONGBLOB。 但是我如何注释我的字段,以便Hibernate将我的字段生成为LONGBLOB的方案? 我现在搜索谷歌2小时没有得到任何东西…… 这不应该是一个如此简单和常见的任务,它应该在某处记录? 请帮助一个沮丧的程序员! @WhatAnnotationCanIUseToForceHibernateToMakeThisALONGBLOB???? private byte[] fileContent;

使用Java为DB2和Oracle插入BLOB

我目前正在validation在Oracle for DB2上开发的应用程序。 由于我们不想维护两个单独的源,因此我需要一些查询来将blob插入到字段中,这在oracle和db2中都有效。 我没有任何标识符来区分运行应用程序的DB。 我在oracle中使用了utl_raw.cast_to_raw ,在DB2中使用了CAST() as BLOB ,它们是互不兼容的。

Hibernate 4.2.2从未知长度的输入流创建blob

嗨,我想从输入流创建一个blob in hibernate,但我不知道流的长度。 Hibernate.getLobCreator(sessionFactory.getCurrentSession()).createBlob(stream, length) 如何在不知道流的长度的情况下创建一个blob? EDIT1 在较旧的hibernate版本中它是可能的 http://viralpatel.net/blogs/tutorial-save-get-blob-object-spring-3-mvc-hibernate/ Blob blob = Hibernate.createBlob(file.getInputStream()); EDIT2 好吧,但它有一个错误的实施 返回新的SerializableBlob(new BlobImpl(stream,stream.available())); stream.available不是真正的大小 编辑3 我试过了 session.doWork(new Work() { @Override public void execute(Connection conn) throws SQLException { LargeObjectManager lobj = ((org.postgresql.PGConnection) conn).getLargeObjectAPI(); 但是conn只是来自c3p0的NewProxyConnection。