软件环境:
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框架结合的情况下,有效地处理Oracle 10g数据库中的CLOB字段。 #### 一、环境配置 为了确保项目能够顺利运行,首先需要搭建好开发环境。本示例中使用的环境配置如下: 1. *...
在J2EE开发中,处理大数据对象(如大文本或二进制数据)时,Oracle数据库的CLOB...通过以上配置和操作,你可以在Spring和Hibernate的环境中顺利地对Oracle数据库的CLOB字段进行读写,满足J2EE应用中的大数据存储需求。
在本文中,我们将深入探讨如何在Java环境下,利用Spring和Hibernate框架处理Oracle数据库中的LOB(Large Object)字段。LOB字段通常用于存储大体积的数据,如文本、图片或视频。在实际开发中,处理这类数据时可能会...
这个压缩包文件"spring1.2+hibernate3对大字段的处理实例"提供了一个具体的案例,演示了如何在Spring 1.2和Hibernate 3框架下解决这个问题。下面我们将深入探讨这些知识点。 首先,Spring 1.2是一个轻量级的Java...
在Spring1.2和Hibernate2的环境下,我们可以采用几种策略来处理大字段: 1. **Blob/Clob类型**:对于大文本或二进制数据,可以使用数据库的Blob(Binary Large Object)和Clob(Character Large Object)类型。...
一个完整的工程,主要功能为:spring+hbernate对clob、blob字段的处理 包括:数据脚本、典型的SSH框架处理,以及spring、hibernate数据批量保存等功能源码、所用到的lib包 数据环境为:oracle 10G 开发:Mycelipse5.1...
<property name="photo" type="org.springframework.orm.hibernate3.support.BlobByteArrayType"> </hibernate-mapping> ``` 接下来,我们关注上传过程的Java代码。这里使用了`ServletFileUpload`类,它是...
确保 Hibernate 的配置文件(通常为 `hibernate.cfg.xml` 或者 Spring 的配置文件)正确配置了数据库连接信息,以及支持 CLOB 类型的配置。 **2.2 实体类设计** 假设我们有一个用户实体类 `User`,其中包含一个 ...
文件数据存储在Blob类型的FILE_CONTENT表字段上,在Spring中采用OracleLobHandler来处理Lob字段(包括Clob和Blob),由于在程序中不需要引用到oracle数据驱动程序的具体类且屏蔽了不同数据库处理Lob字段方法上的...
- **null值处理**:对于非空约束的字段,Hibernate会自动处理null值,避免插入无效数据。 - **SQL查询**:除了使用HQL(Hibernate Query Language)和Criteria API,还可以使用原生SQL进行复杂查询。 - **缓存机制...
其中,@Column 注解用于指定该字段的名称和类型,而 @Type 注解用于指定该字段的类型为 BlobByteArrayType,这是一个 Spring 提供的特殊类型,用于处理大规模二进制数据。 三、在 Spring 中配置 Blob 类型 在 ...
在Spring框架中,LOB(Large Object)字段通常用于存储大数据,如BLOB(Binary Large Object)用于二进制数据,如图片或文档,CLOB(Character Large Object)...这些知识对于在Spring环境下处理大数据存储至关重要。
未来 Hibernate是一个强大的Java持久化框架,它允许开发者将对象模型与关系数据库进行映射,从而简化了数据库操作。...通过良好的设计和测试,可以确保Hibernate应用程序在多种数据库环境下稳定运行。
此时,可以使用`AnnotationSessionFactoryBean`来配置SessionFactory,这样就可以在Spring环境中无缝地使用Hibernate注解。 ```xml <!-- Spring 配置文件示例 --> class="org.springframework.orm.hibernate5....
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或自建的文件服务器),只在数据库中存储文件...
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(Spring、Struts、Hibernate)是一个经典的Java Web开发框架,它将Spring的IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)、Struts的MVC(Model-View-Controller,...
1. **实体注解**:如@Entity定义一个Java类为数据库中的表,@Table指定对应的表名,@Id标识主键字段,@GeneratedValue处理主键自动生成等。 2. **属性映射**:使用@Column注解来定义字段与列的映射,可以设置长度、...