一、框架简介
1、框架的定义框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种认为,框架是可被应用开发者定制的应用骨架、模板。简单的说,框架其实是半成品软件,就是一组组件,供你使用完成你自己的系统。从另一个角度来说框架一个舞台,你在舞台上做表演。在框架基础上加入你要完成的功能。框架安全的,可复用的,不断升级的软件。2、框架解决的问题框架要解决的最重要的一个问
1、框架的定义
框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种认为,框架是可被应用开发者定制的应用骨架、模板。
简单的说,框架其实是半成品软件,就是一组组件,供你使用完成你自己的系统。从另一个角度来说框架一个舞台,你在舞台上做表演。在框架基础上加入你要完成的功能。
框架安全的,可复用的,不断升级的软件。
2、框架解决的问题
框架要解决的最重要的一个问题是技术整合,在 J2EE 的 框架中,有着各种各样的技术,不同的应用,系统使用不同的技术解决问题。需要从 J2EE 中选择不同的技术,而技术自身的复杂性,有导致更大的风险。企业在开发软件项目时,主要目的是解决业务问题。 即要求企业负责技术本身,又要求解决业务问题。这是大多数企业不能完成的。框架把相关的技术融合在一起,企业开发可以集中在业务领域方面。
另一个方面可以提供开发的效率。
3、Java 中常用的框架
- SpringMVC:是一种基于Java 实现了Web MVC设计模式的请求驱动类型的轻量级Web框架
- Spring:是一个轻量级控制反转(IoC)和面向切面(AOP)的容器。
- Mybatis: 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架
- Dubbo:是阿里巴巴公司开源的一个高性能优秀的开源分布式服务框架
- Maven:是项目管理和构建自动化工具,使用它来管理项目中的jar包和项目构建功能
- RabbitMQ:是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)
- Log4j:是Apache的一个开源项目,日志记录
- Ehcache: 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider
- Redis:Redis(Remote Dictionary Server ),即远程字典服务,是一个key-value存储系统
- Shiro:一个开源安全框架,提供身份验证、授权、密码学和会话管理
- SpringBoot:用来简化新Spring应用的初始搭建以及开发过程,是由Pivotal团队提供的全新框架
4、软件开发常用结构
web开发常使用三层架构,即SSM架构。SSM:SpringMVC,Spring,Mybatis
三层架构:
- 界面层(表示层,视图层):User Interface Layer,主要功能是接收用户的数据,显示请求的处理结果。使用 Web 页面和用户交互,手机App也就是表示层的,用户在App中操作,业务逻辑在服务端处理。
- 业务逻辑层:Business Logic Layer,接收表示传递过来的数据,检查数据,计算业务逻辑,调用数据访问层获取数据。
- 数据访问层:Data Access Layer,与数据库打交道。主要实现对数据的(CRUD)增、删、改、查。将存储在数据库中的数据提交给业务层,同时将业务层处理的数据保存到数据库。
CRUD说的就是增查改删
C:Create 增加对应CREATE TBL ...; ADD TBL IN (...) VALUES (...)
R:Retrieve查询SELECT * from TBL
U:Update修改UPDATE TBL ..SET ...
D:Delete删除 DELETE FROM TBL WHERE ....
三层的处理请求的交互:
用户---> 界面层--->业务逻辑层--->数据访问层--->DB 数据库
为什么要使用三层?
1,结构清晰、耦合度低, 各层分工明确
2,可维护性高,可扩展性高
3,有利于标准化
4,开发人员可以只关注整个结构中的其中某一层的功能实现
5,有利于各层逻辑的复用
5、三层架构对应 J2EE 中的开发软件
SpringMVC 框架 ---> 界面层
Spring MVC 属于 SpringFrameWork 3.0 版本加入的一个模块,为 Spring 框架提供了构建 Web 应用程序的能力。现在可以 Spring 框架提供的SpringMVC 模块实现 web 应用开发,在web 项目中可以无缝使用Spring 和 Spring MVC 框架。
Spring 框架 ---> 业务逻辑层
Spring 框架为了解决软件开发的复杂性而创建的。Spring 使用的是基本的JavaBean 来完成以前非常复杂的企业级开发。Spring 解决了业务对象,功能模块之间的耦合,不仅在 javase,web 中使用, 大部分 Java 应用都可以从Spring 中受益。
MyBatis 框架 ---> 数据持久层
MyBatis 是一个优秀的基于 java 的持久层框架,内部封装了 jdbc,开发者只需要关注 sql 语句本身,而不需要处理加载驱动、创建连接、创建 statement、关闭连接,资源等繁杂的过程。
MyBatis 通过 xml 或注解两种方式将要执行的各种sql 语句配置起来,并通过 java 对象和sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并返回。
更多推荐
所有评论(0)