问题:汽车具有颜色、型号、品牌、售价四个属性。实现CRUD,其中查询时支持模糊查询。比如:[一汽大众] 我输入大众也可以查到。
主要有四步:
1.创建汽车对象,封装数据。
2.创建xml表,作为数据库。
3.DAO数据访问对象,主要操作数据,实现CRUD。
4.使用测试类测试。
carObject
package gz.itcast.a_jaxp.CarCRUD;
import gz.itcast.a_jaxp.CarInformation.Car;
/**
* TO DO
*
* @author yangll
* @date 2020/12/30
*/
//创建汽车接口,使用实现类实现接口。
public interface carObject {
//增加功能
boolean addCar(Car car) throws Exception;
//删除功能
boolean deleteCar(String brand) throws Exception;
//查找功能
Car searchCar(String brand) throws Exception;
//修改功能
boolean modifyCar(String brand,String color) throws Exception;
}
Dao
package gz.itcast.a_jaxp.CarCRUD;
import gz.itcast.a_jaxp.CarInformation.Car;
import gz.itcast.a_jaxp.Util.XMLUtil;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
/**
* TO DO
*
* @author yangll
* @date 2020/12/30
*/
//实现类(CRUD)
public class Dao implements carObject {
//增加
/*
* 1.读取xml文件。
* 2.写内容到xml文件。
* */
@Override
public boolean addCar(Car car) throws Exception {
//1.读取xml文件
Document doc = XMLUtil.readXML();
/*增加
<car >
<color>绿色</color>
<model>越野</model>
<brand>五菱宏光</brand>
<price>800</price>
</car>
* */
//找到<carManagement>标签
NodeList management = doc.getElementsByTagName("carManagement");
Node item = management.item(0);
Element carElem = doc.createElement("car");
//设置car标签里面的数据
Element colorElem = doc.createElement("color");
Element modelElem = doc.createElement("model");
Element brandElem = doc.createElement("brand");
Element priceElem = doc.createElement("price");
//文本内容
colorElem.setTextContent(car.getCarColor());
modelElem.