对对对对组冲刺博客
仓库地址:https://git.coding.net/zhh1011/RRRRRightTeamProject.git
【第一天】
1.日期:2018.06.13
2.今日情况
| 姓名 | 今日完成 | 遇到问题 | 资料网址 | 明日任务 | 耗费时间 |
| 王玥莹 | 对比其他网课系统,修改现阶段样式 | 页面于后台顺利连接,获取后台数据 | 网址 | 继续学习前端技术,完善页面 | 3h |
| 裴颖 | 结合同类型网站,对已有原型进行细化 | WEB前后端交互如何实现 | 网址 | 开始前端页面编码 | 2h |
| 柯招坤 | 开始搭建框架,复习servlet有关知识,和组员一起梳理项目结构 | 无 | 网址 | 完成部分jsp页面代码,把用户自测的部分类写完 | 3h |
| 马福孝 | 熟悉mvc开发模式,复习servlet JDBC 数据库连接池 dbutils相关知识 | 无 | 无 | 进一步巩固java web后端知识,开始初步着手项目环境的搭建 | 4h |
| 张航 | 建设团队仓库,熟悉git操作,博客撰写 | 如何在IDE上部署git,并设置忽略文件 | 网址 | 项目结构搭建,熟悉maven技术,回顾Java EE | 4h |
3.燃尽图及项目整体进度

4.会议照片

【第二天】
1.日期:2018.06.14
2.今日情况
|
姓名 |
今日完成 |
遇到问题 |
资料网址 |
明日任务 |
耗费时间 |
|
王玥莹 |
bootstrap研究 |
有些内容的不理解 |
学习前端知识,完善代码 |
2h |
|
|
裴颖 |
Js、jquery的学习 |
Js的应用问题 |
解决不会的问题,继续前台的代码 |
2h |
|
|
柯招坤 |
学习mvc开发、maven,开始部分类的设计 |
maven的有关配置问题 |
学习数据库连接池 |
3h |
|
|
张航 |
根据ER图建设部分数据库,进一步熟悉git
|
coding.net如何添加成员 |
完善数据库,完善仓库建设
|
2h |
|
|
马福孝 |
基本完成项目结构的搭建工作,进一步学习了DBunits和数据库连接池的相关知识 (项目截图见备注栏) |
搭建maven项目结构时,出现pom文件报错问题,通过和组内成员讨论和上网百度得以解决 |
进一步学习Javaweb知识,初步进行接口的编写 | 3h | |
|
备注 |
|
||||
3.燃尽图及项目整体进度

4.会议照片

【第三天】
1.日期:2018.06.15
2.今日情况
| 姓名 | 今日完成 | 遇到问题 | 资料网址 | 明日任务 | 耗费时间 |
| 王玥莹 | 前端知识学习,理解jsp | jsp页面的理解不通。 | 网址 | 继续对前端页面完善 | 2h |
| 裴颖 | 前端页面的完善及xml相关知识的学习 | 电脑配置出现问题,已解决;xml的一些知识点不理解 | 网址 |
继续对前端页面进行修改 |
2h |
| 柯招坤 | 合作完成Dao层部分类,学习git的功能 | 合作完成Dao层部分类,学习git的功能 | 网址 | 完成Dao层的接口类的实现 | 3h |
| 马福孝 | 完成部分接口的编写,熟悉了git命令,学习了coding上如何进行团队合作开发项目 |
如何团队成员向仓库中传项目,通过查阅资料以及和其他成员探讨得以解决 |
无 |
继续进行接口的开发,实践在coding中进行团队合作 |
4h |
| 张航 | 合作完成DAO层部分接口类,熟悉git团队合作 | 与其他成员git冲突,未解决 | 网址 | 解决冲突问题,着手实现DAO层接口 | 4h |
3.燃尽图及项目整体进度

4.会议照片

5.codingc仓库截图

【第四天】
1.日期:2018.06.16
2.今日情况
| 姓名 | 今日完成 | 遇到问题 | 资料网址 | 明日任务 | 耗费时间 |
| 王玥莹 | 完成分配前端任务,理解jsp | 不理解jsp内容,已解决 | 网址 | 继续代码完善,学习交互内容 | 3h |
| 裴颖 | 前端代码的完善,学习bootstrap相关知识 | 代码方面存在一些错误 | 网址 | 解决不会的问题,继续前端的代码 | 3h |
| 柯招坤 | 完成数据库连接池部分,学习jstl | jstl库安装问题 |
网址 | 学习El表达式 | 3h |
| 马福孝 | 完成了课程学习模块的接口编写,完成远程云服务器搭建,进一步学习了git命令 | 无 | 无 | 进行学习模块部分类的实现,查找有关推荐算法的知识 |
3h |
| 张航 | 实现DAO层接口,着手service层实现 | 无 | 无 | service层开发,controler层接口开发 | 3h |
3.燃尽图及项目整体进度

4.会议照片

【第五天】
1.日期:2018.06.17
2.今日情况
| 姓名 | 今日完成 |
遇到问题 |
资料网址 | 明日任务 |
耗费时间 |
| 王玥莹 | 前端代码的完善,学习交互知识 | 代码方面存在一些错误 |
网址 | 解决不会的问题,继续前端的代码 |
3.5h |
| 裴颖 | 补充完善代码,学习前端相关知识 |
学习方面遇到的一些问题,通过询问同学解决 | 网址 | 继续完成前端的代码 |
3h |
| 柯招坤 | 后端代码补充,合作实现网课推荐部分 | 代码bug |
网址 | 整理项目结构,合作完成剩下的部分 |
3h |
| 马福孝 | 合作探讨实现service层的部分接口,学习了数据库连接池的api | 无 | 继续合作实现service层的接口,查找学习推荐算法相关知识 | 2.5h | |
| 张航 | 实现service部分接口 | 学习方面遇到的一些问题,通过询问同学解决 | 无 | 继续实现service接口,完成controler层 | 3.5h |
3.燃尽图以及项目整体进度

4.会议图片

5.部分代码段展示(测试模块出题判题代码块)
public void setQuestion(HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException{
int isSucceed=0;
UsersDao ud=new UsersDao();
Question question=new Question();
String quesDec=request.getParameter("quesDec");
//System.out.println(quesDec);
String selectA=request.getParameter("selectA");
String selectB=request.getParameter("selectB");
String selectC=request.getParameter("selectC");
String selectD=request.getParameter("selectD");
String solution=request.getParameter("solution");
int id=Integer.parseInt(request.getParameter("questionId"));
question.setClasses(id);
System.out.println(id);
if(selectA!=null){
question.setSelectA(selectA);
}
if(selectB!=null){
question.setSelectB(selectB);
}
if(selectC!=null){
question.setSelectC(selectC);
}
if(selectD!=null){
question.setSelectD(selectD);
}
if(solution!=null){
question.setSolution(solution);
}
if(quesDec!=null){
quesDec=new ChangeToHtml().change(quesDec);
question.setQuesDec(quesDec);
try {
isSucceed=ud.setQuestion(question);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(isSucceed==1){
try {
response.getWriter().print("<script language='javascript'>alert('出题成功')</script>");
response.setHeader("refresh","0.5,URL=SetQuestion.jsp");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
try {
response.getWriter().print("<script language='javascript'>alert('出题失败,请重新出题')</script>");
response.setHeader("refresh","0.5,URL=SetQuestion.jsp");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public void makeQuestion(HttpServletRequest request, HttpServletResponse response){
int classes=Integer.parseInt(request.getParameter("question"));
UsersDao ud=new UsersDao();
ArrayList<Question> list=new ArrayList<Question>();
try {
list=ud.selectQuestion(classes);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
request.setAttribute("question", list);
request.getSession().setAttribute("question", list);
try {
request.getRequestDispatcher("makeQuestion.jsp").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void checkSolution(HttpServletRequest request, HttpServletResponse response){
String[] solution=request.getParameterValues("mySolution");//获取用户的答案
int classes=Integer.parseInt(request.getParameter("classes"));//获取题目对应的标号
String solutionString=null;
String[] trueSolutionString=new String[10];
int numberOfTrue=0;
String message=null;
UsersDao ud=new UsersDao();
ArrayList<Question> qu=new ArrayList<Question>();
try {
qu=ud.selectQuestion(classes);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int i=0;
//System.out.println(qu);
//获取正确答案并且存进一个数组中
for(Question ques:qu){
trueSolutionString[i++]=ques.getSolution();
}
//将用户的答案和正确答案进行对比
for(int j=0;j<solution.length;j++){
if(trueSolutionString[j].equals(solution[j])){
numberOfTrue++;
response.addCookie(new Cookie("infoDetail"+j,"正确"));
}else{
String messageString="错误|"+"正确答案是:"+trueSolutionString[j]+"|你的答案是:"+solution[j];
response.addCookie(new Cookie("infoDetail"+j,messageString));
}
}
if(numberOfTrue==3){
message="恭喜获得满分!!!,继续努力。";
}else if(numberOfTrue<3&&numberOfTrue>0){
message="很遗憾,正确数量为"+numberOfTrue+",再接再厉。";
}else{
message="what? 全部错误,要加油啊。";
}
try {
request.getRequestDispatcher("makeQuestion.jsp?message="+message+"").forward(request, response);
} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

【第六天】
1.日期:2018.06.18
2.今日情况
| 姓名 | 今日完成 | 遇到问题 | 资料网址 | 明日任务 |
耗费时间 |
| 王玥莹 | 修改编写时的错误 |
代码样式疑问,已解决 | 网址 | 修改代码,完善项目 | 3h |
| 裴颖 | 前端页面的编写 | 修改代码中存在的错误 | 无 | 继续完成前端的界面,学习交互相关内容 |
3h |
| 柯招坤 | 合作完成前后端页面的连接 |
测试问题 |
无 | 合作完善系统 |
3h |
| 马福孝 | 完成service层方法,查找学习了协同过滤算法、内容关联算法等推荐算法 | 在编写service层方法时出现了控制正等异常 | 网址 | 继续完善项目 | 3h |
| 张航 | 实现service接口,协作完成controler层 |
部分实现出现bug |
无 | 前后端连接,测试 |
3h |
3.燃尽图以及项目整体进度

4.会议图片

5.仓库截图


浙公网安备 33010602011771号