# studentListXmlGenerator **Repository Path**: cheegoivan/studentListXmlGenerator ## Basic Information - **Project Name**: studentListXmlGenerator - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2016-04-13 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #服务计算与SOA开发作业练习 *** * [**Assignment3**](https://git.oschina.net/cheegoivan/studentListXmlGenerator/tree/master/src/cn/edu/nju/software/zp13/client/assignment3) * [**Assignment4**](https://git.oschina.net/cheegoivan/studentListXmlGenerator/tree/master/src/cn/edu/nju/software/zp13/client/assignment4) ###关于实体对象节点映射的说明 此模型暂时只适用于对象向XML Node的转化。对于语义上可以抽象为对象的XML节点,建立XmlNodeEntity的子类。 ```java /** * 继承基类XmlNodeEntity后,调用toXmlNode(Docuement dom)方法转为Node对象。 * @author Ivan */ @Element(tagName="student") //若不指定tagName,则将使用类名或成员名作为tag public class Student extends XmlNodeEntity { @Element(tagName = "学号") private String id; @Element private Profile profile; //递归调用Profile的toXmlNode(Docuement dom)方法 @Element(tagName = "课程成绩列表") private CourseScore[] cs; public String getId() { return id; } public void setId(String id) { this.id = id; } public Profile getProfile() { return profile; } public void setProfile(Profile profile) { this.profile = profile; } public CourseScore[] getCs() { return cs; } public void setCs(CourseScore[] cs) { this.cs = cs; } } ``` ```java @Element(tagName = "课程成绩") public class CourseScore extends XmlNodeEntity { @Attribute(key="课程编号") private String courseId;//定义属性‘课程编号’,值为courseId的值 @Attribute(key="成绩性质") private ScoreType st; @Element private Score score; @Attribute(key="成绩性质") //定义属性‘成绩编号’的value public String scoreTypeToString(){ return st.toString(); } public Score getScore() { return score; } public void setScore(Score score) { this.score = score; } public ScoreType getSt() { return st; } public void setSt(ScoreType st) { this.st = st; } public String getCourseId() { return courseId; } public void setCourseId(String courseId) { this.courseId = courseId; } } ``` ```java /** * 基类XmlNodeEntity拥有toXmlNode(Docuement dom)方法,子类继承后可直接调用。 * @param dom org.w3c.dom.Document * @return org.w3c.dom.Node */ public Node toXmlNode(Document dom){} ```