请看下面的详细讲解。
Java常用工具类
XML工具类
1. 使用场景
在Java开发中,我们经常会遇到读写XML文件的需求,比如配置文件、数据存储等等。XML工具类可以大大简化这一过程。
2. 常用的XML工具类
常用的XML工具类有JDOM、DOM4J等。这里我们以DOM4J为例,介绍如何使用。
3. 使用示例
我们假设有一个students.xml文件,存储了学生的信息:
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student>
<name>张三</name>
<age>18</age>
<gender>男</gender>
</student>
<student>
<name>李四</name>
<age>20</age>
<gender>女</gender>
</student>
</students>
我们要用Java程序读取该文件中的学生信息,可以使用如下代码:
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.io.File;
import java.util.List;
public class XMLUtils {
public static void readXML(String filePath) {
try {
// 创建SAXReader对象
SAXReader saxReader = new SAXReader();
// 读取XML文件,获得Document对象
Document document = saxReader.read(new File(filePath));
// 获取根节点
Element root = document.getRootElement();
// 获取所有学生节点
List<Element> students = root.elements("student");
// 遍历学生节点
for (Element student : students) {
// 获取学生的姓名、年龄和性别
String name = student.elementText("name");
int age = Integer.parseInt(student.elementText("age"));
String gender = student.elementText("gender");
// 输出学生信息
System.out.println("姓名:" + name + ",年龄:" + age + ",性别:" + gender);
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
XMLUtils.readXML("students.xml");
}
}
运行上述代码,可以得到如下输出:
姓名:张三,年龄:18,性别:男
姓名:李四,年龄:20,性别:女
数据验证工具类
1. 使用场景
在Java开发中,我们经常会遇到数据验证的需求,比如表单验证、数据格式验证等等。数据验证工具类可以大大简化这一过程。
2. 常用的数据验证工具类
常用的数据验证工具类有Apache Commons Validator、Hibernate Validator等。这里我们以Apache Commons Validator为例,介绍如何使用。
3. 使用示例
我们假设有一个Order类,用于存储订单信息:
public class Order {
private String orderId; // 订单号
private String email; // 邮箱地址
// getter和setter方法省略
@Override
public String toString() {
return "Order{" +
"orderId='" + orderId + '\'' +
", email='" + email + '\'' +
'}';
}
}
我们要对该类进行数据验证,判断订单号和邮箱地址是否合法。可以使用如下代码:
import org.apache.commons.validator.routines.EmailValidator;
public class ValidationUtils {
public static boolean isOrderIdValid(String orderId) {
// 订单号必须以“OR”开头,长度为10位
return StringUtils.startsWith(orderId, "OR") && StringUtils.length(orderId) == 10;
}
public static boolean isEmailValid(String email) {
// 使用Apache Commons Validator中的EmailValidator进行验证
return EmailValidator.getInstance().isValid(email);
}
public static void main(String[] args) {
// 测试数据
Order order1 = new Order();
order1.setOrderId("OR12345678");
order1.setEmail("abc@domain.com");
Order order2 = new Order();
order2.setOrderId("0123456789");
order2.setEmail("not an email");
// 验证订单号和邮箱地址是否合法
if (isOrderIdValid(order1.getOrderId()) && isEmailValid(order1.getEmail())) {
System.out.println(order1);
}
if (isOrderIdValid(order2.getOrderId()) && isEmailValid(order2.getEmail())) {
System.out.println(order2);
}
}
}
运行上述代码,可以得到如下输出:
Order{orderId='OR12345678', email='abc@domain.com'}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java常用工具类 XML工具类、数据验证工具类 - Python技术站