胡海 翁存福
摘要:该文主要探讨了使用项目驱动式教学法在《JAVA框架技术》课程中的实践研究,通过设定不同难度的可操作性强的项目,让学生循序渐进地参与其中,以小组分工的形式共同完成项目的实施过程,最后对项目的结果进行答辩考评。对于表现优秀的同学进行表扬,对于表现不佳的同学给予鼓励,同时积极进行项目总结,便于归纳项目经验,这样不仅能提高学生主动参与学习的积极性,也能极大地提高学生实践动手能力并获取参与项目实施的经验,同时也能激发老师不断学习新知识新技能的热情,还能拓展自己的专业特长。
关键词:JAVA框架技术;项目驱动式;实践研究
中图分类号:TP3 文献标识码:A 文章编号:1009-3044(2018)30-0160-02
1 问题的提出
《JAVA框架技术》课程是软件技术专业一门实践性很强的专业选修课程,由于传统的教学方式很难让学生通过项目实践的方式综合运用框架技术,而《JAVA框架技术》课程主要讲解了Struts2、Hibernate和Spring3框架的使用方法以及整合框架的综合运用,如果没有项目进行实践,学生很难掌握其框架的使用方法,特别是框架的整合运用,对传统的单元知识点的讲解很难适应当前课程的需要,所以有必要通过项目驱动式教学法应用到《JAVA框架技术》课程当中。
以小组分工方式,设定可操作性强的项目,并且在项目实施过程中老师全程参与指导和帮助,同时不断提高项目难度,让学生从一个框架的熟练运用慢慢过渡到多个框架整合的熟悉运用,最后对学生的项目结果进行答辩考评,最终给出学生的综合成绩,通过这样的方式不仅能提高学生主动参与学习的积极性,也能极大地提高学生实践动手能力并获取参与项目实施的经验,同时也能激发老师不断学习新知识新技能的热情,还能拓展自己的专业特长。
2 项目的计划和实施
《JAVA框架技术》课程的主要内容是学习Struts2、Hibernate和Spring3框架的技术,以及如何整合框架的优势提高软件项目开发的效率,在教学当中通过引入项目驱动式教学法逐步设定项目目标的难度,从单一知识到综合运用,同时确定项目开发的进度,项目人员的组成和分工,以及对项目答辩验收制定标准。根据以上的构想,我们在项目实施的过程中,对项目的难度进行控制,做到由易到难,由小到大,由单一到复杂,结合《JAVA框架技术》课程的内容,制定Struts2框架技术过渡到Struts2+Hibernate框架整合,到最后的Struts2+Hibernate+Spring3框架整合三个过程,其中在每个过程当中又要结合每个框架技术的知识点进行合理设定项目内容,以便学生能够更全面地掌握框架技术的运用。
Struts2框架通过使用拦截器拦截用户的请求,核心控制器通过调用业务控制器来完成对用户的请求处理,最终返回处理结果给用户,通过开发基于Struts2框架的项目,可以让学生掌握Struts2框架当中的核心组件和高级应用,例如struts.xml配置文件、Action业务控制器、OGNL表达式、Struts2标签库、拦截器,输入校验和文件上传和下载等功能。Hibernate框架是一种封装了JDBC的开发源代码的对象/关系映射框架,可以使程序员使用面向对象的思想来操作关系数据库,从而可以让程序员把精力主要集中在业务功能上,大大提高了项目的开发效率。通过开发基于Struts2+Hibernate框架的项目,可以让学生掌握对双框架的整合运用,以及掌握Hibernate框架的核心组件和高级应用,例如hibernate.cfg.xml配置文件、PO对象、*.hbm.xml映射文件、Session接口、Transaction接口、Query接口、关联关系操作数据库、数据查询、事务处理、Cache管理等功能。Spring3框架是一个轻量级的控制反转和面向切面的容器框架,其核心是用于降低模块之间的耦合度。通过开发基于Struts2+Hibernate+Spring3框架的项目,可以让学生掌握对多框架的整合运用,以及掌握Spring3框架的核心组件的使用,例如IoC控制反转,AOP面向切面编程等功能。
在项目的实施过程中,也可以根据需要灵活运用项目,例如在开发一个学生信息管理系统的时候,可以使用三种不同的方式来开发,基于Struts2框架的学生信息管理系统、基于Struts2+Hibernate框架的学生信息管理系统、基于Struts2+Hibernate+Spring3框架的学生信息管理系统,通过三种不同的框架技术来开发一个相同的项目,最明显地就能体现框架整合带来的好处,不但方便了程序员的开发,而且大大提高了项目的开发效率,同时也对项目后期的维护和修改降低了成本。这为学生充分认识框架的使用和框架整合带来极大的便利有了更直观、更深入的认知,对学生学习的积极性和兴趣也起到了很好地发挥,通过不断的实践练习,可以大大提高学生对《JAVA框架技术》课程的学习效率,同时也取得了项目实战的经验,学生的动手能力得到了大大提高。
3 项目验收和心得体会
项目的验收阶段主要是通过小组答辩来进行的,答辩环节主要展示小组在项目开发过程中的开发流程、项目目标、小组分工和工作进度,其次重要的是要演示项目运行的整个过程。对项目的演示可以采用分工演示也可以统一演示,在演示过程中要求不能出现大的bug问题,能比较顺畅地运行出项目制定的任务。最后,老师对整个项目开展的过程提出问题,这些问题涉及项目实施的各个阶段,包括编码设计、软件测试、概要设计和需求分析等,通过这些问题进一步了解学生对项目开发过程中所涉及的各个知识的掌握情况。其中针對《JAVA框架技术》课程中的框架技术和框架整合知识更是重中之重,对提出的问题既要有针对性,还要覆盖到每个同学,这样才能比较客观,真实的反映每位同学的实际水平。对回答不到位的要给予补充,对回答错误的要及时纠正,给予正确的解释。通过答辩环节,对每位同学参与项目的情况给予公正、公平的成绩,对于表现优秀的同学要给予表扬,对于表现较差的同学要及时进行鼓励,并指出其中存在的问题以便下次加以改进。答辩完成之后要及时进行项目的总结工作,特别是对项目实施过程中存在的问题以及如何解决这些问题要有针对性的总结,并及时做好项目归档工作。
在项目实施的过程中笔者也有一些个人的心得体会。第一,项目要提前安排下去,分工明确,具体到人,往往有的时候对负责的任务没有具体明确,以至于在实施过程中相互推卸责任。第二,项目组长的人选一定要把握好,项目组长是整个项目的第一负责人,对项目的制定,任务分配,进度安排,过程督促有着重要的责任,另外项目组长的开发技术要比较扎实,这样才能帮助组员解决一些项目当中出现的技术问题。第三,项目实施过程要做好监控,老师要做好监督工作,要把关好对分配的任务完成达标,要把握好项目最终完成的质量,只有这样项目的实施才具有意义,学生才能真实学到项目当中的知识,从而才能提高学生项目实践水平。
参考文献:
[1] 张志峰,马军霞等. Web框架技术(Struts2+Hibernate+Spring3)教程[M]. 北京:清华大学出版社, 2013.
[2] 陈恒,张一鸣.Struts2框架应用教程[M].北京:清华大学出版社,2016.
[3] 杜聚兵.搞定J2EE:Struts+Spring+Hibernate整合详解与典型案例[M].北京:电子工业出版社,2012.
【通联编辑:张薇】