- 博客(66)
- 收藏
- 关注

原创 备战春招
2020/12/23 网易SpringIOC你怎么理解的?SpringIOC与设计模式?说说工厂模式和单例模式吧讲讲OSI七层?HTTP报文格式?GET与POST?遍历集合的方式? for foreach iterator三者区别讲讲?foreach 遍历 ArrayList和LinkedList的效率差异?说说HashMap的底层实现吧?如果现在有个类Student,把它存进HashMap,我再改变他的一些属性,例如姓名年龄,会不会有什么问题?手撕以下这个Student的HashC
2020-12-23 16:41:29
99

原创 CSY-java后端学习目录
JAVA后端java后端第一部分:Java基础1、变量2、控制结构3、OOP4、数组5、Java API6、异常和处理7、集合8、泛型9、IO10、反射11、网络通信第二部分:Java高级部分1、Java多线程/高并发2、数据结构与算法3、设计模式(23种-8种常有就行)4、JVM第三部分:JavaWeb1、前端基础2、前端框架3、Java web 后端第四部分:主流框架和项目管理1、Linux(操作系统,必学)2、Nginx(做反向代理的WEB服务器,必学)3、SSM4、项目管理5、数据库6、其他框架第五
2020-12-02 10:36:18
1707
原创 java事务中更新数据库,异步查询更新的数据失败。
因事务开启的那一刻,如果方法没走完,事务未提交时,数据库中是不会存在这条最新更新的记录。此时在事务方法未提交事务时使用线程异步执行一个方法时,因为这个异步方法跳出了这个事务,并且原事务方法没有提交情况下,取查数据库自然就取不到最新的记录。
2024-06-17 18:00:32
729
2
原创 docker Nginx反向代理内网多个服务如:nacos、jenkins、minio等
docker nginx 反向代理内网部署的多个服务,如nacos,jenkins、kibana、minio等
2022-08-30 15:04:22
2177
2
原创 java实习生入职体验以及领悟
同学们要做好心理准备,很多公司实习其实并没有培训,也没有手把手教你写代码的。所以打铁需要自身硬,希望想要找实习的小伙伴们或者是即将实习的小伙伴能够提前准备好相关知识。避免入职后如果被安排工作后手忙脚乱。那么入职后如何快速适应公司呢?个人感觉一开始不必要去着急和领导打好关系,只需要保持一种对于前辈的尊敬即可,相信我,一个学习能力强,能够按时完成工作,虚心听教的实习生会很容易和领导打好关系。不过还需要注意,领导始终是领导,别过线。说一说我的入职体验吧。第一天一入职,leader就给了我一部新的台式电脑让
2021-03-27 18:08:20
1138
1
原创 转义工具类 StringEscapeUtils
在公司开发DevOps系统时。流水线模块因为要用java操作jenkins生成任务。而测试创建任务的pipeline脚本中有“,<,>等特殊符号。需要将脚本转换成对应的xml脚本,其中最大的变化便是转义字符的变化,此时可以使用StringEscapeUtils.escapeXml()方法转换从,就能够创建成功,除此之外,StringEscapeUtils还提供了很大的工具类方法。一般都是String转换其他xml,json之类的方法。...
2021-03-23 12:15:24
916
原创 WIN10系统安装Mysql8.0.23报错VCRUNTIME140_1.dll
一般报这个错误是因为少了某个插件(一般出现这种问题是因为电脑是新的,什么插件都没有的情况),通过搜查,发现是因为少了Microsoft Visual C ++ 2015。解决:可前往官方下载该插件。因为我是64位。所以选择图中红框下载后安装默认就可以了...
2021-03-03 15:27:57
401
1
原创 springmvc小技巧——使用视图映射配置解决controller层专门写方法用于无任何处理数据操作就返回视图层
Springboot项目中直接添加配置类,交由spring容器管理设置后就可以不用在controller层专门写页面跳转的方法,如下/** * @GetMapping("/login.html") * public String loginPage(){ * * return "login"; * } */@Configurationpublic cl
2021-02-04 14:56:27
222
原创 io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 37748736 byte(s) of direct memory
/*** TODO 产生堆外内存溢出 OutOfDirectMemoryError* 1、SpringBoot2.0以后默认使用 Lettuce作为操作redis的客户端,它使用 netty进行网络通信* 2、lettuce 的bug导致netty堆外内存溢出,-Xmx300m netty 如果没有指定堆内存移除,默认使用 -Xmx300m* 可以通过-Dio.netty.maxDirectMemory 进行设置* 解决方案 不能使用 -Dio.netty.maxDirectMemo
2021-01-31 01:08:19
3896
原创 idea中--server.port=10001无法更新端口1000成10001
原因:通城项目中我用nacos来统一管理配置,而项目启动的顺序为,先是idea加载本地配置,然后加载配置文件中的数据进行覆盖。而我的端口号设置是放在nacos中的,所以不管idea中如何配置–server.port=10001,最终都会被从nacos取到的数据覆盖。这就造成了我部署的多个端口执行一个项目无法成功。解决方法便是将nacos中关于server.port配置去掉,放在本地的配置文件中。...
2021-01-30 23:44:49
1376
原创 压力测试
优化查询一级目录的方案1、调低日志级别,将debug级别调成error级别logging: level: com.csy.tcshop: error2、优化db,选择开索引来提高查询sql的性能,此处为parent_id开启索引没开索引前代码: @Override public List<CategoryEntity> getLevel1Categorys() { // parent_cid为0则是一级目录 long l = S
2021-01-30 19:59:50
152
原创 通城商城如何使用gateway来解决跨域问题
因为请求在gateway就被拦下了所以只能在gateway中设置解决跨域的配置第一种,在application.yml中配置跨域解决spring: cloud: gateway: globalcors: corsConfigurations: '[/**]': allowedHeaders: "*" allowedOrigins: "*" allowCredentials:
2021-01-10 23:49:38
159
原创 nacos报错NacosException: endpoint is blank,NacosException: java.lang.reflect.InvocationTargetException
原因因为本子项目中引入公共模块时将spring-cloud-starter-alibaba-nacos-config的依赖,但又没有用到动态配置,所以会报空指针的错。解决第一种,不要引用公共包,直接在子模块中引用nacos-discover依赖。这样可以避免引入nacos-config依赖。第二种,直接在pom文件中设置过滤...
2021-01-10 22:02:46
1472
原创 通城商城模块功能——三级分类
第一种,递归完成,借助jdk1.8新特性来的stream流来简易开发。@Override public List<CategoryEntity> listByTree() { //查询所有分类 List<CategoryEntity> allCategory = baseMapper.selectList(null); //查出所有一级分类,即是父分类为0 //filter()代表过滤信息此处代表将所有分类中父
2021-01-10 13:48:42
142
原创 微服务项目上线后动态修改配置文件内容及时刷新获取
1、使用nacos配置中心统一管理配置中心在需要动态获取配置文件数据的类上加上@RefreshScope注解
2021-01-08 21:10:10
700
原创 人人代码生成器中读取配置文件中文乱码解决
generator.properties显示有乱码出现,运行后且得到的中文乱码,图如下解决如下1、idea快捷键 ctrl+alt+s ,进入Settings页面,然后找到File Encodings,选择红框中的选项后确认。之后便可以出现结果这样之后便可以把所有文件变更为utf-8,记得刷新一些project...
2021-01-08 16:48:47
4327
1
原创 设计模式——装饰者模式
装饰者模式星巴克咖啡订单项目方案1-解决星巴克咖啡订单项目方案1-解决星巴克咖啡订单问题分析方案2-解决星巴克咖啡订单(好点)方案2-解决星巴克咖啡订单问题分析装饰者模式定义装饰者模式(Decorator)原理装饰者模式解决星巴克咖啡订单用装饰者模式设计的方案装饰者模式在JDK应用的源码分析星巴克咖啡订单项目方案1-解决星巴克咖啡订单项目方案1-解决星巴克咖啡订单问题分析Drink 是一个抽象类,表示饮料des就是对咖啡的描述, 比如咖啡的名字cost() 方法就是计算费用,Drink 类
2020-12-27 11:50:27
353
2
原创 设计模式——策略模式
策略模式鸭子问题传统方案解决鸭子问题传统方式解决鸭子问题分析和解决方案策略模式基本介绍策略模式的原理类图策略模式解决鸭子问题策略模式在JDK-Arrays 应用的源码分析策略模式的注意事项和细节鸭子问题编写鸭子项目,具体要求如下:有各种鸭子(比如 野鸭、北京鸭、水鸭等, 鸭子有各种行为,比如 叫、飞行等)显示鸭子的信息传统方案解决鸭子问题传统方式解决鸭子问题分析和解决方案传统的方式实现的问题分析和解决方案其它鸭子,都继承了Duck类,所以fly让所有子类都会飞了,这是不正确的上
2020-12-27 10:28:57
297
原创 设计模式——工厂模式
工厂模式简单工厂模式具体的需求简单工厂模式具体的需求看一个披萨的项目:要便于披萨种类的扩展,要便于维护披萨的种类很多(比如 GreekPizz、CheesePizz 等)披萨的制作有 prepare,bake, cut, box完成披萨店订购功能。...
2020-12-25 21:30:17
351
原创 设计模式——单例模式
单例模式单例设计模式介绍单例设计模式八种方式1、饿汉式(静态常量)2、饿汉式(静态代码块)3、懒汉式(线程不安全)4、懒汉式(线程安全,同步方法)5、懒汉式(线程安全,同步代码块)6、双重检查7、静态内部类8、枚举单例设计模式介绍所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如Hibernate的SessionFactory,它充当数据存储源的代理,并负责创建Session对象。SessionFac
2020-12-25 19:58:10
220
原创 如果现在有个类Student,把它存进HashMap,我再改变他的一些属性,例如姓名年龄,会不会有什么问题?手撕以下这个Student的HashCode算法?
1、如果现在有个类Student,把它存进HashMap,我再改变他的一些属性,例如姓名年龄,会不会有什么问题?主函数代码:public static void main(String[] args) { Map<Integer,Student>map = new HashMap<>(); Student student = new Student("csy",15,"男"); map.put(1,student);
2020-12-25 17:03:52
306
原创 面试题:讲讲OSI七层?
物理层:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。数据链路层:接收来自物理层的位流形式的数据,并封装成帧,传送到上一层网络层:将网络地址翻译成对应的物理地址,并通过路由选择算法为分组通过通信子网选择最适当的路径。传输层:在源端与目的端之间提供可靠的透明数据传输会话层:负责在网络中的两节点之间建立、维持和终止通信表示层:处理用户信息的表示问题,数据的编码,压缩和解压缩,数据的加密和解密应用层:为用户的应用进程提供网络通信服务...
2020-12-24 21:33:26
270
原创 面试题:说说工厂模式和单例模式吧
工厂模式1、什么是工厂模式?工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程(new 关键字和具体的构造器)隐藏起来。用一个工厂方法来替代,对外提供的只是一个工厂方法,达到提高灵活性的目的。2、有什么作用1.隐藏了new关键字和构造器2.降低了这个对象与别的类之间的耦合度,提高了程序的可扩展性。 原因:当子类被别的类替代,或者构造器的参数发生变化的时候,只需改动工厂方法内的new即可,改动量降到了最低,直接用new关键字的话,需要改动的地方就很多了 ,图示如下3.把对象的设
2020-12-24 20:11:44
1219
2
原创 面试:SpringIOC与设计模式?
考点:IOC,设计模式,Beans一、设计模式原则1、依赖倒转原则依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。Spring的介绍Framework文档的开篇就提到反向依赖注入(DI——dependency injection ),其目标是让调用者不要主动去使用被调用者,而是让被调用者向调用者提供服务。@component等注解添加一.
2020-12-23 22:15:26
812
原创 面试: SpringIOC你怎么理解的?
考点:spring ioc概念,设计思想,底层原理。1、什么是IOC?IOC——Inversion of Control,又称控制反转,一种设计思想,把对象创建和对象之间的调用过程,交给 Spring 进行管理,而不是传统的在你的对象内部直接控制。要想理解清晰IOC就要明确“谁控制谁?控制是什么?反转是什么?那些反转了?”●谁控制谁?控制什么?:传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IoC是有专门一个容器来创建这些对象,即由Ioc容器来控
2020-12-23 17:17:58
247
原创 网易java面试题集锦
1、分代gc算法?答案:分析问题:1、什么是分代回收算法,为什么会有分代回收算法?因为标记-清除算法、复制算法、标记压缩算法都有各自的优势和特点,且并未有一种算法可以完全取代其他算法,由此而生的便是可以根据具备不同生命周期的对象采取与之相适应的收集方式。比如:(1)、堆区中的年轻代特点:区域比老年代小(young:old=1:2),对象生命周期短、存活率低,回收频繁。young GC(Minor GC):采用了效率最快的复制算法,复制算法的效率只与当前存活对象大小有关,而复制算法内存利用
2020-12-22 21:56:12
605
原创 Spring的入门案例-idea
1.下载jar包选择spring5其中一个GA的版本即可,这里只有各个版本的开发文档,所以要点github的图标进入github也可以直接进入https://repo.spring.io/release/org/springframework/spring/ 去下载解压后打开2.打开 idea 工具,创建普通 Java 工程之后改名,点击finish即可3.导入 Spring5 相关 jar 包将jar导入idea最后点击ok即可4.创建普通类,在这个类创
2020-12-17 09:54:58
119
原创 2020/12/13、栈队列堆
栈队列堆字符流中第一个不重复的字符字符流中第一个不重复的字符题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。题解思路一开始就只想到排序,可是那样就不符合这个标题了,但是我对堆不太熟悉,于是便参考答案写了一遍。import java.util.Priori
2020-12-13 23:35:44
72
原创 2020/12/12 栈队列堆(牛客网)
栈队列堆数据流中的中位数数据流中的中位数题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。题解思路import java.util.TreeSet;import java.util.Set;import java.util.ArrayList;public
2020-12-13 00:37:49
215
原创 SpringMVC-尚硅谷笔记+自己的一些了解【下】
SpringMVC-尚硅谷笔记+自己的一些了解【下】异常处理HandlerExceptionResolverExceptionHandlerExceptionResolverDefaultHandlerExceptionResolverSimpleMappingExceptionResolverSpringMVC运行流程(面试重点)spring整合springmvcBean 被创建两次?SpringMVC对比Struts2(面试)异常处理HandlerExceptionResolverExcept
2020-12-11 17:28:11
462
原创 BUG——idea——file was loaded in the wrong enconding:“utf-8“
idea页面乱码问题解决:结果如下:
2020-12-11 14:01:01
314
原创 SpringMVC-尚硅谷笔记+自己的一些了解【中】
SpringMVC-尚硅谷笔记+自己的一些了解【中】一级目录二级目录三级目录一级目录二级目录三级目录
2020-12-10 23:46:22
1279
2
原创 2020/12/10 栈队列堆(牛客网)
数组与矩阵栈的压入、弹出序列(牛客网)栈的压入、弹出序列(牛客网)题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)输出题解思路import java.util.ArrayList;import java.util.Stack;pub
2020-12-10 23:10:06
114
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人