我将使用包含开始日期、结束日期等的 JSP 设计前端。最后我必须将这些读入 Java 对象并将其写入 XML 文件。我怎么能做到这一点..请帮助我解决这个要求。
谢谢,纳拉扬
您可以使用任何XML Parser
.In Jsp 页面获取属性值(开始日期、结束日期等)并使用DOM
api 创建 XML。以下是简单示例。
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
// root elements
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("company");
doc.appendChild(rootElement);
Element startDate= doc.createElement("startDate");
startDate.appendChild(doc.createTextNode(<your_Value>));
doc.appendChild(startDate);
// lastname elements
Element endtDate= doc.createElement("endtDate");
endtDate.appendChild(doc.createTextNode(<your_Value>));
doc.appendChild(endtDate);
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("C:\\file.xml"));
// Output to console for testing
// StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
您需要在 JSP 中获取输入并将其传递给 Servlet。然后您可以使用XStream写入 XML。(我假设您在服务器上编写 XML,如果您需要在客户端计算机上编写 XML - 只需将 xstream 包 ii 导入您的 JSP 标头并放入 servlet 代码片段在你的 JSP 中)
<%@ page import="java.io.*,java.util.*, javax.servlet.*, com.thoughtworks.xstream.XStream" %>
<html>
<head>
<title>Handle Current Date & Time</title>
</head>
<body>
<center>
<h1>Display Current Date & Time</h1>
</center>
<%
Date date = new Date();
// initialize date from input
// ...pass the date to the servlet
%>
</body>
</html>
在 servlet 代码中:
Date date = /* get the date from the request*/
// then do something like this:
XStream xstream = new XStream();
xstream.alias("date", Date.class);
String xml = xstream.toXML(date);
// write the xml string to the file.