⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dom_write.jsp

📁 jsp动态网站开发技术与实践 电子工业出版社 随书附赠源代码
💻 JSP
字号:
<%@ page contentType="text/html; charset=gb2312" language="java"%>
<%@ page import="javax.xml.parsers.*"%>
<%@ page import="org.w3c.dom.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<%@ page import="javax.xml.transform.*"%>
<%@ page import="javax.xml.transform.dom.DOMSource"%>
<%@ page import="javax.xml.transform.stream.StreamResult"%>
<%!
	String sFileName = null;
	Document Doc = null;
	NodeList NL = null;
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
		<title>使用DOM解析接口写XML文件</title>
	</head>
	<body>
	<div align="center">
	<h1>使用DOM解析接口写XML文件</h1>
	<%
		try
		{
			//获取所要读的XML文件的路径
			sFileName = getServletConfig().getServletContext().getRealPath("ware.xml");
			//为解吸XML文件创建DOM对象
			DocumentBuilderFactory DBFactory = DocumentBuilderFactory.newInstance();
			DocumentBuilder DBuilder = DBFactory.newDocumentBuilder();
			Doc = DBuilder.parse(new File(sFileName));
			//初始化
			Doc.normalize();
			//得到节点集合
			NL = Doc.getElementsByTagName("商品");
		}
		catch(Exception e)
		{
			out.println("<p><font color=red>访问XML文件出错</font></p>");
			return;
		}		
		try
		{
			//构造一组新节点
			Element root = Doc.getDocumentElement();
			//节点中“商品”标签值
			Node node_list = Doc.createElement("商品");	
			Node node_ID = (Node) Doc.createElement("编号");	
			Node node1 = Doc.createTextNode("node1");
			node1.setNodeValue("T00003");
			node_ID.appendChild(node1);
			//节点中“名称”标签值
			Node node_Name = (Node) Doc.createElement("名称");	
			Node node2 = Doc.createTextNode("node2");
			node2.setNodeValue("水杯");
			node_Name.appendChild(node2);	
			//节点中“价格”标签值
			Node node_Price = (Node) Doc.createElement("价格");	
			Node node3 = Doc.createTextNode("node3");
			node3.setNodeValue("6.0");
			node_Price.appendChild(node3);	
			//将新节点信息添加到节点集合中
			node_list.appendChild(node_ID);
			node_list.appendChild(node_Name);
			node_list.appendChild(node_Price);
			//将节点信息写入XML文件
			root.appendChild(node_list);
			TransformerFactory tFactory = TransformerFactory.newInstance();
			Transformer transformer = tFactory.newTransformer();
			DOMSource source = new DOMSource(Doc);
			StreamResult result = new StreamResult(new File(sFileName));
			transformer.transform(source,result);
		}
		catch(Exception e)
		{
			e.printStackTrace();
			return;
		}
		out.println("<p><font color=blue>成功将下列信息写入ware.xml文件</font></p>");
		out.println("<p>编号:<font color=red>T00003</font>&nbsp;&nbsp;名称:<font color=red>水杯</font>&nbsp;&nbsp;价格:<font color=red>6.0</font></p>");
	%>	
	</div>
	</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -