毕业设计答辩技巧&降重技巧

  • 做者提供远程调试服务
  • 做者提供毕业设计模拟答辩视频
  • 联系方式VX: zhixing480

问题1:你这个项目用到了SSM/SSH/JSP/JavaWeb,是怎么体现的?

    在解答的过程当中,流程遵循:页面–>Controller/Action–>Service–>DAO–>数据库,这期间数据的传输,数据的判断,数据的返送,返送后页面的返显,要着重强调。javascript

以SSM的登录流程为例html

  • 1.login.jsp经过form表单,提交用户名:username,密码:password,对应的Action为:login.action/login.dojava

  • 2.经过SpringMVC框架的@RequestMapping注解匹配,从JSP进入Controller/Action中,此时username和password也从页面传输到了Controller/Actionajax

  • 3.Controller/Action会调用Service层[业务逻辑处理层],此时数据username和password从Controller/Action传输到了Servicesql

  • 4.Service继而调用DAO[数据库交互,方法定义层],数据再一次从Service传输到DAO数据库

  • 5.DAO和数据库进行交互,将数据融入sql语句中,执行查询设计模式

  • 6.数据库返回查询结果到DAO浏览器

  • 7.DAO返回查询结果到Service服务器

  • 8.Service返回查询结果到Controller/Action架构

  • 9.Controller/Action返回查询结果到login.jsp,页面根据返回的结果进行判断,登录成功仍是失败

  • 10.总结:数据是一直在传输的,为何设计这么多层?能够理解为一种设计模式,每一层作本身对应的业务,提升效率,逻辑分明。

问题2:你在进行数据库设计的时候,有什么技巧吗?

  • 1.几个关键词不懂的先去查一下,避免老师问的时候不知道:数据字典,三段式,主键,外键,自增主键,E-R图
  • 2.数据库设计通常会遵循三段式
  • 3.数据库通常会采起外键关联
  • 4.数据库设计通常不采起强制外键关联。这句话和上面不矛盾哦,我会在下面的例子中详细解释

举例
  学生表T_STUDENT,教师表T_TEACHER,课程表T_COURCE,表结构分别以下

ID NAME
1 小何
ID NAME
1001 王老师
1002 李老师
ID NAME STUDENT_ID TEACHER_ID
101 MySQL数据库 1 1001
102 通讯原理 1 1002

  上面的学生表,教师表都没有须要说明的地方,关键在于第三张课程表,有两个外键外联,一个STUDENT_ID,关联T_STUDENT里的ID,一个TEACHER_ID关联T_TEACHER里的ID,也就是说:T_COURCE中的STUDENT_ID和TEACHER_ID是和T_STUDENT,T_TEACHER的主键一致的,但并不采起外键关联。外键关联会产生一种弊端:数据不存在时,后台数据库会报错,如咱们在新增一条课程信息时:“103,电磁场与电磁波,1,1009”,这个1009不存在,就会报错,致使系统崩溃,不能进行下一次使用。

解决方案:新增以前,针对关联得ID进行一次查找,如上数据,分别针对ID=1,ID=1009去T_STUDENT,T_TEACHER查找一次,没有就在前台页面提示:“无对应的ID信息,请核对后再上传”。

问题3:给我找到XX模块的代码,并讲解一下[XX流程是怎么实现的]?

   这个问题,对于学习不深,了解很少的咱们,应该是最难的一个问题,仍是遵照发给你们的讲解视频中找代码的思路:

  • 1.在浏览器"右键检查"咱们须要审查的元素,看它是在一个form里,仍是Ajax,仍是Href,分别对应下面的访问路径

方式一:

<form action="login.action">

方式二:

ajax{
     url:/login.action
}

方式三:

href="login.action"
  • 2.在Eclipse中,ctrl + H,选择File Search,粘贴上面的login【演示不一样的模块,多是不一样的*.action,复制粘贴*便可】在Containing text里,File name patterns中输入 * ,点击右下角Search

  • 3.基于以上,会找到一个Controller/Action里的代码,此时便从前台页面进入了后台接口代码

  • 4.进入Controller/Action里的Service

  • 5.进入Service里的Dao

  • 6.经过Dao找到关联的数据库语句,有多是hql(SSH),有多是xml(SSM),有可能就是sql(原生语句)

  • 7.以上就完成了一次代码的查找

  • 8.总结:右键检查页面–》查找代码–》Controller/Action–》Service–》DAO–》DB

问题4:你以为这个系统还有什么须要完善的地方?

   通常问这个问题的时候,答辩基本结束,具体可参考下面几个解答

  • 1.若是咱们使用的是JSP,可说:后期页面计划采用静态化模板freemarker,节省服务器资源和压力

  • 2.大部分项目都只是本地安装,可考虑内网穿透或部署到云服务器,让全部人均可以访问咱们的项目

  • 3.项目服务器单一,只有一台Tomcat,可考虑针对Tomcat搭建简单的平行集群,加强系统稳定性

  • 4.系统并发能力有待提高,后期进一步学习中,考虑使用Nginx进行项目的负载均衡配置

问题5:整个项目你的工做流程是怎么进行的?

  这个问题,傲视通常是想看看这个毕设究竟是不是咱们作的,通常项目的搭建遵循下面的步骤:

  • 1.设计数据库表,遵循三段式,设计出数据字典后,进行数据库,表的建立

  • 2.搭建项目架构[SSM,SSH,Maven]

  • 3.建立POJO/Model

  • 4.建立DAO/Mapper,并进行测试

  • 5.建立Service,并进行测试

  • 6.建立Controller/Action,并进行测试

  • 7.建立JSP/HTML页面,并进行先后台联调

  • 8.完成一个流程

问题6:若是讲解的过程当中,遇到不会的怎么办?

   不要慌张!不要慌张!不要慌张!我在平时工做中,前面写的代码,后面再看还须要再看一遍才能回想起当时的逻辑,此时咱们要作的就是:右键检查,找到代码,看代码的同时,跟老师说:“这个模块是最初作的,业务逻辑我须要再看下”,答辩时间很短,通常这个时候老师就会下一个问题,没有下一个问题,咱们就看看代码,结合场景,说出代码自己的业务逻辑。

如:购物车,其业务逻辑通常就是将对应的

  • 1.商品添加到购物车,商品数量-1,此时涉及商品表的update,购物车表新增一条记录,设计购物车表的insert,

  • 2.当从购物车变成订单状态时,购物车记录清空,涉及购物车的delete,以及订单表的insert

问题7:论文降重了多少次?

参考我本身的,初稿一次,终稿20几回

问题8:论文降重技巧?

通常查重是8-16字重复,判断为重复,即标红。咱们要作的就是打断连续,或从新组织语言

  • 1.重复率大片标红的地方,添加参考文献的角标,被标注的一句话不会被查重,重复率多就都是逗号

如:XX,XX,XX,XX,XX[1],则整个XX,XX,XX,XX,XX都不会查重,
可是:XX,XX。XX,XX。XX[1],只有最后一个XX不会查重

  • 2.部分实在没法修改的地方,把文字改为公式添加进去

    答辩过程没有你们想象的那么恐怖,我目前接手的这些,所有一次性过答辩,咱们要作的就是:找到代码。找到代码就解决了一大半问题。

最后祝你们答辩顺利,工做顺利,诸事顺心。

相关文章
相关标签/搜索