学习应用了struts和hibernate、spring进行javaweb开发已经一个多月了,在做招聘信息的小项目中出现过很多报错,现在把这些报错当作笔记记载下来,其中一些的后台报错没有记录下来,只好用语言描述一下。下面就是我整理的错误:
1.
笔记:在用hibernate时,用现成的表的时候,表中的字段必须都包括,否则会报错(这个问题在后期的spring集成中没有出现,对数据库中表操作
为update一定没事。注:整个项目是应用maven生成的,所以在pom.xml文件中对数据库的修改由create-drop为update,同时项目是基于svn下载
的脚本架编写的)
2.
filter过滤器中的是sessin的打开,*action,*.jsp;(主要针对于过滤jsp的session打开)
3.
如果在struts2和hibernate中报没有实体错误时,可以写
if(entity != null){执行程序段;}(没有什么不理解的)
4.
FreeMarker template error!这个问题很诡异,一般由空值引起,准确的说是对象传递过程中出现错误.(这个问题当时困扰了我一天!)
5.
id 报错(在后面会提到)
6.
增加hidden name="entity.id"时产生错误,不能向数据库插入了,原因在于id不能为空,在entity类里,setId里面这样写
if (id != null && !id.isEmpty()) {
this.id = id;
}
(这里的id是String型.)
7.
org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
这个异常就当时做的,发现是由于数据库字段类型与hibernate中,bean类对象的属性类型不匹配
8.
HTTP ERROR: 404
NOT_FOUND
RequestURI=/mywork/citySave
解答:不允许jsp直接提交form表单到action要通过struts2初始化,即forward(action)到jsp
9.
Nested in org.apache.jasper.JasperException: tag
'select', field 'list', name 'job.city.id': The requested list key 'cities' cou
ld not be resolved as a collection/array/map/enumeration/iterator type. Example:
people or people.{name} - [unknown location]:
tag 'select', field 'list', name 'job.city.id': The requested list key 'cities'
could not be resolved as a collection/array/map/enumeration/iterator type. Examp
le: people or people.{name} - [unknown location]
解答:与spring集成时要核对准:jobDao,cityDao;两者不能少(spring配置文件中bean属性)
10.
could not initialize proxy - no Session
解答:延迟加载问题:要设为false就没问题了
11.
<many-to-one name="job" column="job_id" class="job.Job" />
请注意:class="job.Job"中的包.类
12.
photoDao在配置文件里找不到
错误:在Bean没有写上parent="dao"即sessionFactory
13.
问题:在上传图片或文件时,出现这种错误:Invalid field value for field "photoFile";并且在后台没有报错,没有异常显示
原因:在标签中<s:form action="photoUpload" method="post" >少了这个enctype="multipart/form-data"
14.
java.lang.IllegalArgumentException: id to load is required for loading
错误为:要查询的参数与传入的参数不一致,或是因为参数为null
15.
问题:Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1; nested exception is
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected:1
解决:public void setId(String id) {
if(id != null && !id.isEmpty()){
this.id = id;
}
}
分享到:
相关推荐
总之,"struts2 hibernate spring整合(出错的)"意味着开发者可能在整合过程中遇到了困难,需要对每个框架的配置、相互间的配合以及常见的问题有深入理解,才能找出并修复错误。这通常需要对Java Web开发有扎实的基础...
【基于Struts+Hibernate+Spring的用户管理系统】是一种常见的企业级Web应用架构,它整合了三个主流的Java技术框架,以构建高效、可维护性高的系统。Struts提供了MVC(Model-View-Controller)设计模式,使得业务逻辑...
在现代软件开发过程中,特别是Java Web应用开发领域,Struts2、Hibernate与Spring三者的集成使用非常常见。这种集成不仅可以提高应用程序的可维护性和扩展性,还能极大地简化开发流程。接下来将详细介绍如何在...
SSH(Struts2+Spring+Hibernate)框架整合是Java Web开发中常见的一种技术栈,能有效地提高开发效率和代码质量。 Struts2作为MVC框架,主要负责处理HTTP请求,控制应用程序的流程,提供视图和控制器的分离。它的...
在Java开发领域,Struts2、Spring和Hibernate这三大框架的整合,简称SSH2,是常见的企业级应用开发模式。MyEclipse作为一款强大的Java集成开发环境,提供了便捷的SSH2整合支持。以下是详细的搭建步骤及知识点解析: ...
SSH,即Spring、Struts和Hibernate的组合,是Java开发中的经典企业级应用框架,用于构建高效、可扩展的Web应用程序。这三种技术在实际使用过程中可能会遇到各种错误,了解并解决这些错误对于开发者来说至关重要。 ...
SSH框架整合是Java Web开发中常见的一种技术组合,由Struts2、Spring4和Hibernate4三个组件构成。这个整合旨在实现MVC(Model-View-Controller)架构模式,提高应用程序的可维护性和可扩展性。下面我们将详细探讨这...
SSH(Struts2、Spring、Hibernate)是企业级应用开发的常见选择,这主要是因为它们各自在表现层、业务层和数据持久化层的优势。 Struts2是MVC(Model-View-Controller)架构模式的一个实现,它负责处理用户请求,...
【标题】:“Hibernate、Spring和Struts工作原理及使用理由” 【内容】: Hibernate是一个流行的Java持久化框架,它的核心工作原理主要包括以下步骤: 1. **读取并解析配置文件**:Hibernate通过读取hibernate....
在这个整合实例中,开发者还需要关注如何配置各个框架的XML配置文件(如Hibernate的hibernate.cfg.xml,Spring的applicationContext.xml,Struts2的struts.xml等),以确保它们能正确地相互协作。此外,错误处理、...
Struts2、Hibernate和Spring是Java开发中常用的三大框架,它们各自负责Web应用的不同层面:Struts2专注于表现层管理,Hibernate处理数据持久化,而Spring则作为一个全面的框架,涵盖了依赖注入、事务管理、安全控制...
- **资源管理**:Spring可以帮助管理Struts2中的资源,如数据源、缓存等。 ### SSH框架组合 SSH(Struts2、Spring、Hibernate)是一种常见的Java Web开发框架组合。Hibernate作为持久层框架,负责与数据库的交互,...
Struts2、Spring和Hibernate是Java企业级应用开发中的三大框架,它们的组合,通常被称为SSH(Struts2 + Spring + Hibernate)。这个“struts2+spring2.5+hibernate3.2中文开发手册”是针对这些框架的详细指南,旨在...
在Java Web开发中,Spring、Hibernate和Struts2(简称SSH)是一个常见的MVC框架组合,用于构建高效、可维护的Web应用程序。这三个框架各自专注于不同的领域:Spring负责依赖注入和管理业务逻辑,Hibernate处理持久层...
Struts、Hibernate、Spring、XDoclet、Ant和Log4j是Java开发中常见的六个重要组件,它们在企业级应用开发中发挥着关键作用。这些技术的整合为开发者提供了高效、灵活和可维护的解决方案。 **Struts** 是一个基于MVC...
【标题】"spring+struts2+hibernate完整项目初学者进阶练习"是一个针对Java初学者设计的进阶项目,旨在帮助他们熟练掌握三大主流Java Web开发框架——Spring、Struts2和Hibernate的集成应用。这个项目是基于MySQL...
本合集包含了一些最流行的框架实例:Spring、SpringMVC、MyBatis、Struts2以及Hibernate。以下是对这些框架的详细介绍: 1. **Spring**: Spring 是一个全面的后端开发框架,它提供了依赖注入(DI)和面向切面编程...
Struts2、Hibernate和Spring是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC(Model-View-Controller)架构中的控制层,Hibernate专注于对象关系映射(ORM)以简化数据库交互,而...
### Struts2.1.6+Spring2.5.6+Hibernate3.3.1框架整合常见错误 在使用Struts2.1.6、Spring2.5.6与Hibernate3.3.1进行框架整合时,开发者经常会遇到一些常见的问题。这些问题可能会导致程序无法正常运行或出现异常...
这三个框架是Java后端开发中常见的技术栈,Struts2用于控制应用程序流程,Spring提供依赖注入和全面的企业级支持,Hibernate则是一个ORM(对象关系映射)框架,方便数据库操作。 描述中同样提及“Excel 导出”,...