- 浏览: 702425 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (362)
- java基础 (33)
- html/css+div/javascript (17)
- Ajax/XML/JSON/XSL (7)
- JQuery (11)
- Extjs (1)
- JSP/Servlet (19)
- MVC模式 (4)
- struts 1 (17)
- Struts 2.3.4 (17)
- Spring 3.2 (26)
- Springmvc (3)
- Hibernate 4.1 (21)
- ibatis (6)
- Velocity模板语言 (2)
- Rose框架 (5)
- EJB (1)
- JUnit测试 (2)
- 数据库DB (24)
- 重构 / 设计模式 (3)
- 开发工具IDE (37)
- 数据结构与算法设计 (3)
- Android (12)
- Linux (4)
- bug集合 (29)
- 缓存技术(redis) (3)
- Lucene全文索引 (15)
- maven3.0.5 (4)
- 小工具集合 (18)
- 面试题 (5)
- 闲聊 (11)
- 其他 (4)
- 接口API (2)
- work (2)
- Flex (0)
- JMS (1)
- 开源项目集合 (1)
- 技术博客 (1)
- 分类04 (0)
- 分类05555 (0)
最新评论
-
小小小羊:
好屌...
java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$Refle -
liubinli2005:
这个可以脱底spring。单独使用吗?
DAO层:jade -
cangbaotu:
我觉得对于开发者来说,能脚本化编写爬虫是一件挺开心的事情( ̄▽ ...
网页爬取 -
asjava:
很好的文章, 但每段代码清单都重复了一次.
spring 事务 -
xia635317478:
jethypc 写道验证码的session无法传过去啊 还是我 ...
登陆验证码(struts2实现)
在spring中如何处理oracle大字段
在spring中采用OracleLobHandler来处理oracle大字段(包括clob和blob),则在程序中不需要引用oracle的特殊类,从而能够保证支持我们的代码支持多数据库。
所以在Spring的主配置文件xx.xml中的配置SessionFactory的bean中配置:
----------------------------------------------------------------------
<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor" lazy-init="true" autowire="default" dependency-check="default"/> <bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true" autowire="default" dependency-check="default"> <property name="nativeJdbcExtractor" ref="nativeJdbcExtractor"/> </bean> <bean id="sessionFactory" class="org.hibernate.cfg.SWSSessionFactoryBean" lazy-init="false" autowire="default" dependency-check="default"> ... <property name="lobHandler"> <ref bean="oracleLobHandler"/> </property> ... </bean>
----------------------------------------------------------------------
大家可能已经注意到 nativeJdbcExtractor和 lobHandler 都设置为 lazy-init="true",
这是因为 nativeJdbcExtractor需要通过运行期的反射机制获取底层的 JDBC 对象,
所以需要避免在 Spring 容器启动时就实例化这两个 Bean。
<注:上面的SWSSessionFactoryBean是被重写过的,继承AnnotationSessionFactoryBean>
1、首先数据表中的clob类型对应java持久化类的String类型;而blob类型对应byte[]类型
2、1.定义hibernate标签时,持久化类中对应clob类型的属性的hibernate type应为org.springframework.orm.hibernate.support.ClobStringType;而对应blob类型的属性的hibernate type应为org.springframework.orm.hibernate.support.BlobByteArrayType。
2.如果通过spring 注解功能配置PoJo类时,在该大字段属性的getXXX()方法前面加上注解:
----------------------------------------------------------------------
public String xxx; ... @Lob @Type(type="org.springframework.orm.hibernate3.support.ClobStringType") @Column(length=10000) public String getXXX () { return xxx; }----------------------------------------------------------------------
注释:
@Lob:大字段,lob包括blob和clob,其中clob用于纯文本的,blob用于非文本的,比如图片;
@Type(type="org.springframework.orm.hibernate3.support.ClobStringType"):Oracle JDBC
不允许流操作以批量方式执行,而Oracle CLOB采用流机制作为数据读写方式,两则冲突,
所以用这个注解解决,可见spring对LOB有很好的支持,如果用到blob,可以把support后
面的type改掉。当然也可以设置<prop key="hibernate.jdbc.batch_size">0</prop>,不过这个
方法比较不好,会影响效率,不推荐。
@Column(length=10000) :这个简单,就是限制长度,最大值多少没亲自侧过,理论上4G,但在
NTFS文件系统或许不止4G,没试过。
3、以后访问这些对应clob和blob类型的属性时,按普通属性getorSet处理,不需要特别编码。
发表评论
-
spring 事务
2014-03-31 11:14 3449Spring 事务异常回滚 ... -
Spring定时器(Quartz)
2013-08-20 22:54 2812Spring定时器(Quartz) 1. ... -
模拟Spring的 IOC 和 DI
2013-08-15 21:42 1145模拟Spring的 IOC 和 DI 1.BeanFactor ... -
spring任务调度
2013-07-18 17:10 1031spring任务调度 1,一个job对应一个处理类(bean ... -
获取ApplicationContext对象的几种方法
2013-01-29 10:47 5589方法一:在初始化时保 ... -
Spring 如何读取properties文件
2013-01-28 16:29 1542Spring 如何读取properties文件 ------ ... -
springSecurity的登录验证
2013-01-27 20:57 2470springSecurity的登录验证 一、Springse ... -
Spring事务配置的五种方式
2013-01-11 15:10 1044Spring事务配置的五种方式 参考1:http://w ... -
ehcache缓存的使用
2013-01-11 15:10 1031ehcache缓存的使用 1.ehcache缓存介绍:h ... -
spring事务管理
2012-12-06 14:34 673spring管理事务提交 http: ... -
spring中配置log4j
2012-11-10 16:30 1651log4j 和 slf4j slf4j和log4j用于做日志 ... -
spring每个包的详解
2012-11-09 16:53 977spring每个包的详解 spring.jar 是包含有完 ... -
当Spring管理Struts2时配置的scope="prototype"
2012-11-05 10:36 1100Spring scope="prototype&q ... -
web.xml配置加载spring
2012-11-05 10:36 1029web.xml配置加载spring 第一种加载applica ... -
Spring中配置数据源
2012-11-04 20:08 1056Spring中配置数据源 ... -
DelegatingActionProxy
2012-10-31 09:53 1598DelegatingActionProxy org.spri ... -
Spring IOC实例化了哪些对象
2012-10-30 09:25 1450Spring IOC实例化了哪些对象 启动servlet容 ... -
<aop:pointcut />
2012-10-29 17:00 1020<aop:config> <aop:po ... -
SSH项目解决乱码问题
2012-10-10 17:55 1221SSH解决乱码问题 第一种:利用spring的filte ... -
sping学习
2012-10-10 17:43 992spring知识点学习 、
相关推荐
MyBatis 处理 CLOB、BLOB 类型数据是指在使用 MyBatis 框架时,如何正确地处理大字段类型的数据。CLOB(Character Large OBject)和 BLOB(Binary Large OBject)都是大字段类型,用于存储大量的数据。 CLOB 类型...
在处理大数据字段时,通常涉及到的是文本、图片或者其他大型二进制数据,这些数据不适合直接存储在数据库的普通字段中,因为这可能会导致性能下降,甚至可能超出数据库字段的限制。在Spring1.2和Hibernate2的环境下...
在处理大字段时,Spring的事务管理能力可以帮助我们确保数据的一致性。 其次,Hibernate 3是一个流行的Java持久化框架,它将对象关系映射(Object-Relational Mapping, ORM)技术应用于数据库操作,使得开发人员...
### Spring与Hibernate处理大字段(CLOB/BLOB) 在企业级应用开发中,经常会遇到需要存储大量文本或二进制数据的情况,这时就需要用到数据库的大字段类型如CLOB(Character Large Object)和BLOB(Binary Large ...
DBLink不适合处理大字段,因为它存在缓冲区限制。为了简化使用,可以通过创建视图和同义词来封装DBLink的细节,为用户提供统一的接口。 3. **ROWID** ROWID是Oracle中每个表记录的唯一标识,类似于物理地址,它...
一个完整的工程,主要功能为:spring+hbernate对clob、blob字段的处理 包括:数据脚本、典型的SSH框架处理,以及spring、hibernate数据批量保存等功能源码、所用到的lib包 数据环境为:oracle 10G 开发:Mycelipse5.1...
7. **处理大字段问题**:由于jbpm可能包含大字段如字符串,需要配置string-max,以适应Hibernate的限制。 8. **配置filter**:配置configration和template过滤器,确保流程定义的正确加载和存储。 9. **编写人机...
5. **处理大数据字段(string-max)**:Jbpm中可能存在大字段长度的问题,需要在配置文件中设置合适的string-max值,以容纳较长的数据。 6. **整合Spring**:使用Spring作为集成的桥梁,通过Spring的依赖注入和AOP...
5. **处理大字段问题** - 针对JBPM中的大字段问题,可以采用增加数据库字段长度或者使用更高效的数据类型等方式来解决。此外,还需要对相关的Hibernate映射文件进行相应的调整,确保数据能够正确存储和读取。 6. *...
异构数据库的导入导出一直是个大难题,一般的工具配置复杂,尤其是不支持LOB这样的大字段数据,我们的这个工具不仅配置简单,而且具有以下几个特点。 1、速度非常快,这个因为取决于系统环境,这个只有谁用...
3. **核心API**:掌握Java标准库中的重要API,如集合框架、IO流、多线程、异常处理和反射等。 4. **进阶技术**:了解设计模式、JVM调优、Java并发编程、网络编程和数据库连接(JDBC)等。 5. **框架与工具**:熟悉常用...
13. **SEO优化**:提高网站在搜索引擎中的排名,增加流量。 以上是基于标题和描述的初步分析,具体实现和技术栈需根据实际项目内容来确定。如果"ssm药源购物网站lw+ppt.zip"文件提供了更多细节,那么可以进一步深入...
1. **毕业设计**:这可能是一个学生在完成学业时的项目作品,展示了其在软件开发和系统设计方面的技能和理解。 2. **Java源码**:平台的主要编程语言是Java,这表明它利用了Java的稳定性和跨平台特性,以及丰富的...