1.spring-boot-web入门
目标:
开始最基本的web应用的构建
使用浏览器访问后端, 后端给浏览器返回HelloController
流程:
1.创建springboot工程, 填写模块信息, 并勾选web开发的相关依赖
注意:
在新版idea中模块创建时java下拉框只能选17, 21, 23
这里选17, maven版本是3.6.3, 很适配
2.创建请求处理类, 添加请求处理方法, 并给类和方法添加注解
3.运行程序, springboot默认占用端口号8080
注意:
有时候端口号会被别的程序占用, 这就会导致在浏览器访问不到项目
解决方法
1.查看端口号有没有被占用:
win+r打开命令行, 在命令行输入 netstat -ano|findstr 8080
如果命令执行成功但什么都没有显示,说明端口号没被使用,
正常使用即可,如果有显示TCP 0.0.0.0:8080...这一行,
请继续向下看
2.根据PID号在任务管理器结束进程
出现上面的信息, 说明8080被占用了, 就需要去结束占用8080端口的程序给我们的程序使用,
根据LISTENING 后面的PID号, 打开任务管理器, 找到PID号对应的程序,
结束程序就好了
4.在浏览器中输入localhost:8080/hello, 回车即可看到新页面中出现的返回值
2.Nginx和Tomcat的比较
不同点
Nginx 作为前端服务器:处理静态内容和客户端请求,进行负载均衡。
说人话就是, nginx里面放的是前端代码
Tomcat 作为后端应用服务器:运行 Java Web 应用程序, 处理前端的请求, 进行负载均衡
说人话就是, tomcat里面放的是后端代码, 负责处理网络请求和响应,
没有这种后端服务器, 就别想访问后端
相同点:
1.启动方式
nginx: nginx.exe
tomcat: bin/startup.bat
2.部署方式
前端代码放在nginx中的html文件夹里面就行
后端代码放在tomcat中的webapps文件夹下就行
个人感悟分享
在程序开发中需要学到的技术和使用的软件太多了, 而且还在不管的更新迭代,
要想不迷, 就对区分各个技术和应用的用处的干嘛的, 形成一个思维框架
3.web开发需要的依赖:
1.spring-boot-starter-web: 包含了web应用开发需要的起步依赖
2.spring-boot-starter-test: 包含了单元测试需要的起步依赖(默认添加)
为什么需要的依赖这么少呢?
因为spring-boot的依赖传递特性, 也就是你引入一个依赖,spring-boot会将相关
需要的依赖全部引入进来, 包含启动idea内嵌的tomcat服务器的依赖等
4.微服务:
对微服务很好奇, 所以提前看了一下微服务
简介:
是一种软件架构风格, 属于分布式架构, 微服务是指将一个大型的应用程序拆分成一组小型、独立的服务,每个服务都运行在自己的进程中,并通过网络进行通信
组成:
1.服务拆分
2.远程调用
3.服务治理
4.请求路由
5.身份认证
6.配置管理
7.服务保护
8.分布式事务
9.异步通信
10.消息可靠性
11.延迟消息
12.分布式搜索
13.倒排索引
14.数据聚合
课程安排:
day1.搭建/改造微服务项目
mybatisplus
docker
day2.熟练使用微服务
服务拆分
服务治理
远程调用
day3.微服务身份认证
请求路由
身份认证
配置管理
day4.分布式事务
服务保护
分布式事务
day5.消息中间件可靠性
异步通信
消息可靠性
延迟消息
day6.分布式搜索引擎
分布式搜索
倒排索引
数据聚合
day7.源码+底层原理
微服务高级
redis高级
5.java的命名规范:
包名: 全部小写
常量: 全部大写
类名: 大驼峰命名
对象名: 小驼峰命名
变量名:小驼峰命名
方法名: 小驼峰命名
6.一些容易忽略的地方
1.当对后端代码进行修改之后, 需要重新运行, 否则不管用
2.在创建一个成员变量的时候,一般要加上它的get, set, toString方法
3.当在一个类中把另一个类的对象设置为成员变量的时候, 需要为这个成员变量生成get, set方法, 同时也要重写原来的toString方法
今天截止到数组集合参数, 明天继续冲