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

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

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

以SSM的登陆流程为例

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

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

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

  • 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,表结构分别如下

IDNAME
1小何
IDNAME
1001王老师
1002李老师
IDNAMESTUDENT_IDTEACHER_ID
101MySQL数据库11001
102通信原理11002

  上面的学生表,教师表都没有需要说明的地方,关键在于第三张课程表,有两个外键外联,一个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.部分实在无法修改的地方,把文字改成公式添加进去

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

最后祝大家答辩顺利,工作顺利,诸事顺心。

  • 17
    点赞
  • 119
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于JavaWeb的毕业设计答辩是一个重要的环节,以下是我对这个答辩的理解和回答。 首先,作为一个基于JavaWeb的毕业设计答辩,我会首先介绍我的毕业设计项目的背景和目标。我会简要介绍在该设计中所使用的技术和工具,以及项目的主要功能和特点。接下来,我会详细地解释我的设计思路和设计过程,包括需求分析、系统设计和数据库设计等方面。我会强调我的设计思路和方法与本课程所学的知识有机结合的原则。 然后,我会介绍我在实现过程中所遇到的一些主要问题和挑战,并说明我是如何解决这些问题的。我会重点强调自己在解决问题时所运用的技术和策略,并对其进行评估和总结。此外,我还会讨论我在项目中的亮点和创新之处,并对其进行展示和说明。 接着,我会重点介绍项目的测试和优化工作。我将说明我设计的测试用例以及测试的结果,包括系统的性能和功能测试。此外,我还会对系统进行优化,提高其运行效率和稳定性,并介绍我所采用的策略和措施。 最后,在答辩的结尾,我会对我的毕业设计项目进行全面的总结和评价。我会强调该项目的创新性和实用性,并对其的发展前景和应用场景进行展望。同时,我会表达我对这个项目的思考和感悟,并讨论我在项目中所学到的经验和教训。 总结起来,基于JavaWeb的毕业设计答辩是展示自己设计能力和项目实施能力的一个重要机会。在答辩过程中,我会充分展示自己对项目的理解和运用,以及丰富的实践经验。我会通过清晰的逻辑和详细的展示使评委对我的设计能力和实施能力给予充分的认可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值