开发者社区> yichudu> 正文

Hibernate 常见异常

简介: 异常信息:java.net.SocketException: Broken pipe原因:Mysql服务器默认的“wait_timeout”是8小时,也就是说一个connection空闲超过8个小时,Mysql将自动断开该connection,而C3P0并不知道该connection已经失效,如果这时有Client请求connection,C3P0将该失效的Connection提供给Cli
+关注继续查看
微笑异常信息:java.net.SocketException: Broken pipe
原因:Mysql服务器默认的“wait_timeout”是8小时,也就是说一个connection空闲超过8个小时,Mysql将自动断开该connection,而C3P0并不知道该connection已经失效,如果这时有Client请求connection,C3P0将该失效的Connection提供给Client,将会造成上面的异常。
解决方法
<!-- 每次从连接池中拿connection时,是否验证 -->
<property name="hibernate.c3p0.testConnectionOnCheckout">true</property>
或
<!-- connection的超时时间,mysqlServer默认为8小时,这里设为x表示x秒没用过的connection就丢弃,防止异常 -->
<property name="hibernate.c3p0.timeout">25000</property>

微笑异常信息:ids for this class must be manually assigned before calling save():

原因:某些字段在数据库中设置为 not null,而在insert into时该字段为null。

解决办法:给相应字段赋值。

注意:id为int或long自增时,pojo的这个字段可以随便设,数据库服务端会保证自增,但不能为null。有点坑。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
14305 0
org.hibernate.hql.ast.QuerySyntaxException is not mapped异常
解决方案: 这一般是HQL语句错误 因为Hibernate是对类查询的 ,而不是对数据库表进行查询,from是实体类而不是表名! 例如: String hql = “from Employee e where e.
707 0
React native开发中常见的错误
react native环境搭建请移步:react native环境搭建 这里说说react native创建完成之后,运行中出现的常见问题, 问题1: java.lang.RuntimeException: SDK location not found. Define location with sdk.dir in the local.properties file or w
3899 0
React Native 常见问题
React Native开发逐渐更多的被应用到实际的开发过程中,以后会有越来越的应用使用React Native相关技术,关于使用过程中的问题,可以在http://reactnative.cn/ 以及搜索引擎找到,这里补充下自己开发过程中出现的几个问题,而不容易找到解决方案的。
751 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
29763 0
Java之Hibernate常见面试题
  Java之Hibernate常见面试题   1、hibernate的inverse属性的作用?   解决方案一,按照Object[]数据取出数据,然后自己组bean   解决方案二,对每个表的bean写构造函数,比如表一要查出field1,field2两个字段,那么有一个构造函数就是Bean(type1filed1,type2field2),然后在hql里面就可以直接生成这个bean了。
935 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
21004 0
【框架】[Hibernate]构架知识点常见操作
【框架】[Hibernate]构架知识点常见操作
17 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
23615 0
+关注
619
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载