1、实验过程:1、构建实现场景,给出需求中的问题描述2、画出UML类图 3、实现代码package Factory;import entity.ActuallyBills;import entity.OriginalBills;import entity.PurchaseForm;import entity.ReceiveGoodsForm;import entity.ReturnGoodsForm;import PurchaseModule.AbstractPurchaseForm;import PurchaseModule.AbstractSaleForm;import PurchaseMod
2、ule.AbstractStockForm;/* * * author 张超红 * 采购订单类工厂 */public class PurchaseFactory implements AbstractFactory public PurchaseFactory() / TODO 自动生成的构造函数存根/采购单据Overridepublic AbstractPurchaseForm createPurchase() / TODO 自动生成的方法存根return new PurchaseForm();/退货单据public AbstractPurchaseForm createReturnGood
3、sForm()return new ReturnGoodsForm();/实际支付单据public AbstractPurchaseForm createActualllyBills()return new ActuallyBills();/应该支付单据public AbstractPurchaseForm createOrignalBills()return new OriginalBills();/收货单public AbstractPurchaseForm createReceiveGoodsBills()return new ReceiveGoodsForm();public Abst
4、ractStockForm createStock() return null;public AbstractSaleForm createSale() import entity.BankTransferForm;import entity.BorrowingForm;import entity.CashExpenseAccount;public class SaleFactory implements AbstractFactory public SaleFactory() /现金支付销售return new CashExpenseAccount();/借款单据销售public Abstr
5、actSaleForm createBorrowingForm()return new BorrowingForm();/银行转账销售public AbstractSaleForm createBankTransffer()return new BankTransferForm();import entity.StockOutForm;import entity.StockRntryForm;public class StockFactory implements AbstractFactory public StockFactory() /入库return new StockRntryFor
6、m();/出库public AbstractStockForm OutStock()return new StockOutForm();package PurchaseModule; *public interface AbstractPurchaseForm extends Form void display();public interface AbstractStockForm extends Form void display();public interface AbstractSaleForm extends Form package entity;import java.util
7、.Collection;import java.util.Date;public class PurchaseForm implements AbstractPurchaseForm String form_no;Date date;String CreateFormPerson;String tax_items;/税目Collection dataCollection;/导入单据String data;/单据public void add()System.out.println(添加单据.);public void delete()删除单据.public void print()打印.pub
8、lic void examine()审批.public PurchaseForm() public void display() 您的采购单据中的采购单如下.package Util;import java.io.File;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import org.w3c.dom.Node;import org.w3c.dom.NodeList;public class XMLUti
9、l public static Object getBean() try System.out.println(正在从配置文件中读取数据./ 创建DOM文档对象DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();DocumentBuilder builder = dFactory.newDocumentBuilder();Document doc;doc = builder.parse(new File(config.xml);/ 获取包含类名的文本节点NodeList nl = doc.getElementsByTagName(classNameNode classNode = nl.item(0).getFirstChild();String cName = classNode.getNodeValue();/