SpringBoot+SpringCloud入门

SpringBoot入门

网上的攻略很多,我就拿自己实测可用的加上一些补充吧。
https://www.cnblogs.com/wmyskxz/p/9010832.html 创建项目

我的idea创建项目后目录是需要自己手动标记的
SpringBoot+SpringCloud入门

热部署
ctrl+alt+shift+/ 点Registry勾上compiler.automake.allow.when.app.running
ctrl+shift+a 输入 build project automatically 勾上
此处注意SpringBoot的热部署是一种快速重启的技术(5秒内)
感觉和SpringMVC的热部署直接生效有一丢丢的不一样
然后这个热部署连改配置文件都会快速重启,这也导致我后面springCloud要用改端口来启动多个相同的服务测试时要先关掉热部署,不关的结果就是一改端口当前应用会马上重启。

application.yml 真心比 application.properties配置好用

项目如果跑不起来看看pom中有没有

<scope>provided</scope>

有就注释掉

如果要做web项目要用jsp,idea就在项目配置中Facets新增web,目录选择新建的webapp目录才能新建jsp,eclipse没试过。
SpringBoot+SpringCloud入门

idea关闭服务实际进程没关闭且端口一直占用

org.springframework.boot
spring-boot-maven-plugin


false

-Dfile.encoding=UTF-8


但是这一条我后面在学springCloud搭微服务后为true是可以关闭进程的很费解

SpringCloud

https://blog.****.net/forezp/article/details/81040925

这里最好一步步完全按照博客的来配,之前跳着看的我有些细节按自己的想法来做弄了我很久。
比如我开始直接把server的yml复制到client里
只是删掉了
registerWithEureka: false
fetchRegistry: false
两句
但是没注意到
server的defaultZone配置和client的defaultZone的意义是不一样的
服务心跳一直不成功我还一直在想client和server是如何进行通信的

后来才知道client中defaultZone要配成服务注册的地址来注册服务

再比如pom中的一些配置不能省,比如client中必须要加

org.springframework.boot
spring-boot-starter-web

否则启动后马上停止

所以建议最好一开始所有配置按博客一步一步做
当然也可以像我这样踩几个坑对这些配置理解也会深一些

实测可以完成简单的入门配置,后续SpringCloud的应用比较深的还没开始试。