- 博客(35)
- 资源 (1)
- 收藏
- 关注
原创 TCP协议详解
1.首先看一下在浏览器地址栏中输入了url之后,到显示页面都经历了什么 首先输入url之后需要先经过DNS服务器进行解析,解析成对应的ip地址,然后返回给客户端,接着客户端和服务器之间开始建立请求进行响应,最后进行断开,如图所示: 上述过程中使用到的协议有: TCP:与服务器建立连接 IP: 网络层发送数据 OPSF:路由选择 ARP:IP地址转换为MAC地址 ...
2020-12-06 17:15:16
258
原创 Java的IO操作
1.工作中使用IO流的操作 java的IO操作从方向上分为inputStream和outputStream。从单位上有字节流和字符流,字节流可以通过StreamReader转化为字符流,为了提高效率我们也用到了buffer流 (以上介绍的流操作都是BIO流,项目中直接操作IO的业务场景 不是太多。但是我了解的很多分布式框架底层的通信都是使 用NIO流,NIO流最核心的组件就是Buffer、Chanel和 Selector了) 2.文件通常是由一连串的字节或者字符组成,组...
2020-12-04 16:40:40
213
原创 Java中的异常处理
1.finally关键字和return关键字执行顺序: 1.只有与finally对应的try语句块得到执行的情况下finally里面的内容才会执行,如果执行不到try语句块中的内容的时候,方法就已经结束了(但是当try中的语句执行了退出虚拟机的操作 System.exit(0)的操作时,finally里面的内容不执行) 2.如何执行到了finally中的代码块,其中有return,那么 return的值一定是finall中的值 ...
2020-12-04 14:12:37
302
原创 Set接口
1.Set接口的实现类有哪些? HashSet:HashSet的底层其实就是一个HashMap所以是不能重复的, 只是我们add的时候只使用了HashMap的key部分。 TreeSet:可以对Set集合进行排序,默认自然排序2.TreeSet存放自定义类型如何实现有序的? 分别是采用Comparable接口Comparator接口实现的总结:Set集合的特点就是无序,不可重复对比List集合是有序的,可以重复 此处的有序,无序指的是插入数据时...
2020-12-04 10:44:24
482
原创 HashMap详解
1.map接口和List接口的关系两者没有关系,都是集合,Map接口没有父类,而List的接口关系在上一篇博客中有介绍,2.Map有哪些常用的实现类 HashMap:底层是数组+链表+红黑树,默认 初始容量是16、扩容因子为0.75,每次采用2 倍的扩容。 HashTable:线程安全,遗留类,不建议使用。 ConcurrentHashMap:现阶段使用使用比较 多的一种线程安全的Map实现类。在1.7以前 使用的分段锁机制实现的线程安全的。1.8以 后使用synchro...
2020-12-02 18:02:13
705
原创 List接口的实现
1.ArrayList是线程安全的吗? 不安全,Vector是线程安全的,但是生产环境已经不用了。目前使用CopyAndWriteArrayList 和 Collections.synchronizedList(List<T> list)2.List接口的继承关系ArrayList:底层是动态数组、查找快,增删慢,默认初始容量是10、每次采用1.5倍的容量扩容(在内存有一块连续的空间,只要有内存下标地址可以马上定位到数据);Vector:和ArrayList一...
2020-12-02 10:31:53
616
1
原创 单例模式的多种实现
package net.csdn.se.singletondemo;/** * 线程安全的---懒汉式(懒加载)创建 */public class Singleton06 { //1\ private Singleton06(){} /** * 2静态的内部类的方式来创建实例 * 在内部类被加载和初始化时,才创建实例。 * 静态内部类不会随着外部类的加载和初始化而初始化,而是在需要的时候才会进行加载和初始化 */ pr.
2020-11-23 18:22:57
506
原创 static关键字和static代码块执行顺序
1.static 使用场景:修饰变量 修饰方法 可以修饰 静态导包法?import static java.lang.System.out; import static java.lang.Integer.*; public class StaticTest { public static void main(String[] args) { out.println(MAX_VALUE); } }2.static代码块执行顺序 总结一下(父静子静,父非静,父
2020-11-20 16:40:15
1106
2
原创 父类对象指向子类引用
Java多态的三个必要条件:1、 继承2、 子类重写父类方法3、 父类引用指向子类对象然后看一个例子输出结果为:给出结论:Father c = new Child() 在c的眼里只能看到 child 里面的 father 属性! 当满Java多态的三个条件时,可以发现c.eat()调用的实际上是子类的eat(是因为子类重写覆盖了父类方法), 但c.age调用的还是父类的age(属...
2020-11-13 16:54:52
2435
原创 使用超级管理员删除 oracle用户
select saddr,sid,serial#,paddr,username,status from v$session where username is not null and username = 'OFBIZ'alter system kill session '2010,58461' ; (2010 和 58461 分别表示SID和SERIAL# 对应的数据)全部修改为KILLED状态即可最后drop user OFBIZ cascade 删除用户OFBIZ...
2020-10-26 16:17:29
7689
原创 oracle 删除表空间错误 提示:ORA-02429
sql>drop tablespace OFBIZ;ora-01549:表空间非空,请使用INCLUDING CONTENTS 选项sql>drop tablespace OFBIZ INCLUDING CONTENTS and datafiles;ora-00604:递归sql层1出现错误。ora-02429:无法删除用于强制唯一/主键的索引。sql>drop tablespace OFBIZ including contents cascade constraints;or
2020-10-26 15:20:37
8643
原创 scrapy框架原理学习
1.Scrapy异步框架核心原理2.Scrapy项目创建与配置3.Middleware中间件4.Pipeline管道文件5.Scrapy异步抓取实战1.理解同步和异步的取别 同步:下一个方法依赖于上一个方法的结果 异步:下一个方法不依赖于上一个方法的结果 上面图片中遇到的问题就是访问处理后一个请求需要上一次请求处理完毕,这样耗费的时间比较长,而且如果中途哪一个请求响应失败,会影响到后续的请求处理,所以引入了异步请求...
2020-08-31 20:01:50
9199
原创 ‘chromedriver‘ executable needs to be in PATH. 解决
selenium 爬虫时报错:Message: 'chromedriver' executable needs to be in PATH.Please see https://sites.google.com/a/chromium.org/chromedriver/home。报错原因:没有配置chrome浏览器的chromedriver解决办法:1.确定自己所用chrome的版本打开chrome浏览器,在网址处输入chrome://version/ 即可查看版本号2.下载对应版本..
2020-08-30 10:52:30
10746
原创 urllib的使用
最重要的是掌握通过前端开发者工具编写好xpath语句后者正则表达式语句import urllib.request as urret = ur.urlopen('https://edu.csdn.net/') # 返回的是<class 'http.client.HTTPResponse'> 对象ret = ur.urlopen('https://edu.csdn.net/').read() # 返回的是字节类型文件 <class 'bytes'>print(type(r.
2020-08-27 17:05:56
9070
原创 python中的re模块(正则表达式)和Xpath使用
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</price></book> <book> <title lang="eng">Learning XML</title> &...
2020-08-26 19:23:51
9845
原创 数据清洗和提取策略
re模块使用with open('re模块使用.html',mode='r',encoding='utf-8') as f: # 读取内容,并去除换行以空串代替 context = re.sub('\n','',f.read()) #定义正则 pattern_1 = '<div class="email">(.*?)</div>' ret_1 = re.findall(pattern_1,context) print(re...
2020-08-20 19:19:00
9510
原创 模型类多表操作和中间件
class User2(models.Model): username = models.CharField(max_length=16)class News(models.Model): topic = models.CharField(max_length=100) #to指向一的一方,一对多 ;on_delete外键约束,级联操作; #帖子的发送者,一对多的关系 # 一个User2对象能对应多个News对象,一个News对象只能对应一个User2...
2020-08-15 19:06:30
9013
原创 python框架Django高级内容
1. Cookie的原理 1. Cookie是由服务器生成,存储在浏览器中的键值对数据 2. 每个域名的Cookie相互独立 3. 浏览器访问域名为A的url地址,会把A域名下的Cookie一起传递到服务器 4. Cookie可以设置过期时间2. Cookie的设置与获取路由中定义 : re_path('set_cookie/(.+)/(.+)',views.set_cookie_handler,name='set_cookie'...
2020-08-14 11:06:16
9005
原创 模型类的增删改查,QuerySet详解
在控制台输入即可,后期开发项目不会使用这种方法from user.models import * user1 = User.objects.get(id=1) print(user1)user_s = User.objects.all() print('user_s的类型是:', type(user_s))from user.models import * user_s = User.objec...
2020-08-13 14:38:32
9074
原创 python连接Mysql
1.下载所需要的pip pip install mysqlclient -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com pip install pymysql -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com2.创建Django项目,连接时出现:解决办法:在url后面添加上?serverTimezon...
2020-08-12 17:03:16
8924
原创 python模板相关知识总结
模板原理模板调用模板传参参数输出<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body>{{ name }}{{ password }}{# list 取值 #}{{ list.0 }}{...
2020-08-11 19:06:34
9001
原创 路由映射,命名空间,反向解析
目录1.基本路由映射与命名空间2.正则路由映射参数的传递和接收3.反向解析处理器正则表达式: 引入包 :from django.urls import re_path反向解析处理器导入包from django.shortcuts import render,HttpResponse,reverse...
2020-08-10 17:01:57
9002
原创 git修改CAFile以及oracle 11g错误ora-01033:oracle initialization or shutdown in progress解决办法
由于整理电脑中D盘文件位置,导致oracle的表空间被移动删除,登录时提示ora-01033:oracle initialization or shutdown in progress 进程:0,会话:0 的的问题解决办法: 1.先在windows下运行cmd2.以DBA用户登录,具体命令是:sqlplus /NOLOG3.输入用户名密码 :connect sys/123456 as sysdba(输入自己设置的管理员账号和密码)4.shutdown normal 提示:...
2020-08-08 15:59:43
9303
原创 python-----------异常处理和模块引用
异常处理'''异常'''try: print("-----------开始-----------------") a = 100/0 print(a)except ValueError as e: print("错误信息:",e)except ZeroDivisionError as e: print("错误信息:", e)except Exception as e: print("错误信息:",e)else: print("错误信
2020-08-05 14:48:35
9052
原创 python---------函数高级应用
#abs是函数本身 abs(-10)是函数调用,# 函数名<==>变量 两者可以相互f = absprint(f(-1))print(abs(-1))print(abs)print(f)''' #把函数当作参数传递给其他函数 相当于是代理模式,将f函数实现之后传递给add函数,add函数本身是不管你是怎么实现的,add只负责执行'''def add(x,y,f): return f(x)+f(y)print(add(1,-19,abs))''' .
2020-08-05 09:59:19
9062
原创 python-------列表生成式,生成器(generator),迭代器(Iterable)
''' getattr(): 函数用于返回一个对象属性值。 getattr(object, name[, default]),如果没有某一个属性 设置了默认值则不会报错,如果没有设置默认值就会报错 setattr(): 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的 如果属性不存在会创建一个新的对象属性,并对属性赋值,如果属性存在则覆盖 hasattr(): 函数用于判断对象是否包含对应的属性 .
2020-08-03 20:35:05
9028
原创 python-------面向对象,继承,封装,多态
''面向对象编程'''class Student(object): #初始化方法定义 self 指向实例化的本身 def __init__(self,name,age,score): self.name = name self.age = age self.score = score def print_score(self): print('%s: %s: %s' % (self.name,self.ag.
2020-08-03 20:05:38
9025
原创 python----------------python文件操作
文件输入方法主要有内置函数和os操作函数,里面涉及到的方法比较多不过不需要去记,理解就可以了,等用到相应的函数时,可以参考文档#读取文件按照字符的个数 3 如果编码格式没有问题就不需要指定encoding编码f = open('./aa.txt','r',encoding='UTF-8')#打开目标文件a=f.read(3) #读取前三个print(a)f.close() #关闭流''' 读取文件按照行来读取 .
2020-08-01 17:45:24
9078
原创 python学习---------结构和函数
来了来了~~声明一下~~目前每天都会抽出来最少一个小时学习,博客更新最少一周两次~~ohoh这几天主要学习了python的结构和python的函数内容~~直接上干货分支结构分支只会执行一个输出语句,只要满足其中一个条件,其余条件都将跳过# 分支结构a = 13if a>15: print("111")elif a>10: print("222")else: print("333")while循环结构和breaki =...
2020-08-01 00:00:11
9197
原创 Python学习--------------、介绍,基础,数据类型
pyThon的发展,环境安装和介绍就不多废话直接开启我们的学习之旅 定期更新(立博为证,纪念我那些荒废的时间)~~~1.变量类型重点掌握Numbers(数字)类型中的int类型和float类型数值类型 int 整形 float 浮点型 complex 复数(基本不使用) bool 布尔值 序列对象 str 字符串 list 列表 tuple 元组 键值对 set 集合 dict 字典 字符串内容相关代...
2020-07-28 21:50:39
10380
2
翻译 表单提交后关闭页面(layer弹窗)
很多时候,我们需要在页面上弹出一些窗口供用户操作或者是一些提示信息。当然了,弹出一个表单也是有这样的需求的。那么问题就来了。当这个表单提交之后,我们需要关闭这个弹窗啊。按照我们对程序执行的顺序,我们很容易想到在submit()函数调用后再加上一句关闭的语句。但是,你会发现加上之后确实能关闭,但是表单根本不会提交。好吧,这个时候你就开始不知道怎么办了,开始各种百度”submit()执行之后执行js、
2017-07-10 12:42:08
14598
翻译 如何有效防止SQL注入
摘要防止SQL注入一、SQL注入简介 SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。二、SQL注入攻击的总体思路1.寻找到SQL注入的位置2.判断服务器类型和后台数据库类型3.针对不通的服务器和数据库特点进行SQL注入
2017-07-04 20:15:30
8620
原创 Oracle数据库中查询年龄
select t.* ,trunc((to_char(sysdate,'yyyyMMdd')-to_char(to_date(substr(IDCARDNUM,7,8),'yyyy-MM-dd'),'yyyyMMdd'))/10000) nianling from ps_judge_info t select add_months(to_date(substr(ps_judge_inf
2017-07-03 16:55:46
10935
原创 layer
layer-更懂你的web弹窗解决方案 function func1() { layer.alert('内容'); } function func2() { layer.alert('内容', { icon: 1,
2017-07-01 15:30:06
9308
转载 跨站点请求伪造解决方案
AppScan跨站点请求伪造Token近期通过APPScan扫描程序,发现了不少安全问题,通过大量查阅和尝试最终还是解决掉了,于是整理了一下方便查阅。1.跨站点请求伪造首先,什么是跨站点请求伪造?跨站点请求伪造-CSRF(Cross Site Request Forgery):是一种网络攻击方式。说的白话一点就是,别的站点伪造你的请求,最可怕
2017-06-30 17:13:13
11894
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人