SPRINGBOOT 学习记录一搭建一个可以运行的例子和遇到的坑

本文记录了使用SpringBoot搭建简单应用时遇到的常见问题及解决方法,包括pom.xml的冲突处理、工程错误排查以及启用@EnableAutoConfiguration注解来解决ServletWebServerApplicationContext启动失败的问题。详细解释了@EnableAutoConfiguration的作用,它是如何根据类路径和已定义的bean自动配置Spring应用程序上下文的。
摘要由CSDN通过智能技术生成

今天加班没事,学习了下springBoot,先搭建一个简单的例子,虽然网上教程很多,但还是遇到了蛮多坑的,现在记录下:

1、pom.xml一直有红叉

解决办法:应该是jar包有冲突,删除.m2下面所有内容后,再次maven更新工程后解决。

2、工程一直有!号

解决办法:打开eclipse的Problems view,查看原因:cannot be read or is not a valid ZIP file,进入.m2目录,把所有jar包删除,然后maven更新工程后解决。

3、工程运行报错,Unable to start ServletWebServerApplicationContext due to missing ServletWebServerFactory bean

解决办法:在运行的bean中加入@EnableAutoConfiguration注解即可。

 

 

使用的工具:

eclipse: Oxygen.3a Release (4.7.3a)

jdk:1.8
 

说明下

@EnableAutoConfiguration注解

启用Spring应用程序上下文的自动配置,尝试猜测和配置您可能需要的bean。自动配置类通常基于类路径和定义的bean应用。例如,如果你有 tomcat-embedded.jar在您的类路径中,你可能会想要一个TomcatEmbeddedServletContainerFactory(除非你定义自己的EmbeddedServletContainerFactory bean)。
当使用SpringBootApplication时,上下文的自动配置将自动启用并添加此注释,因此不会产生额外的效果。
    自动配置尝试尽可能地智能化,并且在您定义更多自己的配置时将会备份。您总是可以手工排除()任何您不想应用的配置(如果您无法访问它们的话)。您也可以通过spring. autoconfigure将它们排除。排除属性。在用户定义的bean被注册之后,自动配置总是被应用。
    用@ enableautoconfiguration注释的类的包,通常通过@ springbootapplication,具有特殊的意义,经常被用作“默认”。例如,它将用于扫描@ entity类。通常建议在根包中放置@ enableautoconfiguration(如果您不使用@ springbootapplication),以便可以搜索所有子包和类。
    自动配置类是常规的Spring配置bean。它们使用SpringFactoriesLoader机制(对该类进行键控)定位。通常,自动配置bean都是“有条件bean”(通常使用@ conditionalonclass和@ conditionalonmissingbean注释)。

所以配置后,就会自动找到tomcat,从而工程能够顺利运行。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值