/** * O PROGRAMA DEVERA LER UM ARQUIVO XML TER A CAPACIDADE * DE MANIPULAR OS MESMO ARQUIVOS EM XML E TAMBEM * A CAPACIDADE DE TER O ARMAZENAMENTO DO XML DENTRO DO * BANCO DE DADOS */publicvoidparserURI(Stringuri){SAXParserparser=newSAXParser();//INSTANCIANDO O OBJETO SAXPARSERparser.setDocumentHandler(this);parser.setErrorHandler(this);try{parser.parse(uri);}catch(Exceptione){System.out.println(e);e.printStackTrace();}}publicvoidprocessingInstruction(Stringtarget,Stringdata){System.out.print("<?");System.out.print(target);if(data!=null&&data.length()>0){System.out.print(' ');System.out.print(data);}System.out.print("?>");}publicvoidstartDocument(){System.out.println("<?xml version=\"1.0\"?>");}publicvoidstartElement(Stringnome,AttributeListattrs){System.out.print("<");System.out.print(nome);if(attrs!=null){intlen=attrs.getLength();for(inti=0;i<len;i++){System.out.print(" ");System.out.print(attrs.getQName(i));System.out.print("=\"");System.out.print(attrs.getValue(i));System.out.print("\"");}}System.out.print(">");}publicvoidcharacters(charch[],intstart,intlength){System.out.print(newString(ch,start,length));}publicvoidignorableWhitespace(charch[],intstart,intlength){characters(ch,start,length);}publicvoidendElement(Stringname){System.out.print("</");System.out.print(name);System.out.print(">");}//FIM DO DOCUMENTOpublicvoidendDocument(){}/**AVISO. */publicvoidwarning(SAXParseExceptionex){System.err.println("[Warning] "+getLocationString(ex)+": "+ex.getMessage());}/** ERRO. */publicvoiderror(SAXParseExceptionex){System.err.println("[Error] "+getLocationString(ex)+": "+ex.getMessage());}/** ERRO FATAL */publicvoidfatalError(SAXParseExceptionex)throwsSAXException{System.err.println("[Fatal Error] "+getLocationString(ex)+": "+ex.getMessage());throwex;}/** RETORNA UMA STRING DO TIPO LOCAL. */privateStringgetLocationString(SAXParseExceptionex){StringBufferstr=newStringBuffer();StringsystemId=ex.getSystemId();if(systemId!=null){intindex=systemId.lastIndexOf('/');if(index!=-1)systemId=systemId.substring(index+1);str.append(systemId);}str.append(':');str.append(ex.getLineNumber());str.append(':');str.append(ex.getColumnNumber());returnstr.toString();}publicstaticvoidmain(String[]argv){if(argv.length==0){System.out.println("Usage: java saxOne uri");System.out.println(" where uri is the URI of your XML document.");System.out.println(" Sample: java saxOne sonnet.xml");System.exit(1);}saxOnes1=newsaxOne();s1.parserURI(argv[0]);}}