java对xml增删改(java xml修改)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
今天给各位分享java对xml增删改的知识,其中也会对java xml修改进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
- 1、用JAVA访问XML文档
- 2、java中怎么调用存储过程实现增删改查成功返回1 失败返回0 输出xml格式
- 3、初学JAVA 怎么用XML建立一个学生信息管理系统啊 管理员可以注册和登录 有增删改查功能 不需要图形化界面
- 4、请问一下大侠门,如何使用DOM4J1.6对XML文件进行增删改查,请给出试例
用JAVA访问XML文档
?xml version="1.0" encoding="gb2312"?
!DOCTYPE student_main SYSTEM "student.dtd"
student_main
students
student xh="s001"
name张三/name
sex男/sex
age18/age
/student
student xh="s002"
name李四/name
sex女/sex
age19/age
/student
student xh="s003"
name王五/name
sex男/sex
age20/age
/student
/students
electives
elective xh="soo1"
kchc01/kch
score85/score
/elective
elective xh="soo2"
kchc02/kch
score90/score
/elective
/electives
courses
course kch="c01"
kcm数据结构/kcm
credit4/credit
/course
course kch="c02"
kcm数据库系统/kcm
credit3/credit
/course
/courses
/student_main
java中怎么调用存储过程实现增删改查成功返回1 失败返回0 输出xml格式
String procedure = "{call procedure_name(?)}";
CallableStatement cs = con.prepareCall(procedure);
cs.setString(1, "abc");
cs.execute();
类似这样
初学JAVA 怎么用XML建立一个学生信息管理系统啊 管理员可以注册和登录 有增删改查功能 不需要图形化界面
用DOM4J话基本上是对XML信息读取 以及对XML写。
DOM4J写的话先在内存中生成一个DOM树 然后再用流写入XML中
读的话先从XML中读取 然后 逐个建对象赋值生成对象集合(List集合)。然后对其集合判断(用来登陆),修改集合的对象(用来修改学生信息)。删除,改等等操作再简单不过了。
我这里有对XML读取 写入的代码 其他的自己完成吧
import java.io.IOException;
import java.io.StringWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import com.cssl.entity.Users;
/**
* Document Object Model for Java
* @author Administrator
*
*/
public class Dom4jDemo {
/**
* DOM4j解析
* @return
* @throws Exception
*/
public static ListUsers readXml() throws Exception{
ListUsers list = new ArrayListUsers();
//dom4j解析器
SAXReader reader = new SAXReader();
//解析文档
Document doc = reader.read("usersinfo.xml");
Element root = doc.getRootElement();
IteratorElement it = root.elementIterator("user");
while(it.hasNext()){
Element elt = it.next();
Users u = new Users();
u.setId(Integer.parseInt(elt.attributeValue("id")));
IteratorElement ch = elt.elementIterator();
u.setUsername(ch.next().getTextTrim());
u.setPassword(ch.next().getTextTrim());
list.add(u);
}
return list;
}
/**
* DOM4j写
* @param list
* @throws Exception
*/
public static void writeXml(ListUsers list) throws Exception{
//构建文档树
Document doc = DocumentHelper.createDocument();
Element root = doc.addElement("users");
for(Users u : list){
Element user = root.addElement("user").addAttribute("id", u.getId()+"");
user.addElement("username").addText(u.getUsername());
user.addElement("password").setText(u.getPassword());
}
Writer out = new StringWriter();
//使用xml输出流写出去
XMLWriter writer = new XMLWriter(out,OutputFormat.createPrettyPrint());
writer.write(doc);
System.out.println(out);
out.close();
}
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
ListUsers list = readXml();
for(Users u : list){
System.out.println(u.getId()+"\t"+u.getUsername()+"1\t"+u.getPassword());
}
writeXml(list);
}
}
下面我写这个xml文件
?xml version="1.0" encoding="UTF-8"?
users
user id="1"
username小何 /username
password123 /password
/user
user id="2"
username小曹/username
password456/password
/user
user id="3"
username小龚/username
password789/password
/user
/users

请问一下大侠门,如何使用DOM4J1.6对XML文件进行增删改查,请给出试例
import org.w3c.dom.*;
import javax.xml.parsers.*;
import java.io.*;
public class XmlParser
{
private String fileName = null;
private Document doc = null;
public XmlParser(String fileName)
{
this.fileName = fileName;
}
public void parse()
{
getDocument();
//parseRootName();
String code = "003";
String name = "LiuBei";
String age = "30";
add(code, name, age);
modify(code, "BaJie", "45");
delete(code);
Element root = doc.getDocumentElement();
parseElement(root);
System.out.println();
}
//删除
private void delete(String code)
{
Element eStudent = find(code);
if(null != eStudent)
{
//doc.getDocumentElement().removeChild(eStudent);
eStudent.getParentNode().removeChild(eStudent);
}
}
//修改
private void modify(String code, String name, String age)
{
Element eStudent = find(code);
if(null != eStudent)
{
NodeList nameList = eStudent.getElementsByTagName("name");
Element eName = (Element)nameList.item(0);
Text tName = (Text)eName.getFirstChild();
tName.setNodeValue(name);
NodeList ageList = eStudent.getElementsByTagName("age");
((Text)((Element)ageList.item(0)).getFirstChild()).setNodeValue(age);
}
}
//查找
private Element find(String code)
{
Element root = doc.getDocumentElement();
NodeList list = root.getElementsByTagName("student");
for(int i = 0; i list.getLength(); i++)
{
Element e = (Element)list.item(i);
if(e.getAttribute("code").equals(code))
{
return e;
}
}
return null;
}
//增加
private void add(String code, String name, String age)
{
Element eStudent = doc.createElement("student");
Element eName = doc.createElement("name");
Element eAge = doc.createElement("age");
Text tName = doc.createTextNode(name);
Text tAge = doc.createTextNode(age);
eName.appendChild(tName);
eAge.appendChild(tAge);
eStudent.appendChild(eName);
eStudent.appendChild(eAge);
eStudent.setAttribute("code", code);
doc.getDocumentElement().appendChild(eStudent);
}
//打印xml文档
private void parseElement(Element root)
{
//System.out.print(root.getNamespaceURI());
System.out.print("");
System.out.print(root.getNodeName());
//System.out.print(root.getPrefix());
//System.out.print(":");
//System.out.print(root.getLocalName());
NamedNodeMap nnm = root.getAttributes();
for(int i = 0; i nnm.getLength(); i++)
{
Attr attr = (Attr)nnm.item(i);
System.out.print(" ");
System.out.print(attr.getName());
System.out.print("=\"");
System.out.print(attr.getValue());
System.out.print("\"");
}
System.out.print("");
NodeList list = root.getChildNodes();
for(int i = 0; i list.getLength(); i++)
{
Node node = list.item(i);
if(node instanceof Element)
{
Element e = (Element)node;
parseElement(e);
}
else if(node instanceof Text)
{
Text t = (Text)node;
System.out.print(t.getNodeValue());
}
}
System.out.print("/");
System.out.print(root.getNodeName());
System.out.print("");
}
private void parseRootName()
{
Element root = doc.getDocumentElement();
System.out.println(root.getNodeName());
}
//工厂
private void getDocument()
{
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder db = factory.newDocumentBuilder();
doc = db.parse(new File(fileName));
}
catch(Exception ex)
{
ex.printStackTrace();
System.exit(1);
}
}
}
哦,那我就不回了,抱歉!
java对xml增删改的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java xml修改、java对xml增删改的信息别忘了在本站进行查找喔。
