Repository navigation
Expand file tree
/
Copy pathParseXml.java
More file actions
77 lines (73 loc) · 2.99 KB
/
Copy pathParseXml.java
File metadata and controls
77 lines (73 loc) · 2.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package BigWork1;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.io.File;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
public class ParseXml {
private Connection conn;
private PreparedStatement pst;
public void parseXmlS(String filePath) throws Exception{
SAXReader saxReader = new SAXReader();
File file = new File(filePath);
Document document;
conn = new GetConnection().connect();
System.out.println(conn);
String sql = "insert into stu(id,name,gender,age,birth) values(?,?,?,?,?)";
pst = conn.prepareStatement(sql);
try {
document = saxReader.read(file);
Element rootElement = document.getRootElement();
List<Element> list = rootElement.elements();
for (int i = 0; i < list.size(); i++) {
Element stuelements = list.get(i);
String id = stuelements.attributeValue("id");
pst.setLong(1,Long.parseLong(id));
List<Element> elements = stuelements.elements();
for (int j = 0; j < elements.size(); j++) {
Element element = elements.get(j);
String name = element.getName();
if ("name".equals(name)) {
String text = null;
text = element.getText();
System.out.println(text);
pst.setString(2,text);
}
if ("gender".equals(name)){
String gender = element.getText();
pst.setString(3,gender);
}
if ("age".equals(name)){
String age = element.getText();
pst.setInt(4,Integer.parseInt(age));
}
if ("birth".equals(name)){
String birth = element.getText();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
Date date = simpleDateFormat.parse(birth);
pst.setDate(5,new java.sql.Date(date.getTime()));
}
}
}
} catch (DocumentException e) {
e.printStackTrace();
}
pst.execute();
System.out.println("Ö´Ðгɹ¦");
pst.close();
conn.close();
}
public static void main (String[]args){
ParseXml parseXml = new ParseXml();
try {
parseXml.parseXmlS("J2SE/src/BigWork1/stu.xml");
} catch (Exception e) {
e.printStackTrace();
}
}
}