APP下载

企业应用软件框架开发概述

2023-11-16丁妍翟高粤

客联 2023年7期

丁妍 翟高粤

摘 要:SSM是当今流行的Java Web开发框架,它能解决大部分企业应用开发的复杂性问题。对于Java开发人员来说,掌握企业应用框架开发的基本方法,是进行编写应用软件的必备技能之一。本文主要介绍SSM框架开发的基本方法及应用,并通过一个实例说明SSM框架编程的基本使用方法,从而感受SSM编程的便利。

关键词:SSM框架;MySQL;JDBC

中图分类号:TP183   文献标识码:A

一、引言

SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容),常作为数据源较简单的web项目的框架。Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。SpringMVC在项目中拦截用户请求,它的核心Servlet即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一個sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。

二、相关理论

(一)SpringJDBC

Spring JDBC是对传统JDBC访问的简单封装,使用Spring JDBC之后,可以省去一部分以前需要开发人员编写的访问数据的底层操作,比如注册驱动、获得连接、执行查询等等。Spring JDBC相当于一个简单封装的持久层框架,原始功能比较简单,使用起来也比较简单,如果开发一些小型项目,是可以直接使用的,如果是一些大型项目,由于它并不是真正的orm框架,因此需要自己封装一些工具,如果有能力封装的话,那么Spring JDBC用起来是非常舒服的,性能也很强,不比mybatis差。

(二)MySQL

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择MySQL作为网站数据库。

MySQL和Spring JDBC进行配合使用,兼容性好,开发效率高。

三、SSM框架详解

(一)MyBatic

MyBatis是当前主流的Java持久层框架之一,它是一种ORM框架,它的性能优异,具有高度的灵活性、可优化性和易于维护等特点,受到了广大互联网企业的青睐,是目前大型互联网项目的首选框架。MyBatis 的主要思想是将程序中的大量 SQL 语句剥离出来,使用 XML 文件或注解的方式实现 SQL 的灵活配置,将 SQL 语句与程序代码分离,在不修改程序代码的情况下,直接在配置文件中修改 SQL 语句。

MyBatis框架也被称为ORM框架。所谓ORM就是一种为了解决面向对象与关系型数据库中数据类型不匹配的技术,它通过描述Java对象与数据库表之间的映射关系,自动将Java应用程序中的对象持久化到关系型数据库的表中。ORM框架的工作原理如图1所示。

从图1可以看出,使用ORM框架后,应用程序不再直接访问底层数据库,而是以面向对象的方式来操作持久化对象,而ORM框架则会通过映射关系将这些面向对象的操作转换成底层的SQL操作。另外,MyBatis还可以配置动态SQL并优化SQL,可以通过配置决定SQL的映射规则,对于一些复杂的和需要优化性能的项目来说,使用MyBatis更加合适。

(二)Spring

Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。

从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。

Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。而IoC与JNDI相反,它不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。

Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现完成业务逻辑。它们并不负责其它的系统级关注点,例如日志或事务支持。

Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,可以配置每个bean如何被创建。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。

Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。

Spring的这些特征使开发人员能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。

(三)Spring MVC

Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,如Struts1,Struts 2等等。

Spring MVC Framework有这样一些特点:它是基于组件技术的,全部的应用对象,无论控制器和视图,还是业务对象之类的都是java组件。并且和Spring提供的其他基础结构紧密集成。它不依赖于Servlet API(目标虽是如此,但是在实现的时候确实是依赖于Servlet的)可以任意使用各种视图技术,而不仅仅局限于JSP支持各种请求资源的映射策略,它应是易于扩展的。

四、结论

本文对企业应用开发框架中使用的SSM进行理论、方法和步骤进行详细说明。通过本文的学习,读者能够学会使用SSM框架进行企业应用开发的技术和方法,并能深切地体会到SSM框架进行编程的强大。

参考文献:

[1]沃尔斯. Spring实战 [M]. 人民邮电出版社,2016.

[2]卡内尔. Spring开发三剑客[M],人民邮电出版社, 2020.

[3] 陈恒等. Spring Boot从入门到实战[M]. 清华大学出版社出版社,2020.

作者简介:丁妍(2005.01—),女,現在苏州经贸职业技术学院信息技术学院,研究方向:软件开发。