框架顾名思义,他是一个架子,类似于人初期搭建的房基,是个半成品,需要我们后期为他添加些东西装饰。
在系统开发中,框架是整个或者部分系统的可重用涉及,表现为一组抽象构架及构建实例间交互的方法;另一种定义认为,框架是可应用开发者定制的股价。前者是从应用方面而后是从目的方面给出的意义。
框架就是某种应用的半成品,是一组组件,供你选用完成自己的系统。简单来说就是使用别人搭建好的舞台,你来做表演。框架一般是成熟的,不断升级的软件。
因此应该将应用自身的设计和具体的实现技术解耦。这样,软件企业的研发将集中在应用的设计上,而不是具体的技术实现,技术实现是应用的底层支撑,它不应该直接对应用产生影响。
技术整合的问题,在将J2EE的框架中,有各种各样的技术,不同的软件企业需要从J2EE中选择不同的的技术,这样就使得企业最终依赖于这些技术,技术自身的复杂性和技术的风险性将会直接对应用造成冲击。而且应用是软件企业的核心,是竞争力的关键所在。
因此应该将应用自身的设计和具体的实现技术解耦。这样,软件企业的研发将集中在应用的设计上,而不是具体的技术实现,技术实现是应用的底层支撑,它不应该直接对应用产生影响。
在现在个个软件开发公司所用的框架基本不同,这样也就促进了技术的进步。在开发中,框架一般在底层应用平台和高层业务逻辑之间的中间层
框架重要是实现了部分功能,并且能够很好的将底层应用平台和高级业务逻辑进行了缓和。
为什么软件开发要分层,因为软件工程规定程序要“高内聚,低耦合”,分层的思想是将问题划分开来,单个解决,这样易于控制、易于延展、易于分配资源。
在常见的MVC软件中就是应用分层的思想。
通过分层更好的实现各个部分的职责,将每一层再细化出不同框架,分层解决问题。
常见的 JavaEE 开发框架:
1、解决数据的持久化问题的框架
目前使用 Spring Data 来实现数据持久化也是一种趋势。在从前使用比较多的是一个封装程度更高的框架就是 Hibernate,现在不流行了,具体原因可以百度。
2、解决 WEB 层问题的 MVC 框架
3、解决技术整合问题的框架
mybatis是一个优秀的的基于Java的持久层框架,它内部封装了JDBC,开发者只需要关注sql语句本身,而不需要过多关注数据库驱动、创建链接、创建statement等复杂步骤。
mybatis 是通过xml或者注解的方式将要执行的各种statement配置开来,并通过Java对象和statement中SQL的动态参数进行映射生成最终执行的 sql 语句,最后再通过mybatis框架执行SQL语句并将结果映射为 java 对象并返回。
采用ORM思想解决了实体和数据库映射的问题,对JDBC进行封装,屏蔽了jdbc api的底层访问细节,我们不需要与jdbc api交流,就可以实现完成数据库持久化操作。
为什么要使用mybatis框架?
在以前,使用jdbc时,在开发人员使用中发现JDBC有以下问题: