本栏目责任编辑:梁书
计算机工程应用技术
spring ioc注解
SSM 框架在Web 应用开发中的设计与实现研究
陈钊
(安徽职业技术学院,安徽合肥230011)
摘要:传统企业级应用程序开发主要依托SSH 框架,但由于SSH 框架中国Struts 层面过多、Hibernate 批量数据处理能力较
弱,在批量对象代码增删查改、功能响应方面,不如“JSP+JAVAbean ”更加方便简洁。这一情况下,基于JAVA 语言汇编的SSM 框架,在web 应用系统程序中的开发使用,可以通过Spring+SpringMVC+Mybatis(SSM)的开发框架组合,由Aop 提供切面编程、SpringMVC 方法拦截,对系统不同层级作出分离定制、业务功能调优,大幅度提升代码复用率、可维护性。关键词:SSM 框架;Web 应用开发;设计;实现中图分类号:TP393
文献标识码:A
文章编号:1009-3044(2021)10-0226-02
开放科学(资源服务)标识码(OSID ):
1SSM 框架技术的主要内容分析
1.1Spring 框架技术
Spring 是为解决企业复杂性应用程序开发,而创建的开源框架,其分层架构内包含核心容器、Spring AOP 、Spring DAO 、Spring ORM 、Spring Web 等组成模块,分为表现层、业务层、持久层等框架整合资源,组成架构如图1所示。利用MetaData 指定系统Bean 应用后台对象进行实例化、配置和组装,以上控制反转IOC 操作,均在Spring 容器框架中完成[1-2]。
图1组成架构图
首先核心容器借助于BeanFactory 工厂模式组件,负责应用程序的Bean 对象配置和依赖性规范,读取如何创建bean 、bean 生命周期、bean 依赖等定义信息,通过new 关键字将Bean 对象进行实例化,并将Bean 应用组件模型,与实际的应用程序代码分开。之后Spring AOP 模块主要功能为,将面向切面编程机制的配置管理集成到Spring 框架之中,可以更加方便快捷为系统应用程序的Bean 对象,提供事务管理服务。
而Spring DAO 作为Spring 框架的抽象层,则是利用面向JDBC 的异常层次结构,针对应用程序开发异常执行信息、数据库错误消息做出简化处理,降低程序编写异常、代码执行错误
的概率。随后Spring ORM 模块位于Spring DAO 的上一层,其
提供一个简化JDBC API 操作框架,对包含Hibernate 、iBatis SQL Map 和JDO 等对象关系工具,提供技术实现的集成支持。最后Spring Web 模块,是建立在应用程序Spring 上下文配置文件中的模块,用于多种代码执行、功能服务请求的简化处理,以及将请求参数绑定到相应的域对象上。1.2Mybatis 框架技术
Mybatis 为定制化SQL 查询、存储过程以及高级映射框架的持久层框架,主要通过xml 或注解的方式,将需要执行的state⁃ment 、preparedStatemnt 等原生信息做出配置和映射。在数据库封装操作执行的过程中,只需将java 类和statement 类对象集合转换为SQL 语句,再由mybatis 框架执行SQL 语句,将结果映射为java 对象,并返回数据库中进行记录,可以实现更加方便快捷数据输入输出与管理。1.3SpringMVC 框架技术
传统系统应用程序开发模式,通常采用Jsp+JavaBean+
Servlet 方案,由JSP 服务器接收用户访问、数据处理请求,Java⁃Bean 应用组件用于建立功能服务和数据库之间的连接,Servlet 则作为项目控制器进行浏览器响应结果的发送或接收[3]。这一web 应用程序框架实现的方式,最大问题为每个Servlet 服务连接器对应一个请求路径,而对于多种服务组件、配置文件等资源的管理会占用大量内存空间。SpringMVC 框架是围绕Servlet 的请求驱动设计,其核心为DispatcherServlet 类,通过Servlet 接口发送与接收控制请求,通过模型对象、分派器展示web 请求结果,解决视图和控制器(V-C)之间的交互问题。
SpringMVC 框架中应用开发执行流程,需要用到DisPatch⁃erServlet 前端控制器、HandLer 处理器、HandlerMapping 处理映射器、HandlerAdapter 处理适配器、ViewResolver 视图解析器、
收稿日期:2020-11-25
作者简介:陈钊(1984—),男,安徽肥东人,实验师,硕士,研究方向为人工智能算法。
226
计算机工程应用技术
本栏目责任编辑:梁书Computer Knowledge and Technology 电脑知识与技术
第17卷第10期(2021年4月)
View 视图等组件,具体组件功能执行如图2所示。其中Dis⁃PatcherServlet 主要功能,在于接收用户浏览器输入的url 格式请求,由DisPatcherServlet 调用其他组件,配合完成将浏览器请求分发给Spring Controller 的工作,大大降低不同组件之间的耦合性[4]
图2组件功能执行图
之后HandlerMapping 处理映射器接口,通常以xml 或注解方式,记录url 信息与处理器的映射。同时HandLer 后端处理控制器,用于对用户请求进行处理,包括Spring Controller 层业务代码的处理。HandlerAdapter 处理适配器,主要负责获取Mode⁃lAndView ,执行控制器处理函数,再通过适配器规则调用、扩展适配器等方式,对更多类型处理器进行执行[5]。
最后,Controller 控制器接口、ViewResolver 视图解析器等模块,为并发用户请求处理,以及view 视
图渲染和数据填充,并将处理结果通过网页向用户展示的模块。在Controller 接口收到用户请求后,会实时响应调用模型进行处理,再返回ModelAnd⁃View 至响应视图对象给DispatcherServlet 前端控制器。而ViewResolver 视图解析器,则支持不同的jsp 、freemarker 、velocity 实现类,通过页面标签或者模板技术,在Web 应用模型中查View 对象,将渲染结果通过页面展示给用户,一般根据不同的业务功能需求开发web 页面。
2基于SSM 框架的Web 应用开发设计与实现
2.1系统应用体系架构
在多种功能服务管理应用开发中,通常采取J2EE+SSM 服务器端框架方案,运用分层化应用组件,将整个Web 应用管理系统,分为权限管理、知识管理、资讯管理、活动管理等部分。根据项目需求与设计要求,利用Spring 、SpringMVC 、Mybatis 的开发框架,完成数据持久层、服务层、逻辑控制层、表示层的建构,满足系统页面多样化的服务需求。2.2数据持久层
相比于传统JDBC 数据库管理而言,使用MyBatis 应用程序
框架,创建SQL Session Factory 实例,以及对JDBC 数据库封装,能大大简化注册驱动、connection 创建、statement 创建、手动参数设置、结果集检索等的代码执行流程,支持SQL 语句对其他连接池
的配置,还可以修改mapper 文件中SQL 配置、提高应用程序开发的效率。在完成SQL 语句查询、执行后,Mybatis 会将返回的ResultSet 对象,转换成Java 对象。因此方便获取、写出SQL 语句的执行结果,才是MyBatis 框架技术的核心竞争力。
2.3服务层
对于网站数据库访问、数据源信息获取等的配置与管理,通常采用Spring DAO 访问对象模式,定义接口类RoleDao 、接口实现类RoleDaoImpl ,从任何配置好的数据源处,根据ID 查询用户角信息,最后在Mybatis Mapper 配置文件中添加<mapper namespace=”Lest">的配置即可。2.4逻辑控制层
在Web 应用系统用户、功能服务增删改等执行过程中,需要Form 表单对用户信息的各个字段作出临时存储,这时就会借助于SpringMVC 设置表单类RoleInfoForm 。其中用户信息表的每个字段,都被定义为Letter)和Setter)类,然后在Controller 函数参数列表,直接出JavaBean 对象,再利用MetaData 指定系统应用后台Bean 对象,进行实例化、配置和封装,以此完成配置文件请求地址、信息存储的分配与管理。2.5表示层
对于web 应用系统页面视图表示、功能指令跳转等服务的实现,则是由SpringMVC 框架通过Dispatcher Servlet 核心,负责链接地址、提交表单请求的统一分发,转发到注册过的Control⁃ler 类中。先由用户向服务器发送请求,再利用DispatcherServ⁃let 对URL 请求作出解析,得到请求资源标
识符(URI),之后调用HandlerMapping 配置处理器、对象,最后将配置好视图解析器ftl 文件,以及ModelAndView 对象渲染结果,返回至用户客户端。
3结束语
SSM 作为典型的MVC 框架,在利用该框架整合结构进行系统开发过程中,通常被划分为表示层、控制层、服务层、数据库访问层等层级。其中Spring 为提供切面编程、Ioc 解耦的容器框架,通过控制反转(或依赖注入)对软件设计对象做出解耦操作,让Spring Bean 以配置文件进行组合,被用于复杂应用程序的分层架构设计。之后SpringMVC 主要围绕Servlet 展开模型对象设计,运用多种控制器处理用户发送的请求,再将相关处理结果返回至View 视图。最后MyBatis 为支持普通SQL 查询、存储过程,以及高级映射的优秀持久层框架,主要针对整体应用架构的开发需求,更加方便的管理数据输入输出、SQL 语句
执行[1]
参考文献:
[1]贺雪梅.web 应用开发中的SSM 框架设计[J].电子世界,2019
(1):206.
[2]唐权.SSM 框架在JavaEE 教学中的应用与实践[J].福建电脑,2017,33(12):93-94,61.
[3]李洋.SSM 框架在Web 应用开发中的设计与实现[J].计算机技术与发展,2016,26(12):190-194.
[4]邹红霆.基于SSM 框架的Web 系统研究与应用[J].湖南理工学院学报(自然科学版),2017,30(1):39-43.
[5]张宇,王映辉,张翔南.基于Spring 的MVC 框架设计与实现[J].计算机工程,2010,36(4):59-62.
【通联编辑:谢媛媛】
227

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。