Электронный магазин на Java и XML

         

Класс Recorder - часть 4


</Qresults> */ public void record( String quesid, int type, String[] optS ){ if( terminated ) return ; // prevent backing up from terminal Q // System.out.println("Start record: " + quesid ); StringBuffer sb = new StringBuffer( 100 ); sb.append("<Ques id=\"" ); sb.append( quesid ); sb.append("\" >"); switch( type ){ case Interpreter.QMC : case Interpreter.QMCM : if( optS == null || optS.length == 0 ) break ; for(int i =0 ; i < optS.length ; i++ ){ sb.append("<Qopt val=\""); sb.append( optS[i] ); sb.append("\"></Qopt>"); } break ; default : sb.append("UNKNOWN TYPE"); } sb.append("\r\n</Ques>\r\n"); String tmp = sb.toString(); // note this will replace answer if user backed up with browser back record.put( quesid, tmp ); return ; }

public String toString() // for debugging { StringBuffer sb = new StringBuffer( "Recorder user: " ); sb.append( userid ); sb.append(" type: " ); sb.append( usertype ); sb.append(" session: " ); sb.append( sessionid );sb.append(" method: "); sb.append( method ); sb.append( " output: " ); sb.append( output ); // how and where we save return sb.toString() ; }

}

В листинге 23 показаны результаты ответа одного пользователя на простой опрос. Атрибут source указывает, какой файл XML использовался для создания анкеты. В атрибут date записывается дата первого вхождения пользователя в систему и открытия страницы введения в анкету. Мы также включили атрибут sessionid для помощи в отладке, но, вероятно, без него можно обойтись.

Листинг 7.23. Запись результатов опроса одного пользователя на XML

<Qresuits source="e:\scripts\javatest.xml" date="Mon May 22 22:30:20 CDT 2000" userid="unknown" usertype="passed" sessionid="9590526208594804">

<Ques id="studying:4" >

<Qopt val="a"></Qopt><Qopt va1="b"></Qopt> <Qopt val="d"></Qopt><Qopt val=*e"> </Qopt> <Qopt val="k"></Qopt><Qopt val="l"> </Qopt> <Qopt val="m"> </Qopt> </Ques>

<Ques id="studying:3"><Qopt val="l"></Qopt> </Ques> <Ques id="studying:2"><Qopt val="2"> </Qopt> </Ques> <Ques id="studying:1" > <Qopt val="a"> </Qopt> <Qopt val="f"></Qopt> </Ques> </Qresults>

 




Содержание  Назад  Вперед