自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 【csv乱码】csv文件打开乱码的情况

先选择“记事本”打开方式打开,打开肯定还是乱码的状态。选择“另存为”该记事本为csv格式,并且选择编码格式为“带有BOM的UTF-8”(默认会选择UTF-8,并不能解决乱码的问题)。打开另存为的csv文件已经不乱码了,这样问题就解决了。

2023-05-24 14:52:07 2555

原创 【Python爬虫】MaxRetryError:报错Failed to establish a new connection: [Errno 11001] getaddrinfo failed‘))

适配器HTTPAdapter使用了强大的urllib3,为requests提供了默认的HTTP和HTTPS交互。每当Session被初始化,就会有适配器附着在Session上,其中一个供HTTP使用,另一个供HTTPS使用。有可能第一次获取某url的时候会失败,就需要失败重试(retry),这就跟max_retries有关。

2023-05-24 14:15:55 2959 1

原创 【VSCode2019】解决控制台无法输入的问题

通过修改CodeRunner设置Run In Terminal来解决Visual Studio Code无法键盘输入的问题。

2023-05-18 11:37:25 1175

原创 【Python爬虫】Message: timeout: timed out receiving message from renderer: xxx(Session info: chrome=xxx)

主要问题是:Message: timeout: timed out receiving message from renderer: xxx.xxx(Session info: chrome=xxxxxx),我的解决方案是(因为我爬取的网页所含图片挺多的)——添加不加载图片的设置,这样可以有效地提高爬取网页的速度。

2023-05-09 19:17:15 1844

原创 【Python爬虫】Message: session not created: This version of ChromeDriver only supports Chrome version 79

【1】Message: session not created: This version of ChromeDriver only supports Chrome version 79【2】Message: disconnected: not connected to DevTools (failed to check if window was closed: disconnected: not connected to DevTools) ...

2023-05-09 10:01:23 1103 1

原创 【SSM】Spring3.0的纯注解开发

@Service(业务层)、@Controller(专指表现层)、@Repository(数据层),而@Component一般都可以指bean。Spring3.0升级了纯注解开发模式,用Java文件取代了配置文件,实现了快速开发。

2023-03-07 20:53:17 137

原创 【SSM】复习-【p1_Spring】Bean的实例化、生命周期及其控制

Bean本质上就是一个对象,通过(无参)构造方法创建bean,即bean的实例化。有3种方法。【生命周期】【阶段1】初始化容器:【1】创建对象(内存分配)👉【2】执行构造方法👉【3】执行属性注入(set操作)👉【4】执行bean初始化方法【阶段2】使用bean:执行业务操作【阶段3】销毁容器:执行bean销毁方法

2023-03-06 21:53:02 84

原创 【SSM】复习-【p1_Spring】IoC和DI、spring容器和bean(含service和dao、bean的别名/作用范围)

这样,就实现了前面说的【问题】“耦合度高”,通过【核心概念1】和【核心概念2】中提到的IoC和DI,实现了“充分耦合”的目标。(service标签中的dao的ref属性必须与dao的id一致)

2023-03-06 15:45:32 151

原创 【Redis】MISCONF Redis is configured to save RDB snapshots, but currently not able to persist on disk.

MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk.Error creating bean with name 'redisConnectionFactory' defined in class path resource. java.lang.IllegalStateException: Failed to load Application.类文件具有错误的版本

2023-03-03 12:57:29 4635

原创 【springboot】HTTPMessageConvertor源码分析原理

承接上一篇文章,还是按照之前的顺序来debug,先进入invokeAndHandle执行方法,可以看到this.returnValueHandlers是所有可以匹配的返回值处理器,通过supportsReturnType方法判断是否支持该类型的返回值后匹配到了目标的ReturnValueHandler,就可以执行它的handleReturnValue方法,也就是上篇文章中文末提到的处理返回值的方法handleReturnValue(),进入最内层的handleReturnValue方法。

2022-11-01 21:02:36 606

原创 【springboot】响应处理-数据响应

响应处理又可以分为响应页面和响应数据。响应页面常见于一些单体项目中,主要表现为服务器响应我们发出的请求给我们跳转到对应的页面。响应数据主要见于一些前后端分离的项目,前端向后端发送请求,后端向前端发送JSON数据(或者其他类型的数据,如xml、xlsx、图片音频视频、自定义协议数据等)。handleReturnValue方法处理返回值的逻辑跟之前几篇文章讲(一)请求处理——参数处理的逻辑是一样的,需要根据我们的参数or返回值找到合适的参数or返回值处理器,然后有针对的handleXxx方法处理。

2022-10-26 21:47:53 1154

原创 【springboot】自定义Convertor原理(WebDataBinder对应的数据转换器)

上一篇文章中我们提到了WebDataBinder(Web数据绑定器)会将我们的请求参数的值绑定到指定的JavaBean中,原理就是WebDataBinde利用其中的Convertors(124个之多)将请求数据转换成指定的数据类型,再次封装到数据的JavaBean中。无法将String类型的属性(Pet在People中只是以字符串形式存在的)转化(convert)为Pet类型的属性->>无法将value处的属性值集赋给Pet类型的对象。缺乏一个需要自定义的类型转化器将value转给Pet。

2022-10-26 12:58:56 717

原创 【springboot】Servlet API参数解析(一)及Model、Map类型源码分析(二)及√自定义参数(POJO类型)(三)

这里的自定义参数解析指的是POJO类型的封装过程。POJO类的封装过程是由ServletModelAttributeMethodProcessor执行的。后面又由ModelAttributeMethodProcessor中的resolveArgument进行核心的执行流程。WebDataBinder(Web数据绑定器)的众多converters将请求参数的值绑定到指定的JavaBean(POJO类对象)中。

2022-10-23 11:20:31 342

原创 【springboot】Servlet API参数解析(一)及√Model、Map类型源码分析(二)及自定义参数(三)

印证了(二)中发现的处理多种不同的参数时采用不同的methodProcessor(不同的resolver。这里有一个自学的思路,就是找实现方法时,如果只找到接口的抽象方法,可以ctrl+h(idea中快捷键)查看他与子类的继承or接口的实现关系,找到接口方法的实现类,就可以找到目标实现方法。我们加在方法上的参数Model和Map都是一个东西,因为数据都放到model中,然后最后都会被加到请求域中(request.addAttribute)——>>看源码这么久的意义。

2022-10-22 15:04:07 423

原创 【springboot】√Servlet API参数解析(一)及Model、Map类型源码分析(二)及自定义参数(三)

可知Servlet的原生请求是ServletRequestMethodArgumentResolver这个参数解析器来处理。注意:同理可以推得,多debug,试下传递不同类型的参数,前两篇文章提到27中参数解析器那么多,debug了就知道不同的参数解析器对应负责处理的参数是不同的。

2022-10-21 21:16:54 204

原创 【springboot】请求处理-源码分析-各种参数类型解析原理

处理请求的参数解析:DispatcherServlet-doDispatch__handler__adapter__参数(注释)解析器__返回值处理器

2022-10-21 14:17:06 509

原创 【springboot/spring】请求处理源码分析-请求映射的原理

①springboot自动配置了RequestMappingHandlerMapping。②可以看到springboot是自动配置欢迎页的WelcomePageHandlerMapping。③也可以自定义HandlerMapping。

2022-10-20 11:12:12 323

原创 【springboot】请求处理GET/POST/DELETE/PUT的源码分析暨springboot中设置访问首页

还有一个未解之谜就是,在debug的时候我不知道是不是因为controller中一个方法的return处没有打断点,卡了很久找到一个办法:就是先正常run显示首页出来,然后debug再重新run的时候点击表单中的各个请求方式才能正常debug,否则获取不到_method的值。因此,进入前面第一个if时,request.getMethod()的这个getMethod是调用重写后的wrapper的,得到的也会是_method的值(DELETE、PUT、PATCH也有)。可以兼容他们这些方法。

2022-10-19 17:11:10 752

原创 【springboot】web场景-静态资源访问及其源码分析原理

要特别留心@EnableConfigurationProperties这种注解,翻译过来就是“保证(自动)配置的属性”,则说明要满足这些属性才能进行(自动)配置,而且这些属性xxx与配置文件中是绑定了的。构造器形参的其中两个刚好是上文的WebMvcProperties和WebProperties属性,则分别获取了跟他们两个绑定的配置文件中spring.mvc和spring.web的值。

2022-10-18 21:15:33 409

原创 【Maven】启动Springboot Application两个报错build:Cannot determine build data storage root_错误: 找不到或无法加载主类com.

启动Springboot Application两个报错:①build:Cannot determine build data storage root for project xxx②错误: 找不到或无法加载主类com...

2022-10-18 16:59:07 3174

原创 【springboot源码】自动配置

如果进行debug就会发现,向容器中注册的就是我们的包名,注意【AutoConfigurationPackages.PackageImports(metadata)).】getPackageNames()获取的是包名,这里默认为MainApplication(类名不一定是这个)所在的包下(com.boot)。这里有两个属性,都是数组,一个是basePackages={},包含需要自动配置的包;类上只有一条特别的注解,这里@Import引入了Registrar类,看下他是干嘛的。

2022-10-17 21:10:14 332

原创 【zookeeper】org.apache.zookeeper.KeeperException$Connection: KeeperErrorCode = ConnectionLoss for /..

连接客户端的超时时间(SessionTimeout)起码要大于原来zookeeper服务端设置的延迟时间(tickTime*initLimit);主机的映射名字要和zookeeper的配置文件里的名字一样;删除zookeeper_service.pid文件;关闭防火墙;开启zookeeper集群...

2022-10-09 21:26:02 2641 1

原创 【Hadoop3.x】执行wordcount案例时报错:java.io.IOException: Cannot initialize Cluster...

java.io.IOException: Cannot initialize Cluster...

2022-09-06 10:16:15 1099 1

原创 【Tomcat】org.apache.catalina.LifecycleException: A child container failed during start报错问题解决

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost]]Caused by: org.apache.catalina.LifecycleException: A child container failed during start

2022-06-14 09:40:32 2203 2

原创 【Tomcat】tomcat9使用tomcat7-maven-plugin插件配置及其他一系列配置问题解决

【Tomcat】tomcat9使用tomcat7-maven-plugin配置

2022-06-13 16:13:41 7729 1

原创 【mysql高级】存储引擎

存被用引擎在mysql中特有,是一个表存储或组织数据的方式。可以采用如下命令查看某个表的创建命令:show create table account; 或在可视化数据库操作软件中查看(这里是Navicat16侧栏查看的DDL创建语句) :可见,MySQL默认的存储引擎(ENGINE)是 InnoDB。也可以自己指定,在()后ENGINE=xxx。下面的命令查看MySQL支持的存储引擎:show engines \G发现有九大存储引擎,其中常用的如下:MyISAM:它管

2022-05-19 16:12:32 923

原创 【Tomcat】Tomcat原理 第一部分 Tomcat源码

Q:在哪里下载Tomcat的源码?A:tomcat的官网,找到Source Code ...那里:将源码导入idea工程项目中的步骤如下:然后将源码包解压缩,将解压后文件夹中的子文件夹/conf和/webapps移到新建的/home下,而且,提供pom.xml配置文件(我的tomcat是9.0.62版本的):<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/

2022-05-01 22:09:04 201

原创 【Tomcat】Tomcat原理 第一部分 Tomcat基础

网络通信的三要素:①IP:电子设备(计算机)在网络中的唯一标识②端口:应用程序在计算机中的唯一标识③传输协议:规定了数据传输的规则,基础协议有:TCP(安全协议,“3次握手”)或UDP(不安全,速度快)常见的web服务器:服务器:安装了服务器软件的计算机服务器软件:接收用户的请求,处理并作出响应web服务器软件:接收用户的请求,处理并作出响应(部署web项目,用户通过浏览器来访问这些项目)常见的web服务器软件:webLogic、webSpere、JBOSS、Tomcat

