第一次写iBATIS,就错了,高手援助啊

问题描述

错误信息:java.lang.ExceptionInInitializerErrorCausedby:java.lang.RuntimeException:Erroroccurred.Cause:com.ibatis.common.xml.NodeletException:ErrorparsingXML.Cause:org.xml.sax.SAXParseException:XMLdocumentstructuresmuststartandendwithinthesameentity.atcom.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:89)atcom.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)atcom.ibatis.blackcoat.dao.impl.BlackcoatDaoImpl.<clinit>(BlackcoatDaoImpl.java:19)Causedby:com.ibatis.common.xml.NodeletException:ErrorparsingXML.Cause:org.xml.sax.SAXParseException:XMLdocumentstructuresmuststartandendwithinthesameentity.atcom.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:53)atcom.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:86)...2moreCausedby:org.xml.sax.SAXParseException:XMLdocumentstructuresmuststartandendwithinthesameentity.atcom.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)atcom.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)atcom.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)atcom.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1411)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.endEntity(XMLDocumentFragmentScannerImpl.java:902)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:605)atcom.sun.org.apache.xerces.internal.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1393)atcom.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1763)atcom.sun.org.apache.xerces.internal.impl.XMLEntityScanner.scanData(XMLEntityScanner.java:1242)atcom.sun.org.apache.xerces.internal.impl.XMLScanner.scanComment(XMLScanner.java:756)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanComment(XMLDocumentFragmentScannerImpl.java:1036)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2945)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)atcom.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)atcom.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)atcom.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)atcom.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)atcom.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)atcom.ibatis.common.xml.NodeletParser.createDocument(NodeletParser.java:157)atcom.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)...3moreExceptioninthread"main"BlackcoatDaoImpl:packagecom.ibatis.blackcoat.dao.impl;importjava.io.IOException;importjava.io.Reader;importjava.sql.SQLException;importjava.util.List;importcom.ibatis.blackcoat.dao.IBlackcoatDao;importcom.ibatis.sqlmap.client.SqlMapClient;importcom.ibatis.sqlmap.client.SqlMapClientBuilder;importcom.ibatis.blackcoat.entity.*;importcom.ibatis.common.resources.Resources;publicclassBlackcoatDaoImplimplementsIBlackcoatDao{privatestaticSqlMapClientsqlMapClient=null;static{try{Readerreader=Resources.getResourceAsReader("com/ibatis/SqlMapConfig.xml");sqlMapClient=SqlMapClientBuilder.buildSqlMapClient(reader);reader.close();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}publicList<blackcoat>findAll(){List<blackcoat>list=null;try{list=sqlMapClient.queryForList("selectAll");}catch(SQLExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}returnlist;}publicstaticvoidmain(String[]args){IBlackcoatDaodaoImpl=newBlackcoatDaoImpl();for(blackcoatblack:daoImpl.findAll()){System.out.println(black.getName());}}}SqlMapConfig.xml:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEsqlMapConfigPUBLIC"-//iBATIS.com//DTDSQLMapConfig2.0//EN""http://www.ibatis.com/dtd/sql-map-config-2.dtd"><sqlMapConfig><propertiesresource="com/ibatis/SqlMap.properties"/><transactionManagertype="JDBC"><dataSourcetype="SIMPLE"><!--JDBC驱动--><propertyvalue="${driver}"name="JDBC.Driver"/><!--数据库URL--><propertyvalue="${url}"name="JDBC.ConnectionURL"/><!--数据库用户名--><propertyvalue="${username}"name="JDBC.username"/><!--数据库密码--><propertyvalue="${password}"name="JDBC.password"/></dataSource></transactionManager><sqlMapresource="com/ibatis/blackcoat/entity/blackcoat.xml"/></sqlMapConfig>blackcoat.xml:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEsqlMapPUBLIC"-//iBATIS.com//DTDSQLMap2.0//EN""http://www.ibatis.com/dtd/sql-map-2.dtd"><sqlMap><selectid="selectAll"resultClass="com.ibatis.blackcoat.entity.blackcoat">select*fromblackcoat</select></sqlMap>第一次写iBATIS.xml也没写错啊`都是照着写的,真不知道错哪里了

解决方案

解决方案二:
根据提示的错误,问题在xml里面,应该是个某个标签的开始和结束不一致了
解决方案三:
你的配置文件有标签没结束
解决方案四:
大哥,你可以自家看看,我哪个标签没结束,我都检查了N回了
解决方案五:
XMLdocumentstructuresmuststartandendwithinthesameentity.xml文档结构必须开始结束使用同一标签.你的XML元素一定有一个,名称是错误的,这可能是因为你编码方式导致你的标签内加入了系统当前编码环境下不识别的编码字符.
解决方案六:
问题和楼主一样啊..郁闷
解决方案七:
xml里的中文注释,先加空格再接“-->”
解决方案八:
LZ看看com.ibatis.blackcoat.entity.blackcoat的类中属性是否与表blackcoat的字段一一对应呢
解决方案九:
楼主的问题解决没有,我也遇到同样的问题,束手无策,求帮忙
解决方案十:
我解决了经过仔细检查除了标签要写对应之外,就是之前楼上提到的那个中文注释问题,一定要前后空格隔开<!--说明-->

时间: 2024-09-29 07:50:22

第一次写iBATIS,就错了,高手援助啊的相关文章

语言 指针-第一次写项目,不知道怎么实现。怎么实现数据文件的读写

问题描述 第一次写项目,不知道怎么实现.怎么实现数据文件的读写 软件三层架构 将用例图确定的函数 按 架构放在 不同的位置协同工作 界面切换 要点:所有界面是平等 实施:(1)所有 XXXXUI()的返回值 设置为 int (2)给 上述界面函数 编号通过界面编号进行 界面切换登录界面int LoginUI(){ XXXXXXXXXX if 成功 return 1; // 主界面else 失败 return 0; // 退出 } int main(){ int choice = 101; whi

c语言-我写的哪里错了,求助

问题描述 我写的哪里错了,求助 #include #include void main(void) { char str1[30]={0}; char str2[30]={0}; char str3[30]={0}; printf("Please input the first number:"); gets(str1); printf("Please input the second number:"); gets(str3); add(str1 str2 str

java-为什么不能运行,第一次写servlet

问题描述 为什么不能运行,第一次写servlet 写了一个类,然后用这个运行,为什么没反应 <?xml version="1.0" encoding="UTF-8"?> <!-- 配置和映射Servlet --> HelloSverletcom.atguigu.java1.HelloSverlet HelloSverlet/hello 控制台输出的信息是这样的: 三月 23, 2016 10:31:53 下午 org.apache.tomca

pl sql-orcal 存储过程第一次写,编译的时候报错,大侠帮帮忙,急!!

问题描述 orcal 存储过程第一次写,编译的时候报错,大侠帮帮忙,急!! sql脚本如下:create or replace procedure ""PageList""(tbName IN VARCHAR2tbFieldsIN VARCHAR2 orderField IN VARCHAR2orderType IN INTstrWhere IN VARCHAR2pageSize IN INTpageIndex IN INTpageRecord OUT INT)is

大牛 们 oc webview和js的问题 ,第一次写这样的 求助了 谢谢

问题描述 大牛 们 oc webview和js的问题 ,第一次写这样的 求助了 谢谢 直接说问题了哈 我就是想把"q'的值 改一下 求教怎么改啊 解决方案 windows.searchh5.apiconfig.params["q"] = xxx

Java第一次写的流布局图形界面,留个纪念

package jisuanqi; import java.awt.*; public class MyFrame extends Frame{ //继承Frame类 public MyFrame() { super("第一个图形界面"); //设置框架窗口标题 this.setSize(200, 130); //设置组件尺寸(宽,高) this.setLocation(300, 240); //设置组件的显示位置 this.setBackground(Color.lightGray)

第一次写struts2,被一个login例子搞死了。。。高手们帮忙看一下。。

问题描述 myEclipse 7.5JDK: 1.6tomcat : 6.0拿着参考文档学:lib(commons-logging.jar,freemarker.jar,ognl.jar,struts2-core.jar,xwork.jar)后面又加了:commons-io-2.0.1.jar ,commons-lang-2.5.jarclasses(struts.xml)struts.xml:<?xml version="1.0" encoding="UTF-8&qu

关于我的自动生成编号的方法(来这么久,第一次写个人的编程技巧,不知能不能上精华)

编程|技巧|精华 前言:    用过许多序号的方法,indentity 或 new id() ,都不好用,自己写了一个,这个序号的特点是:每次取相应表中的系统当天最大序号,如果当天无记录,则自动生成一个当天序号 1.建种子表,这个表用来保存各个表目前已使用到的最大序号--种子表create table SEED (BM  varchar(20) not null,   --表名BH   varchar(12) not null,   --种子编号constraint PK_SEED primar

第一次写winform程序,为什么会有xx.exe已停止工作的问题

问题描述 如题,编译完成后,在我自己的电脑上双击运行exe都没有任何问题,但是发给朋友就是不行,双击运行总是提示xx.exe已停止工作,连程序界面都进入不了,按照网上的解决方法操作了,也不管用,请问还有什么可能导致这个问题,遇到过的说说,谢谢~~~这是网上查的方法,已照做:1.关闭UAC,右键我的电脑,进入管理,本地用户和组,用户,Administrator,吧禁用的钩钩去掉,注销登录这是计算机超级管理员账户,不受UAC限制,最高权限2.如果是单个程序或游戏总是出现这种问题,请改成英文安装目录或