我尝试在我的DB中更新一个表“image”并插入blob类型。
public static void main (String args[]) throws FileNotFoundException{
SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
Session session = sessionFactory.getCurrentSession();
Transaction tx = session.beginTransaction();
File image = new File("c://img//button.png");
System.out.println("file esistente ? "+image.exists());
InputStream in = new FileInputStream(image);
Blob blob = Hibernate.getLobCreator(session)
.createBlob(in, image.length());
Image imageClass = new Image();
imageClass.setImage(blob);
imageClass.setName("blobTry");
session.save(imageClass);
session.getTransaction().commit();
sessionFactory.close();
}
ImageClass:
@Entity
@Table(name = "IMAGE")
public class Image {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID")
private int id;
@Column(name = "NAME")
private String name;
@Column(name = "IMAGE")
private Blob image;
/* ... auto generated getters / setters */
}
Hibernate用户映射:
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">root</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost/hibernatetutorial</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.jdbc.batch_size">0</property>
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.show_sql">true</property>
<mapping class="com.journaldev.hibernate.model.Image" />
利布:
错误:
我从这篇文章中获得了以下答案
AbstractMethodError表示您的JDBC驱动程序的PreparedStatements不实现setBlob(int,InputStream,long)。
使用较旧的setBlob(int,Blob)或更新驱动程序(Connector/J5.1实现了Jdbc 4.0,这应该是setBlob(int,InputStream,long)所需要的)
下面的Rust代码试图在一个数组中存储一个零参数闭包,并调用函数。 链接到 Rust Playground。不幸的是,它不会编译: 错误[E0277]:
已挂, 查看状态变更为业务面试-未录用 -------------------------------------------------------- 1. 深挖项目,需要对自己的项目和类似开源项目,用到的框架技术有深入了解 2. Redis 3. MySQL 4. 消息队列 5. GC相关 反问 拷打约50分钟 面试官水平很高,也会根据你的回答引导,可惜自己太菜了,很多没回答上来
问题内容: 对于跨进程的数据通信,我打算使用Redis列表。生产者推送到列表,而一组使用者使用BRPOP消费列表内容。 为了限制列表的大小无限增长,我想将列表大小限制为固定值(例如1万个项目)。我很惊讶地没有找到像BLPUSH或BRPUSH这样的等效命令。这是Redis员工故意遗漏的吗? 因此,我假设我必须在推送之前使用Watch / multi创建一个Txn来检查列表大小。这是正确的方法还是可用
本文向大家介绍azure-webjobs 斑点触发,包括了azure-webjobs 斑点触发的使用技巧和注意事项,需要的朋友参考一下 示例 修改Azure存储Blob时触发的一个简单函数示例:
Flare objects are the source assets that are used by Lens Flare Components. The Flare itself is a combination of a texture file and specific information that determines how the Flare behaves. Then whe
我想做什么? 我想使用命令行插入图片到MariaDB数据库,使用LOAD_FILE功能。 发生了什么? 我总是得到一个NULL返回。 我不想要这样的解决方案:这是糟糕的风格,到目前为止我还没有看到过-尝试存储完整的路径!我想将此图片存储在这个数据库中,而不是路径中。 系统 > ArchLinux 4.7.2-1-ARCH 一张叫做“测试”的照片。jpg(817KB)位于,甚至在 这张图片属于用户和