策略一:
参考一下方法使用分页
策略二:
还没想到
接口设计
get测试页面 获取测试页面
- 用户进入测试界面,前端发送get页面的请求,请求参数为
key | Value |
---|---|
label | ”决策树“ String |
- 后端随机挑选10道题,绑定10道题的参数到model:
model.addtribute("questions", XXX);//题目
model.addtribute("question_info", XXX);//题目内容
- 用户提交试卷, 前端发送post请求,请求参数为:
key | Value |
---|---|
试卷类型 type | 1 |
questions | array |
question[i].questionType | 1/2/3/4 |
question[i].label | “决策树” |
question[i].correct | 0 该题回答错误 / 1该题正确 |
- 后端创建试卷,创建测试记录,将数据写入试卷和测试记录,返回Result()
尝试过程
- TextContent创建
Entity
@Table(name = "aial_text_content")
@EntityListeners(AuditingEntityListener.class)
public class TextContent extends BaseEntity {
/**
* 内容(Json)
*/
@Column( name = "question_type", nullable = false, length = 1024)
private String content;
public TextContent(){
}
public TextContent(String content) {
this.content = content;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
{
// "questionType": 1,
// "difficulty": 1,
// "correct": "a1",
// "label": "决策树",
"title": "中国的首都是____",
"items": {
"a1": "东京",
"a2": "西京",
"a3": "南京",
"a4": "北京"
},
"solution": "东京是日本的首都,没有城市叫做西京,南京是中国的城市,北京才是中国的首都"
}