/** * OffLineUtil.java */ package net.tfedu.problem.util; import com.thoughtworks.xstream.XStream; import net.tfedu.problem.dto.RootDto; import net.tfedu.problem.dto.ScreenShotDtoAndAnswer; import net.tfedu.problem.dto.ScreenshotAnswerDto; import net.tfedu.problem.util.xstream.DateConverter; /** * TODO(這裏用一句話描述這個類的做用) * <p> * TODO(這裏描述這個類補充說明 – 可選) * * @author houpengwei(1379902378@qq.com) * @Date 2019年05月06日 */ public class OffLineUtil { /** * * TODO 正式數據上傳成功之後在刪除,就是爲了測試書寫的方法 * <p> * TODO(這裏描述這個方法詳情– 可選) * * @param xStream TODO(這裏描述每一個參數,若是有返回值描述返回值,若是有異常描述異常) */ public static void xStreamUploadAliasEntity(XStream xStream) { xStream.registerConverter(new DateConverter()); xStream.alias("root", RootDto.class); xStream.alias("screenshot", ScreenShotDtoAndAnswer.class); xStream.alias("screenshotAnswer", ScreenshotAnswerDto.class); } }
package net.tfedu.problem.dto; import lombok.Data; import java.util.List; @Data public class RootDto { private List<ScreenShotDtoAndAnswer> screenshotList; }
package net.tfedu.problem.dto; import lombok.Data; import java.util.List; @Data public class ScreenShotDtoAndAnswer extends ScreenshotDto{ private List<ScreenshotAnswerDto> screenshotAnswerList; }
/** * ScreenshotAnswerDto.java * net.tfedu.problem.dto */ package net.tfedu.problem.dto; import java.util.Date; import com.we.core.db.entity.BaseEntity; import lombok.Data; import java.io.Serializable; /** * 截圖作題答案表Dto * * @author houpengwei * @Date 2019-05-06 */ @Data public class ScreenshotAnswerDto extends BaseEntity { /** * 匹配id */ private long id; /** * 截圖作題Id */ private long screenshotId; /** * 學生用戶id */ private long studentId; /** * 該題學生回答 */ private String answer; /** * 學生回答是否正確(默認爲0 ,1正確2錯誤3半對半錯) */ private int state; /** * 學生上傳附件路徑及文件名 */ private String filePath; /** * 老師評語 */ private String remark; /** * 提交時間 */ private Date submitTime; /** * 0單選1文本 2數碼筆3圖片 */ private int answerType; /** * 用戶答題用時 默認秒 */ private int useTime; /** * 錯誤類型id */ private long errorTypeId; /** * 知識點 */ private String navigationCode; }
XStream xStream = new XStream(new DomDriver()); OffLineUtil.xStreamUploadAliasEntity(xStream); RootDto rootDto = (RootDto) xStream.fromXML(problemXml);