hibernate clob mysql_Hibernate操作Clob类型数据
在POJO中字符串大对象可以声明成一个java.lang.String或java.sql.Clob类型。 当程序从数据库中加载Clob类型数据时,仅仅加载了一个Clob类型的数据的逻辑指针。我们需要通过使用Clob.getCaracterStream()方法得到Clob类型的数据输入流之后才能获取大对象数据
在POJO中字符串大对象可以声明成一个java.lang.String或java.sql.Clob类型。
当程序从数据库中加载Clob类型数据时,仅仅加载了一个Clob类型的数据的逻辑指针。我们需要通过使用Clob.getCaracterStream()方法得到Clob类型的数据输入流之后才能获取大对象数据。
看下面具体代码
package dao;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.Reader;
import java.math.BigDecimal;
import java.sql.Clob;
import java.sql.SQLException;
import org.hibernate.LobHelper;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import entity.Clobtable;
import Factory.HibernateSessionFactory;
public class ClobDao {
private Session session = null;
private Transaction tran = null;
public ClobDao() {
session = HibernateSessionFactory.getSession();
}
public void saveClob(BigDecimal id,String content){
Clobtable ct = new Clobtable();
ct.setId(id);
LobHelper lh = session.getLobHelper();
ct.setContent(lh.createClob(content));
tran = session.beginTransaction();
try{
session.save(ct);
tran.commit();
System.out.println("插入成功!");
}catch(Exception e){
tran.rollback();
System.out.println("插入失败");
}
}
public void getClob(BigDecimal id){
String hql = "from Clobtable where id = ?";
Query query = session.createQuery(hql);
query.setBigDecimal(0, id);
Clobtable ct = (Clobtable) query.uniqueResult();
Clob clob = ct.getContent();
try {
Reader reader = clob.getCharacterStream();
BufferedReader br = new BufferedReader(reader);
String content = br.readLine();
System.out.println(content);
} catch (SQLException e) {
e.printStackTrace();
System.out.println("读取失败!");
} catch (IOException e) {
System.out.println("读取失败!");
}
}
}
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
hibernate clob mysql_Hibernate操作Clob类型数据相关推荐
- 系统性详解Redis操作Hash类型数据(带源码分析及测试结果)
1 缘起 系统讲解Redis的Hash类型CURD, 帮助学习者系统且准确学习Hash数据操作, 逐步养成测试的好习惯, 本文较长,Hash的操作比较多,请耐心看, 既可以集中时间看,亦可以碎片时间学 ...
- SQL 中操作XML类型数据
xml数据以其灵活的数据储存方式受到广大开发人员喜爱.在sqlserver2005中存在xml数据类型.我们可以使用这样的语句对xml数据进行操作 首先定义一段xml 数据: 代码 declare @ ...
- javascript操作Long类型数据
javascript定义的数据类型里并没有Long类型,需要使用long.js插件模拟 github下载地址:https://github.com/dcodeIO/long.js npm下载地址:ht ...
- mysql json类型数组索引_MySQL JSON 类型数据操作
1.Java 中动态扩展字段,会导致数据库表被锁,在MySQL 5.7.8版本之前,因为MySQL不能直接操作JSON类型数据,可以将一个字段设定成varchar类型,里面存放JSON格式数据,这样在 ...
- MySQL JSON 类型数据操作
1.Java 中动态扩展字段,会导致数据库表被锁,在MySQL 5.7.8版本之前,因为MySQL不能直接操作JSON类型数据,可以将一个字段设定成varchar类型,里面存放JSON格式数据,这样在 ...
- Spring JDBC-使用Spring JDBC获取本地连接对象以及操作BLOB/CLOB类型数据
概述 如何获取本地数据连接 示例从DBCP数据源中获取Oracle的本地连接对象 相关接口操作 LobCreator LobHandler 插入LOB类型的数据 以块数据的方式读取LOB数据 以流数据 ...
- oracle的insert语句clob,.Net 操作 Oracle CLOB类型字段 INSERT 超长数据
如果仅仅在数据库中设置了类型为 CLOB 字段类型,使用普通的 INSERT 语句直接写入数据到数据库的话,它依然会将其视为 VARCHAR 类型数据,并最大长度为 4000 字符.超过该长度会报出字 ...
- java将clob类型文件写到磁盘_Java对Oracle中Clob类型数据的读取和写入
Java对Oracle中Clob数据类型是不能够直接插入的,但是可以通过流的形式对clob类型数据写入或者读取,网上代码并不算特别多,讲的 Java对Oracle中Clob数据类型是不能够直接插入的, ...
- 操作Oracle类型CLOB和BLOB
Oracle中,Varchar2支持的最大字节数为4KB,所以对于某些长字符串的处理,我们需要用CLOB类型的字段,CLOB字段最大支持4GB. 还有其他几种类型: blob:二进制,如果exe,zi ...
最新文章
- 计算机组成微程序设计,计算机组成原理微程序设计.doc
- MyBatis 实际使用案例-typeHandlers【重点】
- SQL语句拼接常加 where 1=1 的原因
- 打字机已经被计算机所取代用英语,无法被电脑所取代的职业
- 一些黑科技接口钩子 钉钉,禅道,gitlab,jenkins等
- 设置居中_安卓手机时间怎么显示在中间 时间居中设置教程
- 一款好看的pycharm主题Atom One Dark
- 关于KERNEL_SECURITY_CHECK_FAILURE蓝屏(BSOD)0x00000139错误解决思路
- 基于springboot的网上零食购物系统
- php 检测是否有jmail,asp空间判断jmail组件是否安装或支持的代码
- 苹果手机一直显示搜索服务器,苹果手机safari浏览器搜索页面没有了
- 目标检测 | YOLO系列超全讲解v1,v2,v3
- esxi 用途和开机自启动设置。
- java poi导出PPT格式
- 什么硬盘保存时间长 硬盘的保存时间
- 自学Python:快速查找文件或文件夹
- yocto 更新补丁方法
- 机器学习集成学习与模型融合
- div+css的ppt,DIV+CSSPPT课件.ppt
- pve的各种源替换并去除弹窗
热门文章
- android自定义静态广播失效,自定义的静态广播没有作用怎么处理
- .net pdf转图片_在客户端实现PDF转图片
- MIME媒体类型:简介,作用(描述并标记多媒体内容),示例
- Mysql的日期查询方法
- 计算机组成原理实验内存读数,计算机组成原理实验
- python函数赋值给对象_【Python核心编程笔记】一、Python中一切皆对象
- mysql存储日期 jsp_JSP+MySql的时间处理
- oracle中update补空格lpad,Oracle lpad 函数
- 用于打开和创建SQLite,Microsoft SQL Server,PostgreSQL和MySQL SQL数据库的WPF对话框
- 证明谷歌 Go 魅力的 10 个开源项目