XML备份mysql数据库
发布日期:2021-07-26 18:44:06 浏览次数:13 分类:技术文章

本文共 3841 字,大约阅读时间需要 12 分钟。

DemoJ4 XML备份数据库

说明:这篇博客是为测试XML备份数据库,你要想学习生成XML文件基础知识请参照:

首先提供这几个必要类以供测试(如有需要请自行修改部分代码):

1.JDBCUtile连接数据库

package po;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class JDBCUtil {	/**	 * @param args	 */		private static final String mysqlDriver="com.mysql.jdbc.Driver";	private static final String mysqlURL="jdbc:mysql://localhost:3307/orm";	private static final String mysqlUser="root";	private static final String mysqlPwd="123456";		public static Connection getConnection(){		try {			Class.forName(mysqlDriver);			return DriverManager.getConnection(mysqlURL,mysqlUser,mysqlPwd);		} catch (ClassNotFoundException e) {			// TODO Auto-generated catch block			e.printStackTrace();		} catch (SQLException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}		return null;	}		public static void close(ResultSet rs,PreparedStatement ps,Connection conn){		if(rs!=null){			try {				rs.close();			} catch (SQLException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		}		if(ps!=null){			try {				ps.close();			} catch (SQLException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		}		if(conn!=null){			try {				conn.close();			} catch (SQLException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		}			}}

2.数据库对应的java对象

package po;import java.util.*;import java.io.Serializable;import java.sql.*;public class Emp implements Serializable {	private String empname;	private Integer id;	private Integer age;	public String getEmpname() {		return empname;	}	public void setEmpname(String empname) {		this.empname = empname;	}	public Integer getId() {		return id;	}	public void setId(Integer id) {		this.id = id;	}	public Integer getAge() {		return age;	}	public void setAge(Integer age) {		this.age = age;	}	public Emp(String empname, Integer id, Integer age) {		super();		this.empname = empname;		this.id = id;		this.age = age;	}	public Emp(){			}	}

 

测试代码:

package po;import java.io.FileWriter;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;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.XMLWriter;public class TestEmp {	public static void main(String[] args) throws SQLException, IOException{		//查询所有数据为1个list集合,泛型为Emp		List
list=selAll(); //将list中的数据输出到一个xml文件中 writeEmpToXml(list); } private static List
selAll() throws SQLException{ List
list=new ArrayList
(); String sql="select * from Emp"; Connection conn=JDBCUtil.getConnection(); PreparedStatement ps=conn.prepareStatement(sql); ResultSet rs=ps.executeQuery(); while(rs.next()){ Emp emp=new Emp(); emp.setEmpname(rs.getString("empname")); emp.setId(rs.getInt("id")); emp.setAge(rs.getInt("age")); list.add(emp); } return list; } /** * 将list中的数据写入xml中 * @throws IOException */ private static void writeEmpToXml(List
list) throws IOException{ Document doc =DocumentHelper.createDocument(); Element emps=doc.addElement("emps"); for(Emp emp:list){ emps.addElement("emp") .addAttribute("id",emp.getId().toString()) .addAttribute("name",emp.getEmpname()) .addText(emp.getAge().toString()); } //输出到文件 OutputFormat format=OutputFormat.createPrettyPrint(); XMLWriter writer=new XMLWriter(new FileWriter("conf/emps.xml"),format); writer.write(doc); writer.close(); }}

结果:

emps.xml文件

10
10
19
18
18
18
18
18

 

转载地址:https://blog.csdn.net/qq_41877184/article/details/95037045 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Dom4J生成xml文件
下一篇:Dom4J解析xml文件

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年03月22日 05时48分19秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

android 动态毛玻璃,Android毛玻璃背景效果简单实现代码 2019-04-21
android 按钮提示,的Android按钮工具提示 2019-04-21
iphone通讯录 android,3个方法,教你如何快速而又有效的将联系人从iPhone转移到安卓... 2019-04-21
android horizontalscrollview 滑动事件,ScrollView的滑动监听(以HorizontalScrollView为例) 2019-04-21
win7自定义html为桌面,Win7系统自定义桌面主题的方法 2019-04-21
单系统 台电x80pro_台电x80 pro (ID:E3E6)安装remix OS系统教程整理 2019-04-21
linux存储pdf伟岸_python的reportlab库介绍、制作pdf和作图 2019-04-21
安徽信息技术初中会考上机考试模拟_2020年中小学寒假、考试时间定下了! 2019-04-21
ubuntu 退出anaconda环境_从零开始深度学习第15讲:ubuntu16.04 下深度学习开发环境搭建与配置... 2019-04-21
稳定币usda是哪个发行的_武夷山币装帧款曝光,共4款设计,你喜欢哪款? 2019-04-21
可变车道怎么走不违章_走ETC竟比人工车道贵50%!交警:这3点不知道,吃亏的是自己... 2019-04-21
苹果笔记本的end键_笔记本用户的大烦恼:触控板,想好好用你不容易 2019-04-21
趣玩机器人什么时候成立的_【直播回顾】当我们谈机器人集成调试的时候在谈什么... 2019-04-21
中考大数据大连79_中考大数据 | 大连部分初中2019年中考指标生录取最低分及人数统计!... 2019-04-21
vue 地理位置定位_HTML5地理位置 2019-04-21
pac代理模式什么意思_托管仓库租赁电商仓储运营模式托管什么意思 2019-04-21
validated 验证数组_在 Laravel 中处理请求验证的智能方法 2019-04-21
洞泾智能机器人产业基地_G60科创走廊洞泾人工智能产业基地(核心区块)暨洞泾镇招商人员培训班顺利开班... 2019-04-21
java 拼接路径优雅方式_Java安全编码实践总结 2019-04-21
realme x2 深度测试打不开_搭载65W超级闪充,realme真我X7手机充电评测 2019-04-21