星期五, 三月 11, 2005

过度设计的糟糕后果.

在Java IO存在过度设计的问题.
比如,在JAXP中调用XSLT Transform的时候,需要用Unicode的格式打开一个.xslt的格式转换文件,假设xslt的名称为:payroll.xslt
对应的JAXP代码:注意红色部分:

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
TransformerFactory tmf = TransformerFactory.newInstance();
Transformer tf = tmf.newTransformer(new StreamSource(new InputStreamReader(new FileInputStream("payroll.xslt"),"UTF-8")));