Каков наилучший подход для хранения данных в MySQL после синтаксического анализа XML-файла с использованием SAX Parser? - PullRequest
0 голосов
/ 13 октября 2009

У меня есть файл student.xml, и я анализирую этот файл с помощью SAX Parser, и теперь мне нужно сохранить данные в базе данных MySQL и узнать, какой подход рекомендуется.

Код:

package sax;

    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;

    import org.xml.sax.Attributes;
    import org.xml.sax.SAXException;
    import org.xml.sax.helpers.DefaultHandler;

    public class ReadXML extends DefaultHandler{

        public void characters(char[] ch, int start, int length) throws SAXException {
            String s =new String(ch, start, length);
            if(s.trim().length()>0) {
                System.out.println("    Value: "+s);
            }
        }

        public void startDocument() throws SAXException {
            System.out.println("Start document");
        }

        public void endDocument() throws SAXException {
            System.out.println("End document");
        }

        public void startElement(String uri, String localName, String name,
                Attributes attributes) throws SAXException {
            System.out.println("start element : "+name);

        }

        public void endElement(String uri, String localName, String name) throws SAXException {
            System.out.println("end element");
        }

        public static void main(String[] args) {
            ReadXML handler = new ReadXML();

            try { 
                SAXParserFactory factory = SAXParserFactory.newInstance();

                SAXParser saxParser = factory.newSAXParser();

                saxParser.parse("student.xml", handler); 
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    }

Ответы [ 2 ]

1 голос
/ 28 октября 2009

Я бы создал набор таблиц, представляющих данные, содержащиеся в student.xml, а затем заполнил их при разборе данных.

0 голосов
/ 28 октября 2009

Возможно, вы сможете напрямую сохранить XML в БД. Многие пакеты БД имеют функциональные возможности, позволяющие вставлять данные в формате XML в соответствующие места в базе данных. Я считаю, что PostGres и MS-SQL могут это сделать.

Для этого в MySQL существует функциональность. Смотрите здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...