百度搜 Springboot,SSM框架区别,大多说的都是

1.springboot一个应用是一个可执行jar

2.将原有的xml配置,简化为java配置

他们说的确实没错,可是根本没有说到本质,百度说的这些,其实根本不是这两个框架的区别,SSM框架也可以打包可执行的jar,也可以用注解代替 xml。

首先我们看 springboot 官网里对于 springboot 的描述:

我们可以看到最后一点确实提到了不需要 xml 配置文件,但最重要的是第三点,springboot 提供的 starter 依赖为我们做了很多配置功能。

想知道 starter 依赖为我们做了哪些,我们首先看搭建 SSM 框架时,我们需要哪些步骤

1.加相关的 jar 包

2.配置 web.xml,加载 Spring,SpringMVC

3.配置数据库连接,spring 事务

4.配置加载配置文件的读取,开启注解

5.配置日志文件

6.配置完成,部署 tomcat 调试

做这些步骤,大多都要花一到两天的时间,你可能会疑惑,为什么6个步骤要花这么久,关键在于建这个项目有很多难点,如 包之间的相互依赖,不确定中间有没有冲突,升级版本可能也会导致冲突,bean 配置数据源,事务,切面时,依赖关系搞不清楚,这些都可能让你花费几个小时甚至一天的时间。

下面是我们新建一个 springboot 项目时的步骤,在 idea 里新建项目(在这里我只演示 idea 创建 springboot 项目过程,其他 IDE 创建过程,百度都可以搜到),只需要下面三个步骤,我们就创建好了一个 springboot 项目,里面编写代码,就可以直接运行了。

选择需要的依赖

看完这个,我们就要想,springboot 为何能如此快的创建一个项目呢,难道它不需要配置 bean 吗,难道它不需要引入 jar 包吗。当然,这些都是需要的,它和 SSM 最大的区别就是,这些配置 springboot 都帮我们做好了,我们才可以如此高效的创建一个 springboot 项目。

我们可以看到我们引入的三个依赖,pom.xml 都帮我们加进来了。就是这些 starter 依赖,帮我们做了很多配置。

springboot 框架使用 starter 依赖主要帮我们做了两点:

1.引入相关的 jar

2.自动完成 bean 配置。

至于 starter 如何配置的 bean,怎么解决 bean 之间的冲突,篇幅原因,我们下次再讲。

由此我们才看到 SSM 和 Springboot 的最大区别,所以下次面试官再问你这两者的区别,你可以这样回答:

1.Springboot 将原有的 xml 配置,简化为 java 注解

2.使用 IDE 可以很方便的搭建一个 springboot 项目,选择对应的 maven 依赖,简化Spring应用的初始搭建以及开发过程

3.springboot 有内置的 tomcat 服务器,可以 jar 形式启动一个服务,可以快速部署发布 web 服务

4.springboot 使用 starter 依赖自动完成 bean 配置,,解决 bean 之间的冲突,并引入相关的 jar 包(这一点最重要)

大家还知道什么不同点,或者有什么疑惑的地方,欢迎在评论区补充,我们一起进步!

Springboot,SSM框架比较,区别的更多相关文章

  1. 带你十分钟快速构建好 SpringBoot + SSM 框架

    目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐.而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了 ...

  2. 教你构建好 SpringBoot + SSM 框架

    来源:Howie_Y https://juejin.im/post/5b53f677f265da0f8f203914 目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵 ...

  3. 教你十分钟构建好 SpringBoot + SSM 框架

    目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐.而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了 ...

  4. 利用IDEA构建springboot应用-构建好SpringBoot + SSM 框架

    一. 创建项目 选择 Spring Initiallizr 添加最基本的几个依赖 Web,MySQL,MyBatis,其他需求可以后续再添加 ; 数据库选择了 MySQL 二. 配置数据源 数据源中存 ...

  5. Springboot,SSM及SSH的概念、优点、区别及缺点

    Springboot的概念: 是提供的全新框架,使用来简化Spring的初始搭建和开发过程,使用了特定的方式来进行配置,让开发人员不在需要定义样板化的配置.此框架不需要配置xml,依赖于像MAVEN这 ...

  6. SSM框架和SSH框架的区别

    SSH和SSM定义 SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层. SSM 则指的是 SpringMVC 做控制 ...

  7. 基于springboot的SSM框架实现返回easyui-tree所需要数据

    1.easyui-tree easui-tree目所需要的数据结构类型如下: [ { "children": [ { "children": [], " ...

  8. 使用Springboot快速搭建SSM框架

    Spring Boot设计目的是用来简化Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. 一.环境准备 Idea 2017 或 201 ...

  9. 基于IDEA采用springboot+Mybatis搭建ssm框架简单demo项目的搭建配置流程

    一.通过对比可以原始SSM搭建流程,spring boot省去了大量的配置,极大提高了开发者的效率.原始SSM框架搭建流程见博客: https://www.cnblogs.com/No2-explor ...

随机推荐

  1. 转载:Shell 脚本加密 - 略有修改

    shc是一个加密shell脚本的工具.它的作用是把shell脚本转换为一个可执行的二进制文件. shc 安装 yum -y install shc 如果yum不能安装,请移步官方下载rpm包 http ...

  2. Paper Reading: Stereo DSO

    开篇第一篇就写一个paper reading吧,用markdown+vim写东西切换中英文挺麻烦的,有些就偷懒都用英文写了. Stereo DSO: Large-Scale Direct Sparse ...

  3. 二分查找方法和printk打印级别

    人生就是一个茶几,上面摆满了杯具.内核也是一个大茶几,不过它上面的杯具是一个个的bug.确定bug什么时候被引入是一个很关键的步骤,在这个定位bug的过程中,不论有意或无意,都会很自然地用到二分查找的 ...

  4. c语言中,在结构体中如何将void *转存为具体需要的数据类型

    1. 只需要将该void *类型成员,强制转换为具体的数据类型指针即可.需要注意的是,该强制转换是有风险的,转换时,必须确定void*指向内存实际数据为目标结构体格式,否则可能会出现内存越界访问,从而 ...

  5. Rhino学习教程——1.5

    图形面板 图形面板是Rhino为了方便用户操作设置的一个区域,默认提供了“属性”.“图层”.“说明”3个面板(我自定义过了,新增了一个“显示”功能 ). trip:如果要打开更多的图版,可以点击图形面 ...

  6. Maximum Sum of Digits(CodeForces 1060B)

    Description You are given a positive integer nn. Let S(x) be sum of digits in base 10 representation ...

  7. 关于async 中return 和 return await 的差异

    小七平时在使用ES2017的 async功能经常会有如下: const bluebird = require('bluebird'); async function doSomething() { a ...

  8. c#连接db2数据库

    .net项目要连接db2数据库,是要安装客户端的,否则是连接不上的: 若出现“未在本地计算机上注册‘ibmdadb2’提供程序” 解决办法: 1.先找到安装后的ibmdadb2.dll文件复制到c:\ ...

  9. 响应式编程系列(一):什么是响应式编程?reactor入门

    响应式编程 系列文章目录 (一)什么是响应式编程?reactor入门 (二)Flux入门学习:流的概念,特性和基本操作 (三)Flux深入学习:流的高级特性和进阶用法 (四)reactor-core响 ...

  10. java 读取文件乱码

    private void filereader() throws IOException{  BufferedReader bf= new BufferedReader(new InputStream ...