985研一学习日记 - 2024.10.09

鸡汤:“一个人内耗,说明他活在过去;一个人焦虑,说明他活在未来。只有当一个人平静时,他才活在现在”

日常总结

1、6:00起床,很棒!!

2、健身1.5h

今天练了胳膊、胸和腹肌,然后爬坡半小时

3、LeetCode刷了2题

  1. 全排列
    • 使用递归 + 回溯(恢复状态),用flag数组标识是否遍历
    • 然后每次往output中添加一个未遍历的元素,再递归添加下一个元素
    • 回溯一定要恢复状态,当某一个路径不行时要线恢复状态后再尝试别的
    • Java参数传递是值传递!!对于引用类型传递的是地址!!
    • 所以当要传递引用类型数据时,一定要判断是传递地址还是传递值
    • 如果仅仅传递引用数据的值,则要对数据进行拷贝后再传递!!
    • 如传递output时候,一定要拷贝后再传递,否则最后的output均为[]
  2. 最长连续序列
    • 求一个数组中最长的连续序列(元素可以不连续)且要用O(n)
    • 遍历数组中的元素,同时对每一个元素均当作序列的开始计算最长序列
    • 要先对数组元素进行快速映射而且要去重,故可以使用HashSet存放数组元素
    • 然后遍历时让每一个元素均当作序列的开始来计算最长连续序列
    • 然后判断是否是最大长度!!
    • 因为一个连续序列中会重复判断,只需要从完整序列开始判断即可
    • 故先判断元素的前一个值是否在集合内,如果不在时再计算最长连续序列长度
    • 如果前一个元素以及在集合中,则当前开始的一定不会是最长序列

4、22:30复盘√

学习和感想

实习工作:SpringCloud!!!

  1. SpringCloud能干什么
    • 微服务架构:将一个应用系统拆分为若干个职责单一的小系统,各个小系统(微服务)相互配合相互协调,且完成具体的业务,独立部署,轻量通信。
    • 由SpringBoot来构建微服务,然后用SpringCloud来一站式解决分布式微服务,SpringCloud中有各种完成不同功能的组件,来实现分布式微服务架构
  2. SpringCloud中各个组件的选择
  3. Maven父工程创建
    1、创建一个新的工程;2、总父工程的名字;3、字符编码改为UTF-8;4、注解生效激活( SpringBoot 注解);5、Java编译版本选择 JDK17;6、文件夹栏File Type过滤文件
  4. Maven 父工程 dependencyManager 和子工程 dependencies
    • 父工程的dependenciesManager仅仅是声明依赖(依赖的版本),不会引入
    • 子工程要显示的声明需要的依赖,可以不加版本号(会去父工程的dependenciesManager中去找),也可以加上版本号,此时单独引入
  5. 微服务工程化编写步骤: 约定 > 配置 > 编码
    1、建项目:创建一个微服务的Maven项目
    2、改POM:修改当前子工程POM依赖
    3、写YLM:写当前服务用到的SpringBoot、JDBC和MyBatis等框架的配置
    4、主启动:创建一个启动函数,添加@SpringBootApplication注解声明为启动类,然后添加@MapperScan(包)扫描服务中的所有Mapper
    5、业务类:Dao层和Service层都是先接口再实现类进行实现(Dao层可以用框架或者配置快速实现而不用手写实现类),Controller和Service都要加上注解来声明,使用@Resource进行自动装配;Controller层不同的请求使用不同的注解@PostMapping(value=“”)、@GetMapping(value=“”)、@PutMapping(value=“”)、@DeleteMapping(value=“”),然后对于请求体中的参数使用@RequestBody 注解来接收,对于地址中的参数使用@Path…来接收
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值