2022-05-01 20:13:06 621

原创 【javaweb】文件的上传和下载需要注意的路径问题

对于某个project来说,配置tomcat服务器的输出路径被我忽视了。最近在完成javaweb文件上传下载的学习时,发现上传的文件不知道下载到哪里去了(或许我该去补补maven基础...),然后才发现自己是个傻子...首先,需要知道项目的输出路径可以更改:默认的就是如下图的\(整个)工程名\out文件夹下然后,进一步的这个单独的module的输出路径(output directory)默认在各个artifact(对应不同的module)下:或者,也可以直接看/out文件夹:注.

2022-04-29 10:19:11 1103

原创 【DataSource】局部数据源配置(用jdbc或c3p0配置数据源)

先介绍一下局部数据源配置的共同之处是:需要在webapp应用文件夹下的/WEB-INF下的context.xml中配置,有的人是没有这个文件夹的,需要自己手动生成(没错就是我,全班都在用eclipse而我用idea发现自己并没有,可能是因为我创建的是maven工程是自己导入的webapp):导入后如上图。这里再穿插一下context.xml和web.xml:【方式1】传统的jdbc连接:不需要在context.xml中配置。但是需要类加载驱动以及driverManage.

2022-04-29 08:51:13 2885

原创 【Spring】java.lang.IllegalStateException: 非法访问:此Web应用程序实例已停止。无法加载[]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪

java.lang.IllegalStateException: 非法访问:此Web应用程序实例已停止。无法加载[]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。 at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1378) at org.apache.catalina.loader.WebappClassLoaderBa.

2022-04-27 20:11:20 6137

原创 【Spring】事务控制

有两种事务控制的方法:编程式(硬编码,代码,API)vs 声明式(xml或注解)声明式的好处:事务管理不侵入开发的组件,更改只需要在定义文件中出现配置即可。业务逻辑对象不会意识到处在事务管理之中,事实上也该如此,因为事务管理是属于系统层面的服务,而不是业务逻辑的一部分。而且不需要事务管理时可关闭,符合开闭原则。(解耦)Spring声明式事务控制底层就是aop。编程式事务控制3大对象: (关系)PlatformTransactionManager(操作事务行为)+TransactionDe.

2022-04-27 19:57:11 497

原创 【jstl】报错500:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]

这个问题我在我的两个project中都遇到了,一直解决不了,好像是版本的问题(tomcat9+jstl-1.2),也有可能是jar包的问题。我先是导入了以下两个依赖:<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version></dependenc

2022-04-27 15:10:34 2812 5

原创 【ssm】构建某ssm简单工程遇到的问题(导包等)

【无法启动tomcat】一开始我只关注到了这个报错,上网查找解决方案一直无果:org.apache.catalina.core.StandardContext.listenerStart 配置应用程序监听器[org.springframework.web.context.ContextLoaderListener]错误然后我去调整了web.xml配置文件的配置,却又爆出了这样的错误:org.apache.catalina.LifecycleException: 无法启动组件[Stand

2022-04-27 09:43:41 1619

原创 【idea使用】运行控制台中文乱码问题

这里只展示one way that works for me:如图Help栏中选中Edit CustomVM Options...会进入这个文件:然后加入该行配置:-Dfile.encoding=UTF-8发现输出不乱码了,正常显示中文:[2022-04-23 11:00:17,479] Artifact spring_test:war exploded: Artifact is deployed successfully[2022-04-23 11:00:17,4..

2022-04-23 11:15:09 472

原创 【spring】部署tomcat时报错:[Catalina-utility-2] org.apache.catalina.startup.HostConfig.deployDirectory

spring error set [0] by scarletchow138

2022-04-23 10:57:42 10099

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除