个位大侠来看看这段代码错误在哪?如何改正?
这是程序代码:package test;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.jdbc.core.RowCountCallbackHandler;
public class Test {
public static void main(String[] args){
Resource resource = new ClassPathResource("myspring.xml"); //这里好像有错 按照提示
BeanFactory factory = new XmlBeanFactory(resource);
JdbcTemplate jt = (JdbcTemplate) factory.getBean("dbtest");
jt.execute(SqlStatement.createSql);
jt.execute(SqlStatement.insertData1);
jt.execute(SqlStatement.insertData2);
jt.execute(SqlStatement.insertData3);
RowCountCallbackHandler rcch = new RowCountCallbackHandler();
jt.query(SqlStatement.selectSql,rcch);
System.out.println("结果集中的列数量:" + rcch.getColumnCount());
System.out.println("结果集中的行数量:" + rcch.getRowCount());
System.out.println("结果集中的结果: ");
String[] str = rcch.getColumnNames();
for (int i = 0;i<str.length;i++){
System.out.print(str[i] + " ");
}
final ArrayList list = new ArrayList();
jt.query(SqlStatement.selectSql,new RowCallbackHandler(){
public void processRow(ResultSet rs) throws SQLException {
SpringtoResultSetInfo sri = new SpringtoResultSetInfo();
sri.setId(rs.getInt(1));
sri.setTemplatename(rs.getString(2));
list.add(sri);
}
}
);
for(int i=0;i <list.size();i++) {
SpringtoResultSetInfo sri = (SpringtoResultSetInfo)list.get(i);
System.out.println("\n" + " " + sri.getId());
System.out.print( " " + sri.getTemplatename());
}
System.out.println( "\n完成 ");
}
}
提示信息:
2008-4-2 20:49:58 org.springframework.core.CollectionFactory <clinit>
信息: JDK 1.4+ collections available
2008-4-2 20:49:58 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [myspring.xml]
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: Line 14 in XML document from class path resource [myspring.xml] is invalid; nested exception is org.xml.sax.SAXParseException: Attribute "destory-method" must be declared for element type "bean".
org.xml.sax.SAXParseException: Attribute "destory-method" must be declared for element type "bean".
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:236)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:172)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:382)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:316)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(XMLDTDValidator.java:1306)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1971)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:795)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:878)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1693)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:250)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:222)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:173)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:148)
at org.springframework.beans.factory.xml.XmlBeanFactory.<init>(XmlBeanFactory.java:73)
at org.springframework.beans.factory.xml.XmlBeanFactory.<init>(XmlBeanFactory.java:61)
at test.Test.main(Test.java:17)
搜索更多相关主题的帖子:
代码
----------------解决方案--------------------------------------------------------
用ApplicationContext context = new ClassPathApplicationContext("myspring.xml");
----------------解决方案--------------------------------------------------------
不行啊!好像一改错误更多了。。。错误点在这里:
BeanFactory factory = new XmlBeanFactory(resource);
好像说resource怎么了的 请大家在给看看 谢谢!
----------------解决方案--------------------------------------------------------
你自己注释的那行
XML文件路径错了 如过没错就是你的XML文件内容中有个接点(14行)错了 ----------------解决方案--------------------------------------------------------
楼上的 是这一行错误了!
BeanFactory factory = new XmlBeanFactory(resource); ----------------解决方案--------------------------------------------------------
为什么没人理???
----------------解决方案--------------------------------------------------------