Связанные показания:
Используйте Ajax для загрузки файлов и других параметров (разработка Java)
1. XML -файл:
Что такое XML? XML, как правило, относится к расширяемому языку разметки, подмножеству стандартных общих языков разметки и является языком разметки, используемым для маркировки электронных файлов, чтобы сделать их структурными.
2. Преимущества файлов XML:
1) Содержание и структура документов XML полностью разделены.
2) Сильная совместимость.
3) Стандартизировать и объединить.
4) поддерживает несколько кодировки.
5) Сильная масштабируемость.
3. Как анализировать документы XML:
XML -диапазон XML -документы на разных языках одинаковы, но синтаксис реализации отличается. Есть два основных метода анализа. Одним из них является метод SAX, который шаг за шагом является анализом в порядке XML -файлов. Другим аналитическим методом является метод DOM, а ключом к методу DOM является узел. Есть также DOM4J, JDOM и другие методы. В этой статье представлены методы DOM и DOM4J и метод инкапсулирования их в класс инструментов для чтения документов XML.
4.xml документация:
cholars.xml:
<? xml version = "1.0" Encoding = "UTF-8"?> <! Doctype студентов [<! Element Student (студент+)> <! Element Student (имя, курс, оценка)> <! Attlist Student ID CDATA #Required> <! Element Name (#PCDATA)> <! Element Course (#PCDATA) <! <mame> Zhang San </name> <couge> javase </cource> <spart> 100 </score> </studive> <студент -идентификатор = "22"> <mame> li si </name> <cooud> oracle </course> <coll> 98 </score> </student> </name>
5. Обработание XML
Public Static Void Main (String [] args) бросает ParserConfigurationException, SaxException, ioException {// 1. Создать Dom Parser Factory DocumentBuilderFactory dbf = documentBuilderFactory.newinStance (); // 2. Создать DOM SARSER от DOM PARSER PACTORY DOCUTORCBUILDER DB = DBF.NewDocumentBuilder (); // 3. Диаскоризирует документ от DOM Parser, чтобы генерировать документ DOM Tree Doc = db.parse ("rescores.xml"); // 4. Подготовки дерева DOM и получает содержание документа (текст атрибута элемента) //4.1 Получить оценки элемента корневого элемента. Node CrossNode = RocorSist.Item (1); System.out.println (rocorSlist.getLength ()); //4.2 Получите все детские элементы в оценках студенческого узла StudentList = scoresnode.getChildNodes (); System.out.println (StudentList.getLength ()); //4.3 Обработайте каждого учащегося для (int i = 0; i <chooldlist.getLength (); i ++) {node stunode = studentlist.item (i); //System.out.println (stunode.getNodeType ()); // идентификатор атрибута выходного элемента if (stunode.getNodeType () == node.element_node) {element elem = (element) Stunode; String id = elem.getattribute ("id"); System.out.println ("id ------>"+id); } // Детские элементы имени вывода имени курса Nodelist ncslist = stunode.getChildNodes (); //System.out.println (ncslist.getlength ()); for (int j = 0; j <ncslist.getLength (); j ++) {node ncs = ncslist.item (j); if (ncs.getNodeType () == node.element_node) {string name = ncs.getnodeName (); // string value = ncs.getFirstChild (). GetNoDevalue (); // Текст является ребенком элемента, поэтому вам нужно получить значение строки = ncs.getTextContent (); System.out.println (name+"----->"+value); }} System.out.println (); }}6. DOM4J Метод Диаграммы XML Documents:
public static void main (string [] args) Throws DocumentException {// Использовать DOM4J для parse rocores2.xml, генерировать Dom Tree Saxreader Reader = new Saxreader (); Документ doc = reader.read (new File ("rocors.xml")); // Получить корневой узел: студенческий элемент root = doc.getRootelement (); // Получить все детские узлы студентов: студент итератор <element> it = root.elementiterator (); // обучить каждого студента while (it.hasnext ()) {// Получить каждый элемент студента stuelem = it.next (); //System.out.println(stulem); // Выходные атрибуты студента: идентификационный список <attribute> attrlist = stuelem.attributes (); for (attribute attr: attrlist) {string name = attr.getName (); String value = attr.getValue (); System.out.println (name+"----->"+value); } // Выходные детские элементы студента: имя, курс, итератор счетов <element> it2 = stuelem.elementiterator (); while (it2.hasnext ()) {element elem = it2.next (); String name = elem.getName (); String Text = elem.getText (); System.out.println (name+"----->"+text); } System.out.println (); }}Конечно, независимо от того, как мы проанализируем XML, нам нужно импортировать пакет JAR (не забывайте).
7. Мой собственный путь:
В реальных проектах по разработке мы должны хорошо использовать классы инструментов и инкапсулировать функции, которые мы используем многократно в класс инструментов. Поэтому следующим методом является то, как я использую его в процессе разработки.
7.1 Что такое файлы свойств:
7.1.1 Структурно:
Файлы .xml - это в основном файлы деревьев.
Файл .properties в основном существует в форме пар клавишных значений клавиш.
7.1.2 с гибкой точки зрения:
Файлы .xml более гибкие, чем файлы .properties.
7.1.3 с удобной точки зрения:
Файл .properties легче настроить, чем файл .xml.
7.1.4 С точки зрения применения:
.properties файлы более подходят для небольших и простых проектов, потому что .xml более гибкий.
7.2 Ваша собственная документация по свойствам:
Я создал файл path.properties в своем собственном проекте, который используется для хранения пути, который я буду использовать, и хранить в виде имени = значение. Например:
realPath = d:/file/
7.3 Диаграммы вашего собственного.
Public Class PropertiesUtil {Private Static PropertiesUtil Manager = null; Частный статический объект Managerlock = new Object (); Private Object Propertieslock = new Object (); Private Static String Database_Config_file = "/path.properties"; Private Properties Properties = NULL; public static propertiesutil getInstance () {if (Manager == null) {synchronized (Managerlock) {if (Manager == null) {Manager = new PropertiesUtil (); }}} return Manager; } private PropertiesUtil () {} public Static String getProperty (string name) {return getInstance () ._ getProperty (name); } частная строка _getProperty (string name) {initProperty (); String property = properties.getProperty (name); if (свойство == null) {return ""; } else {return property.trim (); }} public static enumeration <?> propertynames () {return getInstance () ._ propertynames (); } частное перечисление <?> _propertyNames () {initProperty (); return Properties.propertyNames (); } private void initProperty () {if (свойства == null) {synchronized (Propertieslock) {if (свойства == null) {loadproperties (); }}}} private void loadproperties () {properties = new Properties (); InputStream in = null; try {in = getClass (). getResourCeasStream (database_config_file); Свойства. загрузка (в); } catch (Exception e) {System.err .println ("Ошибка чтения свойства conf в propertiesutil.loadprops ()" + e); e.printstacktrace (); } наконец {try {in.close (); } catch (Exception e) {}}} / ** * Предоставьте путь файла конфигурации * * @param filePath * @return * / public Properties LoadProperties (String filePath) {Properties Properties = new Properties (); InputStream in = null; try {in = getClass (). getResourCeasStream (filePath); Свойства. загрузка (в); } catch (Exception e) {System.err .println ("Ошибка чтения свойства конфейта в propertiesutil.loadproperties ()" + e); e.printstacktrace (); } наконец {try {in.close (); } catch (Exception e) {}} return Properties; }} Прежде чем мы его используем, нам нужно только прикрепить значение к свойству DATABASE_CONFIG_FILE , которое является именем нашего файла .properties. При его использовании мы можем напрямую использовать имя класса. getProperty(“realPath”); Чтобы получить контент с ключом в файле .properties, который является RealPath.
Приведенное выше метод чтения файлов конфигурации XML и свойств в разработке Java, представленный вам редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя!