当前位置: 代码迷 >> Java Web开发 >> 个位大侠来看看这段代码错误在哪?如何改正?
  详细解决方案

个位大侠来看看这段代码错误在哪?如何改正?

热度:355   发布时间:2008-04-02 20:55:42.0
个位大侠来看看这段代码错误在哪?如何改正?
这是程序代码:
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);
----------------解决方案--------------------------------------------------------
为什么没人理???
----------------解决方案--------------------------------------------------------
  相关解决方案