MyBatis在《Web中间件技术》课程中的应用
王天顺,程 杰,张志文
(郑州升达经贸管理学院信息工程学院,河南 郑州 451191)
摘 要 :作者本学期所承担课程为大四同学的《Web中间件技术》课程,面向的是即将毕业走上就业岗位的同学们。在这门课程的数据库访问章节中,没有采用原生CRUD访问方式,而是首次在我院教学中使用了MyBatis这个半自动化的数据访问中间件。在教学过程中取得了较好的效果,提高了同学们对JAVA语言、JAVA开发框架、中间件技术的理解与应用能力。
关键词: 数据访问中间件;MyBatis;理解与应用能力
高年级计算机专业与软件工程专业比较重要的专业选修课《Web中间件技术》,是很多同学毕业时JAVA就业方向的课程。众所周知,JAVA是当前互联网行业的第一编程语言,应用范围最为广泛。我校作为身处内地的民办本科院校,天然地具有资金短缺、教师人数较少、课程教学任务较重的特点,故而对于JAVA系列相关课程开设得并不是特别完善。如何在有限的教学条件下尽可能地让学生打牢基础、与市场接轨,不要落后于其他院校的同学,是笔者讲授这门课程的重要考虑因素[1]。在综合考虑了现实条件后,在JAVA课程、SSH技术的基础上,软工教研室经过多次协商讨论,在2018—2019学年第一学期的课程中,引入了以Spring和MyBatis为核心技术框架的《Web中间件技术》,对授课内容进行了重构。
笔者在本文中重点介绍了数据访问中间件My-Baits的基本概念以及在课程中的简单应用与对学生在毕业选题时的影响。
在壶关县石坡乡板安窑村见到郭书凤时,她正在自己家的兔舍给小兔喂食。她告诉笔者:“我刚从县城回来,还没吃几口饭就得赶紧喂这些‘小祖宗’,要不然它们就会折腾坏兔舍,饿出毛病来。”虽然这么说,但丝毫掩饰不住内心的喜悦。
一、中间件的定义
中间件是一类位于操作系统软件与用户应用软件的中间提供服务或框架的软件,即为“中间件”。由于中间件需要屏蔽分布环境中异构的操作系统、网络协议等,它必须能够提供分布环境下的通信服务。基于目的和实现机制的不同,可以将中间件分为远程过程调用(Remote Procedure Call)、面向消息的中间件(Message-Oriented Middleware)、对象请求代理(Object Request Brokers)、数据访问中间件(Database Access Middleware)等。数据访问中间件就是指一切连接应用程序和数据库的软件,这种技术可以建立数据应用资源互操作的模式对异构环境下的数据库实现连接或文件系统实现连接,并按使用者的要求进行读取。
二、半自动化数据访问中间件MyBatais
传统的JAVA应用都是采用JDBC来访问数据库的,但传统的JDBC采用的是一种基于SQL的操作方式,这种操作方式与JAVA语言的面向对象特性不太一致。所以JAVA EE应用提供了ORM(Object Relation Maping)技术来以面向对象的方式操作关系数据库。最早的ORM是Entity EJ(Enterprise Java Bean),EJB就是经典JAVA EE应用的核心,从EJB 1.0到EJB 2.x,许多人会觉得EJB非常烦琐,所以导致EJB备受诟病。之后还有针对新项目、新系统的全自动数据访问服务中间件Hibernate框架出现。但是,针对一些已有特定系统(如银行系统),出于安全、必须基于存储过程、严苛的性能要求等方面的考虑,Hibernate这种全自动数据访问中间件无法使用。由此,“半自动化”的MyBatis受到了软件服务部门的欢迎与广泛应用。数据访问服务中间件MyBatis是Apache组织提供的一个轻量级持久层框架,这里的“半自动化”是相对Hibernate等提供了全面的数据库封装机制的“全自动化”ORM实现而言的,而MyBatis则着力于POJO与SQL之间的映射关系。MyBatis对业务逻辑实现人员而言,面对的是纯粹的JAVA对象,而对于具体的数据操作,MyBatis则需要程序员编写,然后通过Mapping映射配置文件,将SQL所需的参数以及返回的结果字段映射到指定POJO。
三、教学中的应用
(1)提出需求;
MyBatis最新版本是3.4.7,这也是笔者在教学过程中所使用的版本。在笔者的教学工作中,使用MyBatis作为数据访问层,来对底层数据库进行CRUD操作。首先在整个课程的开始要告诉学生这门课程的重要性,从实践应用的角度引导学生,使他们克服课程中的畏难心理,明白只要认真学习都能够达到目标[2]。在课程的中后期,给同学们的案例是某公司的CRM系统设计。该CRM系统分为预算采购、入库登记、资产变动、资产维修、资产处置、资产报表等。通过对系统进行模块划分,进行类和接口的抽象、提取等操作。在课程中,重点讲解MyBatis基于注解的使用方法,弱化XML文件的配置[3],提高系统的编写效率。通过近九周的程序编写后,同学们对JAVA、Spring和MyBatis基本都能够熟练掌握:
(4)通过Spring的MVC技术实现对后台数据库的CRUD操作。通过对此CRM系统的教学实践,学生可以较为轻松地研发出类似的软件产品的原型或者将其完善之后作为自己的毕业设计,取得了较为良好的教学效果,基本达到了教学目的。
(3)定义DAO接口、DAO实现及对应的Service;
(2)定义持久化类;
(2)“就业目标实现”包含“可促进就业的”“能找到好工作的”“有助于自主创业的”这三个自由节点,指的是个体在“再就业培训参与决策”之前对“培训项目在促进就业目标实现”方面形成的前景价值判断。
四、结束语
教学效果是否好,要看最终学生的认可程度。在我院实行JAVA为基础、Spring和MyBatis为核心技术的《Web中间件技术》课程以来,通过近四年毕业生的论文选题与就业情况,可以明显看出,基于JAVA路线、使用中间件技术与开发框架来学习并以此就业的人数比例在不断地提高。通过跟踪统计近四年学生所选题目可得下表1所示,在图1中,则列出了对应JAVA类选题在四年中所占的比例。通过本文的论述,可以看到,随着“互联网+”时代的到来,以阿里巴巴、京东、腾讯为代表的互联网公司对JAVA相关技术如分布式、云计算、大数据、人工智能等技术持续、深入地研究与应用,对课堂教学工作产生了极其深远的影响。一个具体应用场景、需求可能需要快速进行迭代、敏捷开发的场景,是基于MyBatis这个半自动化的数据访问服务中间件的最佳用武之地,故而在笔者所讲授课程《Web中间件技术》中以Spring和MyBatis进行了讲解与实践[4]。
从文本的语境中感受表达内涵,能够让学生获得更多深层次的理解感知。融入语境深入探讨,能够给学生更多对话文本的机会,利于其在主动参与交流中形成丰富感知。针对文本内容进行深入探知,定会利于其在主动对话文本的过程中形成有针对性的运用方法,帮助他们强化识记运用。
表1 信息工程学院软件工程专业近四年选题类型统计
图1 JAVA类题目在各级毕业生选题类型中所占比例
参考文献:
[1]丁瑞萍.应用型地方本科院校构建精准实践育人体系的思考[J].民营科技,2018,(12):282-283.
[2]林恒建.MyBatis模板化教学[J].福建电脑,2017,33(11):180+8.
[3]王天顺,甄姬娜,王丽娟.C++程序设计教学改革探索与实践[J].电脑知识与技术,2012,8(12):2833-2834+2856.
[4]王天顺.面向学生需求的计算机基础教育深度改革实践[J].教育现代化,2017,4(51):44-45+49.
Application of MyBatis in"Web Middleware Technology"Course
WANG Tian-shun,CHENG Jie,ZHANG Zhi-wen
(College of Information Engineering,Zhengzhou Shengda University of Economics,Business&Management,Zhengzhou,Henan 451191,China)
Abstract: The course I undertake at this semester is "Web Middleware Technology"for senior students.It is aimed at students who are about to graduate and take up jobs.In the database access chapter of this course,instead of using native CRUD access mode,MyBatis,a semi-automatic data access middleware,was first used in our college teaching.In the teaching process,we have achieved good results,and improved the students' understanding and application ability of JAVA language,JAVA development framework and middleware technology.
Key words: Database Access Middleware;MyBatis;understanding and application ability
中图分类号: G642.4
文献标志码: A
文章编号: 1674-9324(2019)38-0204-02
收稿日期: 2018-12-24
基金项目: 2018年度河南省民办教育协会课题,《新工科背景下民办高校工程教育改革的研究与实践——以软件工程专业为例》
作者简介: 王天顺(1980-),男(汉族),河南郑州人,副教授,研究方向:软件工程、物联网。