<script>function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=641217
1. --- Cause: java.sql.SQLException: 无效的列类型; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
原因:
某个字段的插入值为空
解决方法:
将该字段的数值添加进去,或者将格式转化为动态的sql
2.
com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in com/kompakar/queue/transfusion/dao/ibatis/map/HisInfo.xml.
--- The error occurred while applying a parameter map.
--- Check the getPatientInfoByClinicNo-InlineParameterMap.
--- Check the statement (query failed).
--- Cause: java.sql.SQLException: ORA-01002: 读取违反顺序
ORA-02063: 紧接着line(源于DBLINKFGHIS)
Caused by: java.sql.SQLException: ORA-01002: 读取违反顺序
ORA-02063: 紧接着line(源于DBLINKFGHIS)
原因:
在不应该提交事务的地方,主动提交了事务。用DBLINK方式连接另一个数据库,在IBATIS中必须声明为事务。
解决方法:
将这个方法声明为事务。
3.
错误码:
com.ibatis.common.beans.ProbeException: There is no READABLE property named 'tAlarmlogId' in class 'com.kompakar.queue.transfusion.bo.TAlarmLogBO'
错误原因:
BO文件中定义的变量,中间有大写的,所以在匹配中出错。--准确的说,是ibatis中的第二个字母不能大写
解决方法:
将BO文件中的所有变量名都修改为小写。
4.org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mraServiceTarget' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'patientMedicalAlertDAO' of bean class [com.kompakar.ehealth.service.impl.mra.MRAService]: Bean property 'patientMedicalAlertDAO' is not writable or has an invalid setter method: Does the parameter type of the setter match the return type of the getter?
org.springframework.beans.NotWritablePropertyException: Invalid property 'patientMedicalAlertDAO' of bean class [com.kompakar.ehealth.service.impl.mra.MRAService]: Bean property 'patientMedicalAlertDAO' is not writable or has an invalid setter method: Does the parameter type of the setter match the return type of the getter?
at org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:831)
原因:在service中配置了property,但是在具体的service实现类中,却没有声明该property,以及没有实现相应的set和get方法(bean的方法)。
解决方案:
在service的实现类中,增加该属性字段的声明和set、get方法
5、17:12:14,796 ERROR eHealthActionServlet:68 - class com.kompakar.ehealth.common.frame.communicate.eHealthActionServlet Exception occured in performing process(HttpServletRequest request, HttpServletResponse response).
javax.servlet.ServletException: There is no statement named WardMstr-getAllwardList in this SqlMap.
at org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at com.kompakar.ehealth.common.frame.communicate.eHealthActionServlet.process(eHealthActionServlet.java:64)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
可能原因:
A、在相应的sqlmap配置文件真的没有 “WardMstr-getAllwardList ”
B、在sqlmap配置文件中, 没有引用对应表的配置xml文件。
解决方法:
修改sqlmap相应的配置文件。
6、在sqlmap中,特殊字符需要用 <![CDATA[ ]]>符号将特殊字符括起来
分享到:
相关推荐
IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得IBatis学习笔记以及使用心得
在IT行业中,数据库操作是必不可少的一部分,而Ibatis作为一款流行的Java持久层框架,它使得SQL与Java代码更好地...对于`ibatisdemo`这个项目,你可以按照上述方法检查并调整项目的配置,以解决可能出现的乱码问题。
本文将根据所提供的标题、描述及部分内容,详细阐述在使用iBatis时可能遇到的一些常见错误及其调试技巧。 ### 一、SQL映射文件(sqlMap)中的配置问题 #### 1. **SQL映射文件的正确配置** - **插入语句示例**:当...
Ibatis 提供了一些基本的API,如查询、添加、删除和修改方法。通常,会通过 SqlMapClient 的工厂类创建 SqlMapClient 实例,以管理数据库操作。例如,使用 SqlMapClientBuilder 创建 SqlMapClient 对象,然后执行...
在深入探讨ibatis框架中可能遇到的错误时,我们首先需要理解ibatis(现被称为MyBatis)的基本概念。ibatis是一种优秀的持久层框架,它消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。ibatis可以使用...
本文将详细介绍iBATIS中的缓存使用方法,包括缓存模型的配置、不同类型的缓存控制器以及如何在SQL映射文件中应用这些缓存设置。 #### 一、缓存的基本概念 缓存是存储数据的一种临时区域,目的是减少重复查询数据库...
《iBatis 使用手册》是一份详尽的开发资源,涵盖了iBatis框架的各个方面,包括iBatis的开发指南、SQL Maps的使用以及入门教程。iBatis是一款优秀的持久层框架,它允许Java开发者将SQL语句与Java代码分离,实现数据...
通过本教程书的学习,你将掌握Ibatis.net的基本使用方法,包括查询、插入、更新和删除数据,以及如何处理复杂的业务场景。同时,你还将了解到如何结合其他.NET技术,如Entity Framework或NHibernate,以实现更高效、...
Ibatis的出现,解决了传统JDBC中手动编写SQL和结果集映射的繁琐工作,提供了更加灵活的数据访问接口。 在"ibatis demo"中,我们通常会看到以下核心概念和知识点: 1. **配置文件**:Ibatis的配置文件(mybatis-...
本篇文章将深入探讨Ibatis的核心概念、最佳实践以及与其他框架如Struts和Spring的整合。 1. Ibatis SQL映射: Ibatis的主要特点是通过XML或注解定义SQL映射文件,将SQL语句与Java对象绑定。例如,`<select>`标签...
总的来说,这个压缩包提供了全面的iBATIS学习资源,包括理论文档、实践教程和实际运行所需库,对于理解iBATIS的工作原理,以及如何在项目中有效利用iBATIS进行数据库操作,都具有很高的价值。无论是初学者还是有经验...
### 解决IBatis缓存动态字段问题 #### 背景与问题描述 在使用IBatis框架处理数据库操作时,可能会遇到动态数据表名、动态字段名的情况。这种情况下,由于IBatis的缓存机制,可能导致字段找不到的问题。具体表现为...
本篇文章将探讨如何在Ibatis3中融合JPA的方法进行查询,以实现更加灵活的数据访问。 首先,理解Ibatis3的核心概念。Ibatis3的主要组成部分包括SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession以及Mapper...
通过上述介绍,我们可以看到使用 `HashMap` 解决 ibatis 中的动态列名和列数的问题是一种非常实用的方法。它不仅避免了为每种情况创建实体类的繁琐工作,还提高了代码的灵活性和可维护性。希望本文能够帮助你在实际...
使用Ibatis对数据库的访问,实现增删改查的操作 ;
下面我们将详细探讨iBATIS在.NET中的使用方法,以及如何利用提供的文件进行实践。 首先,了解iBATIS的基本概念。iBATIS是一个轻量级框架,它的核心功能是动态SQL映射,允许开发者编写SQL语句并将其封装到XML配置...
### IBatis.Net 使用方法详解 #### 一、概述 IBatis.NET是一款开源的数据访问层框架,它能够将对象与数据库中的记录映射起来,并提供了一系列的工具帮助开发者更高效地处理数据访问逻辑。本文将围绕如何下载、编译...
深入理解iBatis的源码可以帮助你更好地理解和解决问题,例如当遇到SQL执行效率低、参数绑定错误或结果映射异常时。同时,结合《Thinking in Java》这样的经典书籍,你可以巩固Java基础,更好地运用iBatis进行数据库...
在这个“使用的iBatis简单例子”中,我们将深入探讨如何配置和使用iBatis进行数据库交互。 首先,iBatis的核心组件包括XML配置文件、SQL映射文件以及SqlSessionFactory。XML配置文件用于定义数据源、事务管理器等...
本篇文章将深入探讨Ibatis API、文档以及说明,帮助你更好地理解和使用这个强大的框架。 Ibatis API是Ibatis的核心接口和类,提供了丰富的功能供开发者进行数据访问。以下是一些关键的API组件: 1. ...