`

Spring+Hibernate环境下CLOB字段值的处理

 
阅读更多

软件环境:

     Spring:2.5.4

     Hibernate:3.2.6

     Oracle:9i

     驱动:ojdbc14.jar

 

Spring关键配置信息:

<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor"/>
	
<bean id="oracleLobHandle" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">
	<property name="nativeJdbcExtractor">
		<ref local="nativeJdbcExtractor"/>
	</property>
</bean>

<!-- 如果是Oracle 10g,则可以直接用 -->
<!-- <bean id="oracleLobHandle" lazy-init="true" class="org.springframework.jdbc.support.lob.DefaultLobHandler"/> -->

<bean id="sessionFactory"
	class="com.travelsky.bravo.core.utils.AutoLoadSessionFactoryBean">
	<property name="dataSource" ref="dataSource" />
	
	<property name="hibernateProperties">
		<props>
			<prop key="hibernate.dialect">
				org.hibernate.dialect.Oracle10gDialect
			</prop>
			<prop key="hibernate.show_sql">false</prop>
			<prop key="hibernate.format_sql">true</prop>
			<prop key="hibernate.cache.provider_class">
				org.hibernate.cache.EhCacheProvider
			</prop>
			<prop key="hibernate.cache.use_query_cache">false</prop>
		</props>
	</property>
	
	<property name="lobHandler" ref="oracleLobHandle" />
</bean>

      在SessionFactory bean中增加lobHandler属性的使用。

 

实体类的用法:

@Entity
@Table(name = "ASY_TEST" )
public class TestInfo extends BaseDomain {
	private String title;
	private String contents;
	
	@Column(name = "TITLE")   
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	
	@Column(name = "CONTENTS")   
    @Type(type="org.springframework.orm.hibernate3.support.ClobStringType")   
	public String getContents() {
		return contents;
	}
	public void setContents(String contents) {
		this.contents = contents;
	}
	
}

  数据库字段类型是CLOB

     java属性类型是String,需要用org.springframework.orm.hibernate3.support.ClobStringType指定

 

字段值的存储跟一般字段类型一样。

分享到:
评论

相关推荐

    spring+hibernate 解决大字段(clob)

    本文将详细介绍如何在Spring与Hibernate框架结合的情况下,有效地处理Oracle 10g数据库中的CLOB字段。 #### 一、环境配置 为了确保项目能够顺利运行,首先需要搭建好开发环境。本示例中使用的环境配置如下: 1. *...

    spring+hibernate操作oracle的clob字段

    在J2EE开发中,处理大数据对象(如大文本或二进制数据)时,Oracle数据库的CLOB...通过以上配置和操作,你可以在Spring和Hibernate的环境中顺利地对Oracle数据库的CLOB字段进行读写,满足J2EE应用中的大数据存储需求。

    Spring+Hibernate处理Oracle lob字段(一)

    在本文中,我们将深入探讨如何在Java环境下,利用Spring和Hibernate框架处理Oracle数据库中的LOB(Large Object)字段。LOB字段通常用于存储大体积的数据,如文本、图片或视频。在实际开发中,处理这类数据时可能会...

    spring1.2+hibernate3对大字段的处理实例,供大家学习与交流,可直接运行

    这个压缩包文件"spring1.2+hibernate3对大字段的处理实例"提供了一个具体的案例,演示了如何在Spring 1.2和Hibernate 3框架下解决这个问题。下面我们将深入探讨这些知识点。 首先,Spring 1.2是一个轻量级的Java...

    spring1.2+hibernate2对大字段的处理实例

    在Spring1.2和Hibernate2的环境下,我们可以采用几种策略来处理大字段: 1. **Blob/Clob类型**:对于大文本或二进制数据,可以使用数据库的Blob(Binary Large Object)和Clob(Character Large Object)类型。...

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

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

    oracle+hibernate 处理blob +uploadify实例

    &lt;property name="photo" type="org.springframework.orm.hibernate3.support.BlobByteArrayType"&gt; &lt;/hibernate-mapping&gt; ``` 接下来,我们关注上传过程的Java代码。这里使用了`ServletFileUpload`类,它是...

    hibernate存取oracle的clob

    确保 Hibernate 的配置文件(通常为 `hibernate.cfg.xml` 或者 Spring 的配置文件)正确配置了数据库连接信息,以及支持 CLOB 类型的配置。 **2.2 实体类设计** 假设我们有一个用户实体类 `User`,其中包含一个 ...

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

     文件数据存储在Blob类型的FILE_CONTENT表字段上,在Spring中采用OracleLobHandler来处理Lob字段(包括Clob和Blob),由于在程序中不需要引用到oracle数据驱动程序的具体类且屏蔽了不同数据库处理Lob字段方法上的...

    hibernate使用中与各种数据库字段类型对应类型训练

    - **null值处理**:对于非空约束的字段,Hibernate会自动处理null值,避免插入无效数据。 - **SQL查询**:除了使用HQL(Hibernate Query Language)和Criteria API,还可以使用原生SQL进行复杂查询。 - **缓存机制...

    java中(注解符)处理Clob(blob)类型

    其中,@Column 注解用于指定该字段的名称和类型,而 @Type 注解用于指定该字段的类型为 BlobByteArrayType,这是一个 Spring 提供的特殊类型,用于处理大规模二进制数据。 三、在 Spring 中配置 Blob 类型 在 ...

    简单易行:Spring中操作LOB字段案例

    在Spring框架中,LOB(Large Object)字段通常用于存储大数据,如BLOB(Binary Large Object)用于二进制数据,如图片或文档,CLOB(Character Large Object)...这些知识对于在Spring环境下处理大数据存储至关重要。

    Hibernate 多数据库支持解决方案

    未来 Hibernate是一个强大的Java持久化框架,它允许开发者将对象模型与关系数据库进行映射,从而简化了数据库操作。...通过良好的设计和测试,可以确保Hibernate应用程序在多种数据库环境下稳定运行。

    hibernate注解

    此时,可以使用`AnnotationSessionFactoryBean`来配置SessionFactory,这样就可以在Spring环境中无缝地使用Hibernate注解。 ```xml &lt;!-- Spring 配置文件示例 --&gt; class="org.springframework.orm.hibernate5....

    Spring中文帮助文档

    12.6.1. 在Spring环境中建立JPA 12.6.2. JpaTemplate 和 JpaDaoSupport 12.6.3. 基于原生的JPA实现DAO 12.6.4. 异常转化 12.7. 事务管理 12.8. JpaDialect III. The Web 13. Web MVC framework Web框架 13.1...

    把图片以数据的形式保存在数据库 上传图片

    7. **性能优化**:由于将图片保存为数据流可能导致数据库体积增大,影响查询性能,有时会采用BLOB或CLOB字段来存储大对象。但更优的做法是使用文件存储系统(如Amazon S3或自建的文件服务器),只在数据库中存储文件...

    Spring API

    12.6.1. 在Spring环境中建立JPA 12.6.2. JpaTemplate 和 JpaDaoSupport 12.6.3. 基于原生的JPA实现DAO 12.6.4. 异常转化 12.7. 事务管理 12.8. JpaDialect III. The Web 13. Web MVC framework Web框架 13.1...

    ssh 导入导出excel+百度富文本编辑器+highcharts

    SSH(Spring、Struts、Hibernate)是一个经典的Java Web开发框架,它将Spring的IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)、Struts的MVC(Model-View-Controller,...

    hibernate-annotations-3.4.0.GA架包和slf4j-1.5.8架包

    1. **实体注解**:如@Entity定义一个Java类为数据库中的表,@Table指定对应的表名,@Id标识主键字段,@GeneratedValue处理主键自动生成等。 2. **属性映射**:使用@Column注解来定义字段与列的映射,可以设置长度、...

    java的SSH框架

    - **Hibernate与Spring集成**: 在Spring环境中使用Hibernate。 - **Struts的加入**: 将Struts框架与Spring和Hibernate集成,形成SSH(即Struts-Spring-Hibernate)架构。 - **事务**: 包括局部事务和分布式事务的处理...

Global site tag (gtag.js) - Google Analytics