posts - 22, comments - 17, trackbacks - 0, articles - 15
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

spring+ibatis (MySql)操作clob blob

Posted on 2012-07-18 14:45 码农cz 阅读(1231) 评论(0)  编辑  收藏
spring+ ibatis 插入clob blob时
在网上找了几个例子,有点好用,有的报错
报错如下:
1.Spring transaction synchronization needs to be active for setting values in iBATIS TypeHandlers that delegate to a Spring LobHandler

2. Cause: java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed

大体就这两个
总的说来,就是因为事务的配置问题.
 1<!-- 事务管理 -->
 2    <bean id="transactionManager2" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
 3        <property name="dataSource" ref="dataSource"></property>
 4    </bean>
 5
 6    <!-- 声明式事务管理 -->
 7    <bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"
 8          abstract="true">
 9        <property name="transactionManager" ref="transactionManager2"></property>
10        <property name="transactionAttributes">
11            <props>
12                <prop key="add*">PROPAGATION_REQUIRED</prop>
13                <prop key="edit*">PROPAGATION_REQUIRED</prop>
14                <prop key="*">readOnly</prop>
15            </props>
16        </property>
17    </bean>
18
19    <bean id="sqlMapClient2"
20          class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
21        <property name="dataSource">
22            <ref local="dataSource"/>
23        </property>
24        <property name="configLocation">
25            <value>classpath:SqlMapConfig.xml</value>
26        </property>
27    </bean>
注意:第14行
如果,你的添加或更新操作不在add*和edit*的范围内,而你又采用了倒霉的14行配置的时候,你的麻烦就来了......
解决方法有很多,删掉啊,换成PROPAGETION_REQUIRED啊都可以....推荐第二种吧....

1 <bean id="foodService" parent="baseTransactionProxy">
2        <property name="target">
3            <bean class="com.bigcblob.impl.FoodServiceImpl">
4                <property ref="foodDao" name="foodDAO"/>
5            </bean>
6        </property>
7    </bean>

你的服务类如此配置....
额....不管你恶心没恶心,反正我是恶心了.


只有注册用户登录后才能发表评论。


网站导航: