Spring MVC或Spring Boot

Die*_*ego 112 spring-mvc spring-boot

对于大型公司(Web)项目,您是否建议使用Spring MVC或Spring-Boot?

与Spring MVC相比,Spring-Boot在配置方面非常容易.

我想知道我是否使用Spring-Boot可以拥有与Spring MVC相同的优势?

您有什么推荐的吗?

Val*_*udi 104

我的个人建议是出于多种原因明确使用Spring Boot.

  1. 首先是Boot是"Spring的未来".这意味着使用Boot,您可以从Spring社区的许多承诺中受益.今天的大多数Spring项目都与Boot完全集成,甚至社区也开始开发基于Boot的许多应用程序.例如,用于管理和监控.我可以建议看看Spring Boot Admin

  2. 使用Spring Boot,您可以从非常好的和有用的功能中受益,例如执行器和远程shell,用于管理和监控,通过非常有用的生产就绪功能改进您的应用程序.

  3. 非常好用且功能强大的属性和配置控件 - 您可以application.properties/yml 使用非常简单且令人印象深刻的方式配置应用程序并扩展启动,即使是覆盖方面的管理也非常强大.

  4. 它是最早的微服务平台之一,在我看来,现在它是最好的!即使您没有使用启动构建微服务项目,您也可以使用现代方法,其中您拥有一个自动一致的jar,可以从我上面描述的所有功能中受益,或者如果您愿意,可以强加打包作为一场经典的战争,并在任何你想要的容器中部署你的战争.

  5. 使用智能和约定优于配置的方法,可显着减少项目的启动和配置阶段.实际上,您有一组启动Maven或Gradle依赖项,可简化依赖项管理.然后使用自动配置特性,您可以从许多标准配置中受益,这些配置是通过Spring 4中的条件配置框架引入的.您可以使用特定配置覆盖它,只需根据您可以在自动配置Boot依赖项的JAR.请记住,Spring是开源的,您可以看到代码.我认为文件也很好.

  6. Spring初始化程序是这个链接可以实现的一个很酷的工具:https: //start.spring.io/是一个非常酷的工具,只是为了以非常快的方式创建您的项目.


我希望这种反思可以帮助您确定什么是最佳解决方案.

  • 如果你打算做一些非常香草的话,我会倾向于同意.我试图开机的次数引起了头痛,我在屏幕上大吼大叫,因为开机试图过于聪明地了解我的依赖关系并最终需要做更多工作来解决问题使用无启动项目.一些最终噩梦的事情是尝试使用需要数据库缓存的LDAP,或者配置多个DataSource,尝试在我不知情的情况下创建JdbcTemplate和hibernate实例,甚至自己启动h3数据库. (2认同)

Uli*_*ses 38

Spring Boot使用Spring MVC!当你导入spring-boot-starter-web jar时,它只是自动配置并准备好使用.所以你基本上都在讨论是使用Spring Boot还是手动设置你的Spring应用程序......

  • 是的_ + 1,Spring启动只是自动配置工具,Spring mvc是web框架 (4认同)

Rak*_*esh 24

你绝对可以选择Spring Boot.我们已经开始使用Spring Boot来构建企业应用程序.它有很多优点,下面列出几个:

  1. 您的项目配置将非常简单.无需维护XML文件,您需要知道的是使用application.properties文件的效率.

  2. 提供了大量的默认实现,例如,如果您需要发送电子邮件,它提供默认实现 JavaMailSender

  3. Spring Hibernate和JPA集成将非常简单.

像这样有很多,你可以根据自己的需要进行探索.


小智 10

您可以将Spring MVC与spring boot一起使用,因为@kryger说,它们之间是非独占的,配置会更容易,我建议您使用http://www.thymeleaf.org/这是模板框架.使用它就像使用JSP一样,但百万美元与HTML无缝集成,因此您的代码看起来非常干净,您可以添加许多有用的功能.


San*_*ket 8

我认为Spring Boot比MVC更有用,因为它具有许多优点和内置功能,使其比MVC更可靠.在Spring Boot中,大部分内容都是自动配置的,不需要像在MVC中那样编写那些xml,这可以节省时间.

Spring Boot将war文件与服务器运行时捆绑在一起,如Tomcat.这样可以轻松分发和部署Web应用程序.随着行业向基于容器的部署发展,Spring Boot在这方面也很有用.

Spring MVC是Web应用程序框架.虽然你可以在没有Spring Boot的情况下在Spring中执行所有操作,但Spring Boot可以帮助您更快地完成任务.

Spring启动简化了Spring依赖,不再发生版本冲突,可以直接从没有应用程序容器的命令行运行,使用更少的代码构建更多代码 - 不需要XML,甚至不需要web.xml,自动配置,运行的有用工具在生产,数据库初始化,特定于环境的配置文件,收集指标.

可以在此处找到Spring Boot的基础知识