我的第一个SpringBoot项目

为什么要学习SpringBoot

  1. 简化工作
    使用过Spring的都知道,Spring虽然能够使开发者在开发程序的时候得到帮助,但是繁琐的配置文件让人恼火;而SpringBoot则是在Spring的基础上摒弃掉了繁杂的配置文件,为开发者提供了默认的配置,不需要开发人员再定义样板化的配置。

具体简化的方面:

  • 依赖简化:SpringBoot自带的starter中提供了可以快捷使用的依赖
  • 配置简化:在配置方法中,SpringBoot为开发人员提供了一些默认的配置,比如端口号为8080等等

微服务

微服务其实就是讲一个单体的应用根据业务功能拆分成多个服务,使得业务代码之间不在耦合。

举个简单的例子,银行有很多业务服务,比如养老金服务,贷款服务,国债,存钱,取钱等等,如果说这些业务没有微服务化的话就会出现这样的情况:一旦一个业务出现问题,那么其他业务就会停止服务,整个银行业务就会崩塌;
如果采用微服务的形式进行工作,那么当贷款服务出现问题的时候,不会波及到存钱、取钱等等操作;
由此可见,微服务将业务分割开来了

微服务的优点

  • 服务解耦:单体应用变成多服务应用,服务与服务之间通过HTTP协议或者其他协议进行网络通信
  • 技术选型广泛:对弈同一应用的不同服务不再局限于相同的技术栈,开发不同服务的小组可以根据自己的情况选择不同的开发语言
  • 服务并行开发:由于服务已经分隔开了,所以服务与服务之间不会产生依赖,各个服务可以同时进行开发,提高开发效率
  • 独立部署:由于每个服务都是独立的项目,所以开发完成之后,都可以直接进行部署
  • 故障隔离:一个服务出现问题,其他服务能够正常运行
  • 单一职责:不同服务的开发团队只需要关心本组的开发任务,不需要再浪费之间熟悉其他业务之后再开发

微服务的缺点

  • 维护项目成本增加:由于服务是拆分开来的,所以运维人员就要花费大量的尽力来管理这些应用;以往运维人员只需要保证一个服务高效运行即可,而拆分后需要同时保证多个服务高效运行,这样的项目维护成本无疑是大大增加
  • 服务间的接口问题:由于服务与服务之间的是使用接口进行相互调用的,当接口出现问题或者出现更改参数等等操作时,那么调用这个接口的所有服务都需要更改,
  • 分布式事务的数据库一致问题:由于开发服务的团队不一样,那么可能不同服务所使用的的数据库也不一样,那么要保证数据库之间的数据一致性的问题就需要得到解决
  • 网络复杂性:由于各个服务间使用接口,因此系统间需要考虑很多网络延迟等客观因素来保证服务间的正常运转
  • 测试复杂性:在测试方面,服务的接口调用、服务间的测试都需要一套玩着完整的测试方案

我的第一个SpringBoot项目

1、使用IDEA新建项目,然后点击 Spring Initializr ,选择对应的 jdk(最低1.8),点击 Next
在这里插入图片描述
2、配置项目信息
在这里插入图片描述
3、配置 SpringBoot版本以及默认引入组件
点击pom.xml文件,加入web依赖
在这里插入图片描述
4、在org.example下创建Controller包,在其下创建一个HelloController类,并且加上@RestController注解,并且书写hello方法,返回一个“Hello,This is my first Spring-Boot Project !”,注意:要在hello方法上加上@GetMapping("/hello")注解;

解析:hello方法返回的就是在web页面上出现的内容,而@GetMapping("/hello")是指在访问网页请求时Get请求,访问路径为"localhost:8080/hello"
在这里插入图片描述
执行到这里会发现注解是红名,说明出现错误,出现错误的原因是没有加入lombok依赖,只要在pom.xml加入就可以了
在这里插入图片描述
5、运行项目启动类,启动项目,然后在网页上输入url访问
url:localhost:8080/hello

在这里小编遇到了问题,启动类运行之后出现了以下页面
在这里插入图片描述
这个问题出现的主要原因是Controller包不在启动类包中或者和启动类不在同一个包中,启动类扫描不到Controller包下的HelloController类,所以出现了404的标识;
解决的办法就是将启动类移到org.example下

404:404表示查找不到该url资源
启动类扫描:启动类扫描的范围为启动类所在的包以及启动类的子包

在这里插入图片描述
问题解决之后重新运行启动类,再次访问网页,发现成功!
在这里插入图片描述
到此为止,一个简单的Spring-Boot项目就算是完成了,谢谢阅览!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
创建一个SpringBoot项目有两种方式。第一种方式是通过官网生成SpringBoot项目,然后导入IDEA中。具体步骤如下:首先,在官网上创建一个SpringBoot项目。然后,将项目导入到IDEA中。\[1\]第二种方式是直接通过IDEA生成SpringBoot项目。具体步骤如下:在IDEA中创建一个SpringBoot项目,然后对maven进行配置。\[2\]在配置maven时,需要点击右侧的"Maven",然后点击右上方的小扳手。接下来,选择需要引入的maven依赖,最后点击"Finish"即可完成项目的创建。\[3\]总体来说,创建一个SpringBoot项目是比较简单的,希望这些步骤可以帮助到你。 #### 引用[.reference_title] - *1* [创建一个SpringBoot项目(IDEA版本,保姆级教程)](https://blog.csdn.net/weixin_42753193/article/details/123363255)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [如何创建一个SpringBoot项目](https://blog.csdn.net/qq_41134710/article/details/126273226)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值