java+hibernate开发时遇到的一些问题及解决办法

1.could not execute batch; SQL [insert into tb_student (addr, age, company, email, level, mobile, name, no, remarks, sex, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]

问题出现情况:在save时出现的异常。

问题根本原因:字段赋值时有不符合数据库字段设计的值,比如长度超过数据库字段设计的最大值。

2.org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

问题出现情况:在save时出现的异常。

问题根本原因:数据库更新失败,在此处问题具体原因是因为在界面上ID字段是隐藏属性,对象的ID属性设置为自动生成,在save时界面传到controller中的对象ID属性为空,而不是null,因此数据库执行update语句,而不是insert语句。所以导致执行出错。

解决办法:判断对象id是否为空,为空的话设置为null.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统可作为OA、网站、电子政务、ERP、CRM、APP后台等基于B/S架构的应用软件系统的快速开发框架。 一、特色功能 1、采用Spring MVC的静态加载缓存功能,在首页将Javascript文件、CSS文件和图片等静态资源文件加载进来放进内存,极大提高ExtJS的加载速度。 2、三种皮肤主题:经典、灰色和海王星,支持多浏览器和多分辨率。 3、分别封装了模型层、控制层、业务逻辑层和数据持久层的通用操作模块,层次分明,大大减少代码冗余,二次开发效率高。 4、系统是公司多个项目的基础框架,稳定性好,支持大并发。 二、主要功能 1、采用ExtJS 4.2.1.883无限制版本,放心用于网站开发。 2、ExtJS富文本编辑器增加修改信息。 3、ExtJS的HtmlEditor的图片文件上传插件。 4、Grid列表和表单,包含添加、删除、批量删除、修改、查看、图片查看和按条件查询列表等功能。 5、导入导出Excel数据,支持xlsx和xls文件。 6、资源管理(菜单管理)。 7、用户管理和部门管理。 8、权限管理。不仅可管理各个功能模块的权限,也可以管理功能模块里的页面按钮权限。 9、报表统计。也可以嵌入其他报表工具插件。 10、采用开源的互动地图Javascript库Leaflet,处理自定义在线地图。Panel里包含2个组件,在2个组件间传递参数显示数据。 三、开发工具和采用技术 1、开发工具:Eclipse、MyEclipse和其他IDE。 2、采用Spring 3中最新最稳定的Spring MVC 3.2.8版本。 3、采用Hibernate 4.1.7。Spring MVC 3.2.8支持的最高Hibernate版本是4.1.7,更高的Hibernate版本和Spring MVC 3.2.8组合会遇到兼容问题。 4、Hibernate集成二级缓存框架Ehcache。 5、数据库是MySQL、Oracle和SQL Server,Hibernate的Dialect可使程序移植到其他数据库。 6、采用开源的互动地图Javascript库Leaflet,处理自定义在线地图。 7、采用Google Guava Collections,性能高于Apache Collections。 更多下载查看文档。
系统可作为OA、网站、电子政务、ERP、CRM、APP后台等基于B/S架构的应用软件系统的快速开发框架。 一、特色功能 1、采用Spring MVC的静态加载缓存功能,在首页将Javascript文件、CSS文件和图片等静态资源文件加载进来放进内存,极大提高ExtJS的加载速度。 2、三种皮肤主题:经典、灰色和海王星,支持多浏览器和多分辨率。 3、分别封装了模型层、控制层、业务逻辑层和数据持久层的通用操作模块,层次分明,大大减少代码冗余,二次开发效率高。 4、系统是公司多个项目的基础框架,稳定性好,支持大并发。 二、主要功能 1、采用ExtJS 4.2.1.883无限制版本,放心用于网站开发。 2、ExtJS富文本编辑器增加修改信息。 3、ExtJS的HtmlEditor的图片文件上传插件。 4、Grid列表和表单,包含添加、删除、批量删除、修改、查看、图片查看和按条件查询列表等功能。 5、导入导出Excel数据,支持xlsx和xls文件。 6、资源管理(菜单管理)。 7、用户管理和部门管理。 8、权限管理。不仅可管理各个功能模块的权限,也可以管理功能模块里的页面按钮权限。 9、报表统计。也可以嵌入其他报表工具插件。 10、采用开源的互动地图Javascript库Leaflet,处理自定义在线地图。Panel里包含2个组件,在2个组件间传递参数显示数据。 三、开发工具和采用技术 1、开发工具:Eclipse、MyEclipse和其他IDE。 2、采用Spring 3中最新最稳定的Spring MVC 3.2.8版本。 3、采用Hibernate 4.1.7。Spring MVC 3.2.8支持的最高Hibernate版本是4.1.7,更高的Hibernate版本和Spring MVC 3.2.8组合会遇到兼容问题。 4、Hibernate集成二级缓存框架Ehcache。 5、数据库是MySQL、Oracle和SQL Server,Hibernate的Dialect可使程序移植到其他数据库。 6、采用开源的互动地图Javascript库Leaflet,处理自定义在线地图。 7、采用Google Guava Collections,性能高于Apache Collections。 更多下载查看文档。
### 回答1: 中级Java开发工程师需要具备良好的编程技能,熟悉Java语言,熟悉常用的开发技术和工具,包括Java EE,Spring,Hibernate等;理解常用的设计模式,能够运用合适的技术来解决复杂的业务问题;具备良好的文档编写能力;能够独立完成模块级功能的开发;能够参与系统的整体设计和开发调试;具备良好的沟通能力和团队合作精神;学习能力强,能够快速接受新技术。 ### 回答2: Java中级开发工程师是指在Java开发领域具备一定的经验和技能,能够独立完成中等难度的开发任务,并能够与团队成员协作完成项目。 首先,Java中级开发工程师需要具备扎实的Java基础知识和编程能力,包括面向对象的理解、Java核心类库的使用、IO操作、多线程编程等。同,对于常用的开发框架和工具也要有一定的掌握,比如Spring框架、Hibernate、MyBatis等。 其次,Java中级开发工程师需要具备良好的数据库设计与操作能力,能够独立设计和优化数据库结构,熟悉SQL语言,能够编写高效的数据库查询语句和存储过程。 再次,Java中级开发工程师还应该具备良好的团队协作能力和沟通能力,能够与其他团队成员有效地合作,并能够准确理解和执行项目需求。 此外,Java中级开发工程师需要具备一定的问题解决能力和学习能力,能够快速定位和解决开发过程中遇到问题,并善于学习新的技术和知识,保持与行业的同步。 总结而言,Java中级开发工程师需要掌握扎实的Java编程基础,熟练使用开发框架和工具,具备优秀的数据库设计和操作能力,具备良好的团队协作和沟通能力,同具备问题解决能力和学习能力。 ### 回答3: Java中级开发工程师是一个对Java编程语言具有熟练掌握的职位。对于一名Java中级开发工程师,具备以下要求: 1. 扎实的Java编程基础:拥有扎实的Java编程基础,熟悉Java语法、面向对象编程以及常用的核心类库等。 2. 熟悉Java开发环境和工具:熟悉常用的Java开发环境和工具,如Eclipse、IntelliJ IDEA等,具备独立进行Java程序的开发和调试能力。 3. 掌握常用的Java框架和技术:熟悉常用的Java开发框架,如Spring、Hibernate等,并具备基本的使用经验。了解并掌握常用的开发技术,如Web开发、数据库开发等。 4. 熟悉前端开发技术:具备一定的前端开发技术,如HTML、CSS、JavaScript等,能够进行前后端的数据交互。 5. 理解软件开发流程和常用设计模式:了解软件开发的基本流程,包括需求分析、系统设计、编码、测试和维护等。了解常用的设计模式,并能够在实际开发中灵活运用。 6. 具备良好的问题解决能力和团队协作能力:能够独立解决常见的技术问题,具备良好的学习能力和问题分析能力。同,具备良好的团队协作能力,能够与他人进行良好的沟通和协作合作。 如果你希望成为一名Java中级开发工程师,希望通过这些要求来提升自己的技能和能力,建议在工作中积极主动地学习和实践,并不断提升自己的编程能力和解决问题的能力。此外,参加一些与Java开发相关的培训或认证,如Java SE证书,也能够提高自己的竞争力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值