社区
Web 开发
帖子详情
救急 关于JDOM生成XML的问题
tdy1234
2007-09-10 09:14:38
小弟使用JDOM 生成一个XML 文件中间有一个标签如<BNIF seqno="1">这样,后面是一个属性 标识该字段在本文件中的编号 如seqno="1",seqno="2",seqno="3"这样,请各位大大指点这个属性用JDOM 的什么方法写入 完成就结帖
...全文
168
6
打赏
收藏
救急 关于JDOM生成XML的问题
小弟使用JDOM 生成一个XML 文件中间有一个标签如这样,后面是一个属性 标识该字段在本文件中的编号 如seqno="1",seqno="2",seqno="3"这样,请各位大大指点这个属性用JDOM 的什么方法写入 完成就结帖
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Gerry-Zhang
2007-09-10
打赏
举报
回复
jdom 解析xml
yifengtpf
2007-09-10
打赏
举报
回复
楼上的这个JDOM解析XML文档 不能有个普遍作用
只能用于解析 只有2级目录的
如果有3级甚至更多就行不通了
建议使用递归
zjf405
2007-09-10
打赏
举报
回复
Element elem = new Element("BNIF");
elem.setAttribute(new Attribute("seqno", "1"));
ssrwf
2007-09-10
打赏
举报
回复
Jdom的用法:
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
public class StudentDAO {
String file;//xml文件的位置
FileOutputStream fo;
Document doc;
SAXBuilder builder = new SAXBuilder();
Format format; //用于设置xml文件的格式
private StudentDAO() {
}
//构造函数中设置file和format
public StudentDAO(String webroot) {
file = webroot + "/data/student.xml";
format = Format.getPrettyFormat();
format.setIndent(" ");
format.setEncoding("utf-8");
}
//向xml文件中添加一条记录
public boolean add(StudentInfo si) {
String id = si.getId();
boolean idAlreadyExisted = false;
boolean addResult = false;
Element root;
List allStudent;
try { doc = builder.build(file);
root = doc.getRootElement();
allStudent = root.getChildren();
//检查要添加的信息是否存在
for (int i = 0; i < allStudent.size(); i++) {
Element element = (Element) allStudent.get(i);
if (element.getChild("id").getText().equals(id)) {
idAlreadyExisted = true;
break;
}
}
//向xml文件中添加新的信息,并返回true
if (!idAlreadyExisted) {
Element student = new Element("student");
student.addContent(new Element("id").setText(si.getId()));
student.addContent(new Element("name").setText(si.getName()));
student.addContent(new Element("birthday").setText(si
.getBirthday()));
student.addContent(new Element("address").setText(si
.getAddress()));
allStudent.add(student);
XMLOutputter xout = new XMLOutputter(format);
fo = new FileOutputStream(file);
xout.output(doc, fo);
return true;
}
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
close();
}
return addResult;
}
//从xml文件中删除一条信息
public boolean del(String id) {
boolean delResult = false;
Element root;
List allStudent;
try {
doc = builder.build(file);
root = doc.getRootElement();
allStudent = root.getChildren();
for (int i = 0; i < allStudent.size(); i++) {
Element student = (Element) allStudent.get(i);
//如果id存在,则删除些条信息,并返回true
if (student.getChild("id").getText().equals(id)) {
allStudent.remove(i);
XMLOutputter xout = new XMLOutputter(format);
fo = new FileOutputStream(file);
xout.output(doc, fo);
return true;
}
}
} catch (JDOMException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
close();
}
return delResult;
}
//按名字进行查询,返回所有名字以name开头的记录
public ArrayList query(String name) {
ArrayList list = new ArrayList();
Element root;
List allStudent;
try {
doc = builder.build(file);
root = doc.getRootElement();
allStudent = root.getChildren();
for (int i = 0; i < allStudent.size(); i++) {
Element student = (Element) allStudent.get(i);
if (student.getChild("name").getText().startsWith(name)) {
StudentInfo si = new StudentInfo();
si.setId(student.getChild("id").getText());
si.setName(student.getChild("name").getText());
si.setBirthday(student.getChild("birthday").getText());
si.setAddress(student.getChild("address").getText());
list.add(si);
}
}
} catch (JDOMException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
void close() {
if (fo != null) {
try {
fo.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
yifengtpf
2007-09-10
打赏
举报
回复
addAttribute("属性名","值") ;
lindazch
2007-09-10
打赏
举报
回复
友情支援
Java实现
Jdo
m
生成
xml
Java实现
Jdo
m
生成
解析
xml
,一般可以用到存储数据。比如我以前做过的ERP系统,权限初始化就用的解析
XML
,但是现在上传的只是
生成
XML
。如果哪位需要解析
XML
,留个言。。。。
Jdo
m
生成
与解析
XML
利用
Jdo
m
生成
XML
与解析
XML
的示例
XML
入门到精通2017视频教程
本课程共11个教学视频,10小时授课时间,该课是在学习完数据库,JAVA,JSP等课程后,为后面学习SSH框架,WEB Servic等技术的基础课程;深入浅出的讲解,大量的课后练习与实训项目,课程PPT,源代码已经全部上传到课程资料里面,购买后可以直接下载使用。
jdo
m 读取
XML
文件
NULL 博文链接:https://zhaohong.iteye.com/blog/426761
JDO
M
生成
xml
文档
NULL 博文链接:https://newtime.iteye.com/blog/437109
Web 开发
81,091
社区成员
341,719
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章