首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

!XML基础!小弟我考不过完蛋了!

2011-12-30 
求助!!XML基础!我考不过完蛋了!!求助啊!!考试题目,过不过我死了!!我不会XML啊,哪个高手帮帮我!!加我QQ1144

求助!!XML基础!我考不过完蛋了!!
求助啊!!考试题目,过不过我死了!!我不会XML啊,哪个高手帮帮我!!加我QQ114483971,真心求助啊!!!





————————————————————————————————————————————————————————
题目:一、将下面的XML文档,按如下格式输出。(30分)

<?xml version="1.0" encoding="gb2312"?>
<newCD>
<CD>
<title>红蔷薇</title>
<歌手>萧亚轩<歌手>
<song>一个人的精彩</song>
<song>蔷薇</song>
<song>夜</song>
</CD>
<cd>
<title>真爱无敌</title>
<歌手>许茹芸<歌手>
<song>真爱无敌</song>
<song>埚牛</song>
<song>恒星</song>
</cd>
</newCD>


 


二、按下列格式尾XML文档建立相应的XLST文档。
<?>xml version=”1.0” encoding=”gb2312”?>
<CD信息>
<CD>
  <代号>GO11105</代号>
<专辑名>关不住</专辑名>
<歌手>伊能静</歌手>
<发行日期>2001.7</发行日期>
<定价>17.00</定价>
</CD>
<CD>
  <代号>Q031103</代号>
<专辑名>Suddenly,this Summer</专辑名>
<歌手>梁咏琪</歌手>
<发行日期>2001.6<发行日期>
<定价 dt:dt=”number”>19.50</定价>
</CD>
<CD>
  <代号>s023205</代号>
<专辑名>Very Best of Yanni</专辑名>
<歌手>Yanni</歌手>
<发行日期>2001.4<发行日期>
<定价 dt:dt=”number”>18.00</定价>
</CD>
<CD>
  <代号>K081101</代号>
<专辑名>Love Songs</专辑名>
<歌手>Michael Bolton</歌手>
<发行日期>2001.3<发行日期>
<定价 dt:dt=”number”>111.00</定价>
</CD>
<CD信息>

代号专辑名歌手发行日期定价
G011105关不住伊能静2001.717.00
Q031103Suddenly,this Summer梁泳琪2001.619.50
S023205Very Best of YanniYanni2001.418.00
K081101Love SongsMichael Bolton2001.3111.00

三、编写程序将下列数据库表转换为XML文档;

IDNAMEAGEHABPHONE
2006234张威23电脑,音乐3456433
2006235刘模21艺术5677644
2006236王民22艺术3567677

对应XML文档为:
<?xml version="1.0" encoding="UTF—8"?>
<students>
<student>
  <学号>2006234〈/学号〉
  <姓名>张威</姓名>
  <年龄>23</年龄>
  <爱好>电脑,音乐</爱好>
  <电话>3456433</电话>
</student>
<student>
  <学号>2006235〈/学号〉
  <姓名>刘模</姓名>
  <年龄>21</年龄>
  <爱好>艺术</爱好>
  <电话>5677644</电话>
</student>
<student>
  <学号>2006236〈/学号〉
  <姓名>王民</姓名>
  <年龄>22</年龄>
  <爱好>艺术</爱好>
  <电话>3567677</电话>
</student>
</students>


[解决办法]
写一下这个吧
三、编写程序将下列数据库表转换为XML文档;

Java code
import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.log4j.Logger;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.dom4j.io.XMLWriter;public class TestXML {        private static final Logger log = Logger.getLogger(TestXML.class.getName());        public TestXML(){        super();    }        /**     * 构造制定格式的xml     * @param list     * @return     */    public Document createXML(List list){        Document document = DocumentHelper.createDocument();        Element students = document.addElement("students");//根节点 students        for(int i =0 ;i<list.size() ;i++){            StudentsInforBean bean = new StudentsInforBean();            bean = (StudentsInforBean)list.get(i);            Element student = students.addElement("student"); //子节点 student            student.addElement("学号").setText(deNull(bean.getId()));             student.addElement("姓名").setText(deNull(bean.getName()));            student.addElement("年龄").setText(String.valueOf(bean.getAge()));            student.addElement("爱好").setText(deNull(bean.getHab()));            student.addElement("电话").setText(deNull(bean.getPhone()));        }        return document;    }    /**     * 生成xml文件     * @param document     * @param filename xml文件的完整路径,包括后缀名     * @throws Exception     */    public void writeXML(Document document ,String filename) throws Exception{        try {            OutputFormat format = OutputFormat.createPrettyPrint();            format.setEncoding("UTF—8");//这个地方是按你题目要求生成的xml编码格式,生成的xml文件用IE打开会有问题,如果换成gb2312的编码就不会有问题            XMLWriter writer = new XMLWriter(new FileWriter(new File(filename)),format);             writer.write(document);            writer.close();         } catch (IOException e) {            log.error(e.getMessage());            throw new Exception("writeXML Exception:"+e.getMessage());        }    }    /**     * 过滤为null的值     * @param str     * @return     */    private  String deNull(String str) {        if (str == null) {            return "";        }        return str;    }            public static void main(String args[]) throws Exception{        List list = new ArrayList();        StudentsInforBean bean1 = new StudentsInforBean();        bean1.setId("2006234");        bean1.setName("张威");        bean1.setAge(23);        bean1.setHab("电脑,音乐");        bean1.setPhone("3456433");        StudentsInforBean bean2 = new StudentsInforBean();        bean2.setId("2006235");        bean2.setName("刘模");        bean2.setAge(21);        bean2.setHab("艺术");        bean2.setPhone("5677644");        StudentsInforBean bean3 = new StudentsInforBean();        bean3.setId("2006236");        bean3.setName("王民");        bean3.setAge(22);        bean3.setHab("艺术");        bean3.setPhone("3567677");        list.add(bean1);        list.add(bean2);        list.add(bean3);        //TODO 以上数据的获取,你可以用自己的方法把数据从你对应的数据库表获取        TestXML testXML = new TestXML();        Document document = testXML.createXML(list);        testXML.writeXML(document, "d://test.xml");    }}//数据beanpublic class StudentsInforBean implements java.io.Serializable{        /**     *      */    private static final long serialVersionUID = 1L;        private String id;    private String name;    private int age;    private String hab;    private String phone;        public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }    public String getHab() {        return hab;    }    public void setHab(String hab) {        this.hab = hab;    }    public String getId() {        return id;    }    public void setId(String id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public String getPhone() {        return phone;    }    public void setPhone(String phone) {        this.phone = phone;    }    } 

热点排行