Redis, Spark总结

Spring

spring 常见面试题

spring 面试题

Spring事务管理之几种方式实现事务

https://www.ibm.com/developerworks/cn/java/j-master-spring-transactional-use/index.html

SpringMVC

SpringMvc 常见面试题整理(一)

SpringMVC常见面试题总结(超详细回答)

工作流程:

1. 用户发送请求至前端控制器DispatcherServlet
2. DispatcherServlet收到请求调用HandlerMapping处理器映射器,请求获取Handler。
3. 通过HandlerMapping得到HandlerAdapter, 经过适配调用具体处理器Handler.
4. Handler执行完成返回ModelAndVIew
5. DispatcherServlet将ModelAndView送给ViewResolver视图解析器处理,解析返回具体的view
6. DispatcherServlet将Model渲染到view视图(即将模型数据填充至视图中)
7. DispatcherServlet响应用户

 

Maven

Maven面试题

maven依赖jar包时版本冲突的解决

1.maven中jar包冲突产生的原因

   若项目中多个Jar同时引用了相同的Jar时,会产生依赖冲突,但Maven采用了以下几种避免冲突的策略,因此在Maven中是不存在依赖冲突的。

2.查看包冲突

mvn分析包冲突命令:mvn dependency:tree

打开pom.xml文件,在Dependency Hierarchy(依赖列表)中查看jar包的依赖层次关系。在过滤栏中输入commons-codec,左侧出现了commons-codec相关包的依赖结构,右侧则是pom.xml全部依赖包的列表展示。

3. Maven 解决依赖冲突

3.1 短路优先
A.jar——>B.jar——>X.jar
C.jar——>X.jar
若本项目引用了A.jar,A.jar又引用了B.jar,B.jar又引用了X.jar,并且C.jar也引用了X.jar。 
在此时,Maven只会引用引用路径最短的Jar。

3.2 声明优先
若引用路径长度相同时,在pom.xml中谁先被声明,就使用谁。

3.3 版本最新优先

假设 有以下两个依赖关系:其中C1和C2是两个相同的jar包,他们只是version版本号不同

                A->B->C1 依赖关系: A包依赖B包,B包依赖C1包

                E->D->C2 依赖关系: E包依赖D包,D包依赖C2包

当我们在项目中同时引入了A包和E包,按照maven的依赖传递原理,那么我们相当于在项目中同时引入了两个C包,只是他们的version版本号不同,这时候就会出现冲突了,如果我们调用了C2中一个method方法,这个方法在C1中不存在(可能是C2高版本升级之后新添加的方法),那么jvm在进行类加载的时候,加载按照A->B->C1顺序,这个时候就会报NoSuchMethodError的错误,jar包冲突问题就出现了

4. maven中jar包产生冲突之后的解决方案

     既然有多个版本号的jar依赖存在,那我们就自然而然的想到,移除多余的jar包,只保留一个不就可以了,事实确实如此,我们可以通过移除内部依赖的jar包达到解决jar包冲突的目的。

4.1 移除的方式有两种,第一种是借助于maven helper插件中的Dependency Analyzer分析冲突的jar包,然后在提示冲突的jar包上面右击Exclude,然后刷新就可以了

4.2  手动移除,这个是通过在pom中添加<exclusion>标签达到解决jar包冲突的目的

 

Git面试题

GIT常见面试题

GIT | GIT常见面试题

关于 Git 的 20 个面试题

Redis

redis 缓存案例:

1. 根据key从缓存中获取对象
2. 如果对象不为空,直接返回
3. 如果对象为空,进行数据库查询
4. 如果从数据库查询出的对象不为空,则放入缓存(设定过期时间)

 

spring整合redis实现数据缓存的实例代码

Redis集群搭建

Redis缓存相关问题总结

值得一看的35个Redis常用问题总结

 

Spark 

spark 运行原理

spark原理:概念与架构、工作机制

Spark(一): 基本架构及原理

spark面试题

spark精华面试题

spark面试必问问题

spark常见面试题

Spark 和 map reduce区别

spark本地读取写入s3文件

spark stream学习

Spark学习之路 (十八)SparkSQL简单使用

Spark SQL, DataFrames 以及 Datasets 编程指南

 

负载均衡

基于软件的负载均衡(Nginx与ZooKeeper解析)

Zookeeper入门看这篇就够了

ZooKeeper入门教程(一)

ZooKeeper面试题

Nginx 深入学习

Nginx 入门学习教程

 

RPC

分布式服务(RPC)+分布式消息队列(MQ)面试题精选

RPC框架面试题集

什么情况下需要序列化:

  当你想把的内存中的对象保存到一个文件中或者数据库中时候;
  当你想用序列化在网络上传送对象的时候;
  当你想通过RMI传输对象的时候;

序列化注意事项:

(1) 当一个对象被序列化时,只保存对象的非静态成员变量,不能保存任何的成员方法、静态的成员变量和transient标注的成员变量。
(2) 如果一个对象的成员变量是一个对象,该成员对象的类必须也实现Serializable接口才能序列化。
(3) 如果一个可序列化的对象包含对某个不可序列化的对象的引用,那么整个序列化操作将会失败,并且会抛出一个NotSerializableException。可以将这个引用标记transient,那么对象仍然可以序列化。

json工具

各种json工具包的比较

 

Spring Mybatis

Spring Boot为服务

 

redis

https://msd.misuland.com/pd/3065794831805580868

https://segmentfault.com/a/1190000014488045

https://baijiahao.baidu.com/s?id=1619572269435584821&wfr=spider&for=pc

https://my.oschina.net/u/4052893/blog/3001173

https://baijiahao.baidu.com/s?id=1626448266563689166&wfr=spider&for=pc

https://blog.csdn.net/qq_36071795/article/details/83988177

 

多线程并发

https://www.cnblogs.com/Jansens520/p/8624708.html

https://www.cnblogs.com/jxldjsn/p/10872154.html

https://www.cnblogs.com/jagh/p/dxc.html

http://developer.51cto.com/art/201709/552926.htm

https://baijiahao.baidu.com/s?id=1619715630323058430&wfr=spider&for=pc

https://wenku.baidu.com/view/58189549580216fc710afd08.html

http://ju.outofmemory.cn/entry/363342

RPC

https://my.oschina.net/u/1186503/blog/1632952

https://www.shsxt.com/it/java/1599.html

https://baijiahao.baidu.com/s?id=1617168792520937104&wfr=spider&for=pc

https://www.jianshu.com/p/28e48e5f9c73

https://www.jianshu.com/p/75c55e8bf2a5

http://youzhixueyuan.com/dubbo-interview-question-answers.html

 

--------------------- 
作者:苗尼玛乔 
来源:CSDN 
原文:https://blog.csdn.net/qq_24871519/article/details/81673515 
版权声明:本文为博主原创文章,转载请附上博文链接!

--------------------- 
作者:a745233700 
来源:CSDN 
原文:https://blog.csdn.net/a745233700/article/details/80963758 
版权声明:本文为博主原创文章,转载请附上博文链接!

--------------------- 
作者:EllisTian 
来源:CSDN 
原文:https://blog.csdn.net/T2080305/article/details/82144543 
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @   安小  阅读(993)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示