<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WDNMDnm的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/WDNMDnm</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; WDNMDnm]]></copyright><item><title><![CDATA[Python+selenium+Gmail半自动登录-注销-修改密码]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/124431007</link><guid>https://blog.csdn.net/WDNMDnm/article/details/124431007</guid><author>WDNMDnm</author><pubDate>Tue, 26 Apr 2022 16:59:02 +0800</pubDate><description><![CDATA[工作中需要测试一批谷歌邮箱是否能正常登录。
做了半天手工，我就想起了python和我之前有学过的一点点selenium测试
一 开始通过edge浏览器的selenium插件录制登录注销的操作步骤
然后再来修改脚本中的账号密码辅助邮箱什么的
后来发现脚本并不能顺利运行，在输入账号密码的那一步总会被谷歌识别，提示错误
录制不行我就想通过python代码来实现，上网搜了点脚本就照着改
结果还是倒在了输入账号密码登陆的那一步
不得不说谷歌的技术还是牛B
现在来这里发一下代码，看看万能的网友能不能帮忙解决一下

i.]]></description><category></category></item><item><title><![CDATA[Docker容器入门]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/123575019</link><guid>https://blog.csdn.net/WDNMDnm/article/details/123575019</guid><author>WDNMDnm</author><pubDate>Fri, 18 Mar 2022 15:13:49 +0800</pubDate><description><![CDATA[Docker入门，安装，基本操作，镜像和镜像仓库]]></description><category></category></item><item><title><![CDATA[elasticsearch入门]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/123476558</link><guid>https://blog.csdn.net/WDNMDnm/article/details/123476558</guid><author>WDNMDnm</author><pubDate>Mon, 14 Mar 2022 14:14:36 +0800</pubDate><description><![CDATA[黑马程序员课程资料搬运，侵权联系删除
]]></description><category></category></item><item><title><![CDATA[Redis简单介绍和基本的javaAPI使用]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/123443703</link><guid>https://blog.csdn.net/WDNMDnm/article/details/123443703</guid><author>WDNMDnm</author><pubDate>Sat, 12 Mar 2022 14:51:20 +0800</pubDate><description><![CDATA[内容
1. redis
	1. 概念
	2. 下载安装
	3. 命令操作
		1. 数据结构
	4. 持久化操作
	5. 使用Java客户端操作redis

Redis
1. 概念： redis是一款高性能的NOSQL系列的非关系型数据库,区别于mysql关系型数据库


	1.1.什么是NOSQL
		NoSQL(NoSQL = Not Only SQL)，意即“不仅仅是SQL”，是一项全新的数据库理念，泛指非关系型的数据库。
		随着互联网web2.0网站的兴起，传统的关系数据库在应付web2.0网站，]]></description><category></category></item><item><title><![CDATA[Zookeeper安装和使用(Java)]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/123311145</link><guid>https://blog.csdn.net/WDNMDnm/article/details/123311145</guid><author>WDNMDnm</author><pubDate>Sun, 06 Mar 2022 15:32:30 +0800</pubDate><description><![CDATA[zookeeper在linux上安装(单机)，zookeeper JavaAPI操作]]></description><category></category></item><item><title><![CDATA[MySQL-34道题]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122477726</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122477726</guid><author>WDNMDnm</author><pubDate>Sat, 19 Feb 2022 16:41:57 +0800</pubDate><description><![CDATA[34道题用到的表
dept、emp、salgrade
+-----------------------+
| Tables_in_bjpowernode |
+-----------------------+
| dept                  |
| emp                   |
| salgrade              |
+-----------------------+

mysql&gt; select * from dept;
+--------+------]]></description><category></category></item><item><title><![CDATA[AJAX与JSON校验用户名是否存在]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122745497</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122745497</guid><author>WDNMDnm</author><pubDate>Sat, 29 Jan 2022 17:08:09 +0800</pubDate><description><![CDATA[内容
1. AJAX：
2. JSON


同步：
同步请求是客户端在某一个时间节点，向服务器端发送一个请求，比如是一个按钮或者超链接，请求发送到服务器端，收到请求之后，服务器端会处理该请求，然后返回给客户端，客户端继续操作。客户端和服务器端都需要一些时间来对请求和响应进行操作，在这这段时间以内，客户端必须等待服务器端的响应，不能做其他操作。
异步：异步就是在这段时间内客户端发送请求以后不需要等待响应到来，在等待响应的过程中能够做其他的操作。
AJAX：
1. 概念： ASynchronous JavaSc]]></description><category></category></item><item><title><![CDATA[JQuery高级部分]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122732017</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122732017</guid><author>WDNMDnm</author><pubDate>Fri, 28 Jan 2022 15:40:51 +0800</pubDate><description><![CDATA[JQuery 高级
1. 动画
2. 遍历
3. 事件绑定
4. 案例
5. 插件
1.JQuery动画
1. 三种方式显示和隐藏元素
		1. 默认显示和隐藏方式
			1. show([speed,[easing],[fn]])
				1. 参数：
					1. speed：动画的速度。三个预定义的值("slow","normal", "fast")或表示动画时长的毫秒数值(如：1000)
					2. easing：用来指定切换效果，默认是"swing"，可用参数"linear"
						*]]></description><category></category></item><item><title><![CDATA[JQuery基础快速入门]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122718530</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122718530</guid><author>WDNMDnm</author><pubDate>Thu, 27 Jan 2022 15:52:31 +0800</pubDate><description><![CDATA[1. JQuery 基础：
1. 概念
2. 快速入门
3. JQuery对象和JS对象区别与转换
4. 选择器
5. DOM操作
6. 案例

概念：
JQ 一个JavaScript框架。JavaScript框架：本质上就是一些js文件，封装了js的原生代码，用来简化JS开发。
jQuery是一个快速、简洁的JavaScript框架，是继Prototype之后又一个优秀的JavaScript代码库（或JavaScript框架）。jQuery设计的宗旨	是“write Less，Do More”，即倡导写更]]></description><category></category></item><item><title><![CDATA[Filter&Listener]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122711979</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122711979</guid><author>WDNMDnm</author><pubDate>Thu, 27 Jan 2022 09:20:25 +0800</pubDate><description><![CDATA[Filter：过滤器
1. 概念：
	* 生活中的过滤器：净水器,空气净化器，土匪、
	* web中的过滤器：当访问服务器的资源时，过滤器可以将请求拦截下来，完成一些特殊的功能。
	* 过滤器的作用：
		* 一般用于完成通用的操作。如：登录验证、统一编码处理、敏感字符过滤...

2. 快速入门：
	1. 步骤：
		1. 定义一个类，实现接口Filter
		2. 复写方法
		3. 配置拦截路径
			1. web.xml
			2. 注解
	2. 代码：
		@WebFilter("/*")//访问]]></description><category></category></item><item><title><![CDATA[会话技术Cookie和Session]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122653618</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122653618</guid><author>WDNMDnm</author><pubDate>Sun, 23 Jan 2022 17:27:43 +0800</pubDate><description><![CDATA[会话技术

会话：一次会话中包含多次请求和响应。
1.1 一次会话：浏览器第一次给服务器资源发送请求，会话建立，直到一行断开为止。
功能：在一次会话的范围内的多次请求，共享数据。
方式：
3.1 客户端会话技术：Cookie
3.2 服务器端会话技术：Session

Cookie
1.概念：客户端会话技术，将数据保存到客户端
2.快速入门：
	使用步骤：
		1.创建Cookie对象
		Cookie cookie = new Cookie(String name , String value)
		2.]]></description><category></category></item><item><title><![CDATA[jsp、EL、JSTL、MVC入门]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122653448</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122653448</guid><author>WDNMDnm</author><pubDate>Sun, 23 Jan 2022 16:50:36 +0800</pubDate><description><![CDATA[1. JSP:
	1. 指令
	2. 注释
	3. 内置对象

2. MVC开发模式
3. EL表达式
4. JSTL标签
5. 三层架构

JSP:
1. 概念：
	 Java Server Pages： java服务器端页面
		 可以理解为：一个特殊的页面，其中既可以指定定义html标签，又可以定义java代码
		 用于简化书写！！！
		
2. 原理
	 JSP本质上就是一个Servlet


3. JSP的脚本：JSP定义Java代码的方式
	1. &lt;%  代码 %&gt;：定义的java]]></description><category></category></item><item><title><![CDATA[Http协议和Request、Response、ServletContext对象]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122625118</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122625118</guid><author>WDNMDnm</author><pubDate>Fri, 21 Jan 2022 17:23:59 +0800</pubDate><description><![CDATA[Http


概念：Hyper Text Transfer Protocol 超文本传输协议；传输协议：定义了，客户端和服务器端通信时，发送数据的格式


特点：
1. 基于TCP/IP的高级协议
2. 默认端口号:80
3. 基于请求/响应模型的:一次请求对应一次响应
4. 无状态的：每次请求之间相互独立，不能交互数据


历史版本：
1.0：每一次请求响应都会建立新的连接
1.1：复用连接


请求消息


请求消息数据格式

请求行
请求头：客户端浏览器告诉服务器一些信息
请求空行：空行，就是用于分割]]></description><category></category></item><item><title><![CDATA[Tomcat和Servlet]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122560876</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122560876</guid><author>WDNMDnm</author><pubDate>Tue, 18 Jan 2022 15:38:21 +0800</pubDate><description><![CDATA[Tomcat
Tomcat：web服务器软件；Apache基金组织开发的中小型的JavaEE服务器，仅仅支持少量的JavaEE规范servlet/jsp。开源的，免费的。
Tomcat下载和安装

下载：http://tomcat.apache.org/
安装：解压压缩包即可。
注意：安装目录建议不要有中文和空格
卸载：删除目录就行了
启动：
bin/startup.bat ,双击运行该文件即可
访问：浏览器输入：http://localhost:8080 回车访问自己
http://别人的ip:8080 ]]></description><category></category></item><item><title><![CDATA[JDBC连接池技术-C3P0/Druid]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122511520</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122511520</guid><author>WDNMDnm</author><pubDate>Sat, 15 Jan 2022 16:26:33 +0800</pubDate><description><![CDATA[数据库连接池

概念：

其实就是一个容器（集合），存放数据库连接的容器。
当系统初始化好后，容器被创建，容器中国会申请一些连接对象，
当用户来访问数据库时，从容器中获取连接对象，
用户访问完毕，将连接对象归还给容器。
优点：
节约资源
用户访问高效率

实现方式：

标准接口 DataSource javax.sql包下
方法：
获取连接：getConnnection()
归还连接：如果连接对象Connection是从连接池中获取的，那么调用Connection.close()方法，就不会再关闭连接，而是]]></description><category></category></item><item><title><![CDATA[JDBC快速入门]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122506855</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122506855</guid><author>WDNMDnm</author><pubDate>Sat, 15 Jan 2022 10:56:44 +0800</pubDate><description><![CDATA[内容
1. JDBC基本概念
2. 快速入门
3. 对JDBC中各个接口和类详解
4. 抽取JDBC工具类 ： JDBCUtils
5. JDBC控制事务

JDBC：


概念：Java DataBase Connectivity  Java 数据库连接， Java语言操作数据库。


JDBC本质：其实是官方（sun公司）定义的一套操作所有关系型数据库的规则，即接口。各个数据库厂商去实现这套接口，提供数据库驱动jar包。我们可以使用这套接口（JDBC）编程，真正执行的代码是驱动jar包中的实现类。


]]></description><category></category></item><item><title><![CDATA[MySQL-数据库设计的三范式]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122492073</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122492073</guid><author>WDNMDnm</author><pubDate>Fri, 14 Jan 2022 14:25:29 +0800</pubDate><description><![CDATA[什么是数据库设计范式
数据库表的设计依据。教你怎么进行数据库表的设计。
数据库设计范式有几种
3种。
第一范式：要求任何一张表必须有主键，每一个字段原子性不可再分。
第二范式：建立在第一范式的基础之上，要求所有非主键字段完全依赖主键，
不要产生部分依赖。
第三范式：建立在第二范式的基础之上，要求所有非主键字段直接依赖主键，
不要产生传递依赖。
设计数据库表的时候，按照以上的范式进行，可以避免表中数据的冗余，空间的浪费。
第一范式
最核心，最重要的范式，所有表的设计都需要满足。
必须有主键，并且每一个字段都是]]></description><category></category></item><item><title><![CDATA[MySQL-索引，视图]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122487116</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122487116</guid><author>WDNMDnm</author><pubDate>Fri, 14 Jan 2022 11:40:42 +0800</pubDate><description><![CDATA[索引
什么是索引
索引是在数据库表的字段上添加的，是为了提高查询效率存在的一种机制。一张表的一个字段可以添加一个索引，当然，多个字段联合起来也可以添加索引。索引相当于一本书的目录，是为了缩小扫描范围而存在的一种机制。
例如
对于一本字典来说，查找某个汉字有两种方式：

第一种方式：一页一页挨着找，直到找到为止，这种查找方式属于全字典扫描。效率比较低。
第二种方式：先通过目录（索引）去定位一个大概的位置，然后直接定位到这个位置，做局域性扫描，缩小扫描的范围，快速的查找。这种查找方式属于通过索引检索，效率较高。]]></description><category></category></item><item><title><![CDATA[MySQL-事务管理]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122474379</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122474379</guid><author>WDNMDnm</author><pubDate>Thu, 13 Jan 2022 16:44:47 +0800</pubDate><description><![CDATA[事务（重点必须掌握）
什么是事务？
一个事务就是一个完整的业务逻辑，是一个最小的工作单元，不可再分

什么是一个完整的业务逻辑？
假设转账，从A账户向B账户中转账10000.
将A账户的钱减去10000（update语句）
将B账户的钱加上10000（update语句）
这就是一个完整的业务逻辑。

以上的操作是一个最小的工作单元，要么同时成功，要么同时失败，不可再分。
这两个update语句要求必须同时成功或者同时失败，这样才能保证钱是正确的。本质上事务就是批量的DML语句同时成功，或者同时失败。
注意：]]></description><category></category></item><item><title><![CDATA[MySQL-主键约束，外键约束，存储引擎]]></title><link>https://blog.csdn.net/WDNMDnm/article/details/122466821</link><guid>https://blog.csdn.net/WDNMDnm/article/details/122466821</guid><author>WDNMDnm</author><pubDate>Thu, 13 Jan 2022 15:06:21 +0800</pubDate><description><![CDATA[主键约束，外键约束
主键约束（primary key，简称PK）的相关术语：

主键约束：一种约束
主键字段：该字段上添加了主键约束
主键值：主键字段的每一个值都叫主键值

1.什么是主键约束（重点需掌握）
主键值是每一行记录的唯一标识。任何一张表都应该有主键，没有主键，表无效。一张表中只能添加一个主键约束。主键值建议使用：int、bigint、char等类型。
不建议使用：varchar来做主键。主键值一般都是数字，一般都是定长的！
主键的特征：not null + unique（主键值不能是NULL，同]]></description><category></category></item></channel></rss>