Java框架初级

1、Spring

#基本概念:spring是一个开源开发框架,是一个轻量控制反转(ioc)和面向切面(AOP)的容器框架。

spring主要用来开发java应用,构建J2EE平台的web应用。其核心就是提供一种新的机制管理业务对象及其依赖关系。

#spring优点

$容器:spring是一个容器,包含管理对象的生命周期和配置。可以配置每个bean如何被创建,基于一个可配置原型prototype,你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例。

$支持AOP:spring提供对AOP的支持,它允许一些通用任务,如安全、事物,日志等进行集中式处理,从而提高了程序的复用性。

$轻量级框架:spring是轻量级框架,其基本版本大约2M。

$控制反转:spring通过控制反转实现松耦合。对象们给他们依赖,而不是对象本身,方便解耦,简化开发。

$方便程序测试:spring提供了Junit4的支持,可以通过注解方便的测试spring程序。

$降低Java EE API的使用难度:spring对Java开发中非常难用的一些API(比如JDBC),都提供了封装,使这些API应用难度大大降低。

$方便集成各种优秀框架:spring内部提供了各种优秀框架(如Struts,mybatis)的支持。

$支持声明式事务处理:只需要通过配置就可以完成对事务的管理,而无需手动编程。

#spring的缺点

$依赖反射,反射影响进程

$太过于依赖设计模式

$控制器过于灵活

$不支持分布式应用

2、SpringMVC

#基本概念:属于spring框架的一部分,用来简化MVC结构的web应用程序开发。

#SpringMVC的优点

$拥有强大的灵活性、非侵入性和可配置性

$提供了一个前端控制器dispatcherServlet,开发者无需额外开发控制器对象

$分工明确,包括控制器、验证器、命令对象、模型对象、处理处理程序映射视图解析器,每一个功能由一个专门的对象负责完成

$可以自动绑定用户输入,并正确的转换数据类型

$可重用的业务代码:可以使用现有的业务对象作为命令或表单对象,而不需要去扩展某个特定框架的基类

#SpringMVC的缺点

$servlet API耦合难以脱离容器独立运行

$太过于细分,开发效率低

3、Mybatis

#基本概念:mybatis是一个简化和实现了java数据持久层的开源框架,它抽象了大量的JDBC冗余代码,并提供了一个简单易用的API和数据库交互。

#mybatis的优点

$与JDBC相比,减少了50%以上的代码量

$mybatis是最简单的持久化框架,小巧并简单易学。

$mybatis灵活,不会对应用程序或者数据库的限售设计强加任何影响,SQL写在XML里,从程序代码中彻底分离,降低耦合度,便于统一管理和优化,可重用。

$提供XML标签,支持编写动态SQL语句(XML中使用if,else).

$提供映射标签,支持对象与数据库的ORM字段关系映射(在XML中配置映射关系,也可以使用注解)

#mybatis的缺点

$SQL语句的编写工作量较大,对开发人员的SQL语句编写有一定的水平要求。

$SQL语句过于依赖数据库,不能随意更换数据库

$拼接复杂SQL语句时不灵活

4、Springboot

#基本概念

springboot是一个全新的框架,简化spring的初始搭建和开发过程,使用了特定的方式来进行配置,让开发人员不再需要定义样板化的配置。此框架不需要配置xml,依赖于maven这样的构建系统。

#Springboot的优点

$减少了大量的开发时间并提高了生产力

$避免了编写大量的样板代码,注释和XML配置

$解决了spring的弊端

$代码减少了,配置文件少了,不需要第三方框架烦恼了,项目精简了,对整个团队的开发和维护来说,更大的节约了成本。

#Springboot的缺点

$修复bug较慢,报错时难以定位

$集成度较高,不易于了解底层

#springboot总结

简单、快速、方便的搭建项目;对主流开发框架的无配置集成;极大提高了开发效率,部署效率。

#springboot和spring的区别

$springboot可以建立独立的spring应用程序。

$内嵌了tomcat,Jetty,Undertow这样的容器,也就是说可以直接跑起来,不用做部署工作

$无需再像spring那样写一堆繁琐的XML配置文件

$可以自动配置spring

$提供POM可以简化maven配置

#springboot和springMVC的区别:

$springMVC是基于spring的一个MVC框架。

$springboot是基于spring的条件注册的一套快速开发整合包。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值