您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > MVC模式在Java-Web开发中的应用及实现
科技资讯2017NO.21SCIENCE&TECHNOLOGYINFORMATION信息技术8科技资讯SCIENCE&TECHNOLOGYINFORMATION随着互联网技术的发展,基于B/S模式的Web应用系统已成趋势,用户界面完全通过浏览器实现,主要的事务逻辑在服务器端实现。JavaWeb应用程序是采用Java技术开发的Web应用程序,在JavaWeb的开发应用中使用MVC模式能够使得系统更容易扩展、部署和维护,提高开发效率。1MVC模式MVC(Model-View-Controller)是20世纪80年代发明的一种软件设计模式。MVC模式将交互式应用分成模型(Model)、视图(View)和控制器(Controller)3个部分。Model是从现实世界中抽象出来的对象模型,模型封装了数据和对数据的操作,并进行数据处理计算。View是应用和用户之间的接口,负责将应用呈现给用户。Controller负责视图和模型之间的交互,控制对用户输入的响应、响应方式和流程,它主要负责:(1)把用户的请求分发到相应的模型。(2)将模型的改变及时反映到视图上。将MVC设计模式运用在Web项目开发上,可以很大程度地节约开发时间,将软件开发人员的精力集中在业务逻辑上,不仅减少了项目开发的成本,还大大提高了开发效率,增强了Web应用系统的维护性和延展性。2MVC模式在JavaWeb应用中的实现经典MVC模式在桌面程序中发挥了很重要的作用,随着软件规模的不断扩大,MVC设计模式正在应用到各种应用程序的设计中。Sun公司提出了两种web应用程序的开发方式,分别称为模式1和模式2。模式1以JSP为中心,JSP页面响应用户请求并将处理结果返回客户,数据读取由JavaBean完成。这种模式中JSP页面同时实现业务逻辑、数据显示和流程控制,适合开发小规模的Web应用程序,但不能满足复杂的大型应用程序的开发需求。模式2基于MVC设计模式,由不同的组件分别实现应用逻辑、处理过程和显示逻辑,这些组件可以进行交互和重用,以Servlet为核心,具体实现如下。Model:JavaBean对象,用于封装商业规则和存储数据。View:JSP页面,接收Servlet传递的内容,调用JavaBean并显示其中的数据给用户。Controller:Servlet对象,负责所有的用户请求参数,判断请求参数是否合法,根据请求的类型调用JavaBean执行操作并将处理结果交由View显示。模式2充分发挥了JSP和Servlet的技术特点,JSP页面擅长数据显示,适合做显示层,避免在JSP中大量使用Java代码来处理数据;Servlet擅长数据处理,应避免在其中有大量的HTML标记输出。模式2分离了显示层和业务层,有利于软件的扩展和维护。从软件工程化的角度来讲,有利于开发团队各司其职,有利于软件开发的工程化管理。DOI:10.16661/j.cnki.1672-3791.2017.21.008MVC模式在JavaWeb开发中的应用及实现郭平(上海科技管理学校信息技术系上海200433)摘要:MVC设计模式是一种可靠有效的开发模式,它实现了业务逻辑和显示界面的分离,在Web应用开发中广泛地使用,该文简要介绍了MVC设计模式,讨论了MVC模式在JavaWeb应用中的实现,最后给出了一个基于MVC模式的JavaWeb登录程序的实例。关键词:MVC设计模式Web应用Java中图分类号:TP393文献标识码:A文章编号:1672-3791(2017)07(c)-0008-03图1MVC登录程序流程图科技资讯2017NO.21SCIENCE&TECHNOLOGYINFORMATION信息技术9科技资讯SCIENCE&TECHNOLOGYINFORMATION模式1适合小型的程序开发,开发速度快,如果程序复杂,考虑到代码的维护工作,一般采用模式2。3Web实例以一个Web用户登录程序为例说明MVC设计模式在实际开发中的主要作用。用户登录功能是Web应用系统需要实现的基本功能之一,设计一个简单的用户登录Web应用,该程序中,用户输入的登录信息提交给Servlet,Servlet接收后,首先检验输入内容的合法性,若验证失败则将错误信息传递给登录页显示;若数据合法则调用DAO层完成数据库的验证,根据验证的结果跳转到登录成功或登录失败的页面。(1)MVC登录程序流程,如图1所示。(2)MVC登录程序清单。使用Mysql数据库,数据库名称为mvcsql,表名称为:user,其中含有三个属性,分别为:(userid,name,password)(见表1)。(3)部分代码。模型类:①DatabaseConnection类。publicclassDatabaseConnection{//该类主要是用于完成数据库的打开以及关闭操作……publicDatabaseConnection()throwsException{try{Class.forName(DBDRIVER);//加载驱动this.conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);}catch(Exceptione){……}}public?Connection?getConnection(){//取得数据库的连接……}}②IUserDAO类。publicinterfaceIUserDAO{//定义DAO操作的接口;//用户登录验证publicbooleanfindLogin(Useruser)throwsException;}③DAOFactory类。publicclassDAOFactory{//取得DAO接口的实例化对象publicstaticIUserDAOgetIUserDAOInstance()?throws?Exception{returnnewUserDAOProxy();//取得代理类的实例}}④登录页:login.jsp,视图显示。formaction=LoginServletmethod=postonSubmit=returnvalidate(this)……/form⑤LoginServlet.java:控制类,负责转发请求,对请求进行处理。publicclassLoginServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throwsServletException,IOException{……if(info.size()==0){//没有记录任何的错误Useruser=newUser();user.setUserid(userid);user.setPassword(userpass);try{if(DAOFactory.getIUserDAOInstance().findLogin(user))No.名称文件类型描述1UserJavaBean用户登录的VO操作类2DatabaseConnectionJavaBean完成数据库的打开以及关闭操作3IUserDAOJavaBean定义登录操作的DAO接口4UserDAOImplJavaBean真实实现类,完成具体的登录验证5UserDAOProxyJavaBean负责数据库的打开以及关闭,调用真实主题类6DAOFactoryJavaBean取得DAO接口的实例化对象7LoginServletServlet接收请求参数,进行参数验证,返回登录信息8login.jspJSP提供用户输入的表单,显示用户登录成功或失败的信息表1MVC登录程序清单图2Login.jsp页面效果(下转11页)科技资讯2017NO.21SCIENCE&TECHNOLOGYINFORMATION信息技术11科技资讯SCIENCE&TECHNOLOGYINFORMATION针对授课教师的人群特征开展关于信息通信的培训课程,制作适用于教学的软件,确保教师在教学中能更好的利用信息通信技术。而且,教师是教育信息通信化的主角,当前,信息通信技术尚未完全成熟,教师和学生的观念还没有完全转变,适用于信息通信教学的模式还没有出现,教师在外承受着职业压力,在内承受着心理困惑。因此,采取必要的措施从内到外,改变教师的观,强化他们对信息通信技术的接受程度,进而提高教师队伍的信息通信素养。3.3建立学校信息通信技术应用方案学校是信息通信在教学中应用的主要场所,学校应该建立合理的、系统的应用方案,以推进信息通信在教学中的应用和发展。这一方案的建立离不开校领导的支持、学校的合理规划,整体的信息化环境,学校的人文氛围和文化氛围等因素,更离不开学校、教师和学生的共同努力。3.4注重培养学生自我学习的能力信息通信技术在教学中的广泛应用会大大增加学习环境的开放性。开放的学习环境要求学生具有自己决定学习时间、地点、目的和内容的能力,而这种“能力”本身就需要学生去学习。教师要特别注重对学习能力较低的学生的培养,使其适应开放性的学习环境。3.5建立完善的评价系统虽然,目前信息通信技术在教学的应用已逐步展开,但仍旧缺少一个标准的评价系统。这个评价系统应分为两种:形成性评价系统和终结性评价系统。形成性评价系统包括在开发的过程中所收集的数据,用于改进教学产品或项目。终结性评价系统包括项目完成时收集数据,这些数据才是决定项目最终效果的证据。形成性评价系统在教学信息通信化中更加被青睐。3.6信息通信技术与远程教学远程教学涉及到知识和信息通信技术的结合,实现知识数字化,并通过传送技术到达目的地。这一过程涉及到知识的评价、说明、分析、开发、传送和质量控制等环节。远程教学的实现要求学校建立规范的网络平台,并在运行、维护、管理的各个方面加强保障。4结语综上所述,信息通信在教学中的应用是一项非常复杂的工程,虽然其在我国已经有了一定程度的发展,但依旧存在不少问题,对此,我们要根据当前教学信息通信化的现状,借鉴目前的经验基础,从健全理论体系、强化教师培训、建立应用方案、加强系统评价等方面制定对策,推进信息通信在教学中的应用,最终提高教学效率,提高人才培养质量。参考文献[1]郑云翔,谢虎.高校课程信息化教学绩效成熟度模型研究[J].电化教育研究,2014(8):71-77.[2]李军民,傅云凤.信息化技术与教学过程无缝融合的研究[J].技术与创新管理,2014(6):648-650.[3]李玉顺.信息技术与教育教学深度融合的发展需求与趋势[J].中国教育信息化,2014(12):3-8.[4]张静,杨文正.面向深度学习的信息化教学案例评析与策略研究[J].教学与管理,2014(15):147-149.[5]蔡旻君,芦萍萍,黄慧娟.信息技术与教学缘何难以深度融合——兼论信息技术应用于课堂教学时需正确处理的几组重要关系[J].电化教育研究,2014(10):23-28.{info.add(用户登陆成功,欢迎+user.getName()+光临!);}else{info.add(用户登陆失败,错误的用户名和密码!);}……}3.6配置web.xml文件servletservlet-namelogin/servlet-nameservlet-classservlet.LoginServlet/servlet-class/servletservlet-mappingservlet-namelogin/servlet-nameurl-pattern/LoginServlet/url-pattern/servlet-mapping(4)程序运行结果,见图2。4结语该文以MVC模式结合Web实例,完整地分析了开发Web应用程序的解决方案,MVC模式是解决开发Web应用程序的一种非常有效的模式,它为Web应用开发提供了统一的、标准的开发模式,将web系统中的数据对象、业务逻辑、用户界面三者分离,使得系统具有很好的扩展性,缩短了开发周期,便于后期的维护,
本文标题:MVC模式在Java-Web开发中的应用及实现
链接地址:https://www.777doc.com/doc-5651487 .html