Java web 开发简介
web浏览器通过控制层,servlet 进入到模型层,ejb(已过时) javaBean(已过时) 处理完成以后,进入jsp页面,生成HTML进入显示层,由模型层,进入持久层,即,数据库中。
apache提供了标准的MVC 即 Struts
由客户端请求,数据流进入中间层,即web容器,struts框架,servlet(已不在使用netty偏多) jsps HTML 然后web容器访问java EE 服务,如JNDL JDBC 然后和 EJB容器交互,最后返回给客户端
生成DOM树,然后解析
import org.w3c.dom.Document; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import java.io.IOException; public class Main { public static void main(String[] args) { // 获得DocumentBuildFactory 工厂对象 DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); // 获得对象 DocumentBuilder documentBuilder = null; try{ documentBuilder = documentBuilderFactory.newDocumentBuilder(); // 配置错误 }catch (ParserConfigurationException e){ e.printStackTrace(); } // 生成DOM树 Document document = null; try{ // 读取XML文件 document = documentBuilder.parse("/home/ming/IdeaProjects/untitled/src/name.XML"); // XML解析器基本错误 }catch (SAXException e){ e.printStackTrace(); }catch (IOException e){ e.printStackTrace(); } // 输出name节点 NodeList nodeList = document.getElementsByTagName("name"); // 输出文本内容 // 返回集合中的第一项,的第一个子节点的第一个名字 System.out.println(nodeList.item(0).getFirstChild().getNodeValue()); }
使用SAX解析器的时候触发事件, 扫描文档的时候,会触发相关的事件
只需要继承DefaultHandler 重写其中的开始,结束,元素开始,元素结束的方法,然后获得解析工厂,并从工厂中获得解析器,然后在解析器中调用重写类生成的对象。
JDOM
DOM4J