📄 memoapp.java
字号:
package wwt.helloDigester.sample3;
import java.io.IOException;
import java.io.InputStream;
import org.apache.commons.digester.Digester;
public class MemoApp
{
/*-----/ Instance Field(s) /------------------------------------------------*/
private Memos _memos;
/*-----/ Constructor(s) /---------------------------------------------------*/
public MemoApp()
{
/* do nothing */
}
/*-----/ Private Methods(s) /-----------------------------------------------*/
/**
* Initializes the instance of Digester.
*/
private void init(Digester dgstr)
{
/* 当遇到memos元素时创建一个Memos对象 */
dgstr.addObjectCreate("memos", Memos.class);
/* 当遇到memo元素时创建一个Memo对象 */
dgstr.addObjectCreate("memos/memo", Memo.class);
/* 当遇到memos/memo/title元素时,调用当前Memo对象的setTitle方法 */
dgstr.addBeanPropertySetter("memos/memo/title", "title");
/* 当遇到memos/memo/body元素时,调用当前Memo对象的setBody */
dgstr.addBeanPropertySetter("memos/memo/body", "body");
/* 当遇到memos/memo/date元素时,调用当前Memo对象的setDate方法 */
dgstr.addBeanPropertySetter("memos/memo/date", "date");
/* 调用当前的Memos对象的addMemo方法,参数为当前的Memo对象 */
dgstr.addSetNext("memos/memo", "addMemo");
}
/**
* prints details of memos to standard out.
*/
private void print()
{
System.out.println(_memos);
}
/**
* maps the xml data to java object
*/
private void load(InputStream in) throws Exception
{
Digester dgstr = new Digester();
init(dgstr);
try
{
_memos = (Memos) dgstr.parse(in);
} catch (IOException e)
{
throw new Exception("Error occured When loading data",e);
}
}
/*-----/ Main Method /------------------------------------------------------*/
public static void main(String[] args) throws Exception
{
MemoApp mapp = new MemoApp();
/* load xml file from classpath */
mapp.load(MemoApp.class.getResourceAsStream("/wwt/helloDigester/sample3/memo.xml"));
mapp.print();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -