自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java socket 大数据传输丢失的问题

最近遇见一个问题。利用java 的socket进行数据传输时,当数据量过大,比如4w个字节。这时候我在客户端输出流将数据发送给服务器。服务器如果利用数组接收时(即is.read(byte[])方法),接收到的数据不全。网上解决方法。一. 分批发送,分批读取,并不要直接读取,将输入输出流利用BufferedInputStream包装。实测这种方法不能根本上解决问题,治标不治本。还是会有概率丢失。二.实际上,数据是不会丢失的。即使输入数据过大导致溢出。数据也不会丢失。根据观察,应该只是数据还没有传输过来,但

2020-05-08 19:45:04 3285 3

原创 java new String("a")创建了几个对象

因为看见网上解释的有点歧义。一开始我也被误导了,这里记录以下。首先答案是两个,分别放在StringTable(字符串常量池),和堆中原因:注意,不是new String()创建了两个对象,其实是"a"创建了一个对象放入了常量池。new String()创建了一个对象放入了堆中。故而new String(“a”)创建了两个对象。其实你执行System.out.println(“a”);也会创...

2020-03-13 16:14:50 929

原创 ArrayList源码分析(jdk12)

1. 成员变量//默认初始容量private static final int DEFAULT_CAPACITY = 10;//共享空实例对象,用这个表示数组为空private static final Object[] EMPTY_ELEMENTDATA = {};//共享空实例对象,用这个表示该ArrayList对象是调用默认构造方法创建数组容器private static fin...

2020-03-10 13:40:16 191

原创 Hashtable和HashMap的比较

hashTable和hashMap有许多相似的地方,不过因为用的也不多,这里就关注一些和HashMap的区别1. 构造方法构造方法也是3个,关键的构造方法如下public Hashtable(int initialCapacity, float loadFactor) { if (initialCapacity < 0) throw new Il...

2020-03-10 12:09:45 194

原创 HashMap源码分析(jdk12)

1. 初始化,hashMap初始化容量默认大小为16,默认负载因子为0.75F一共有3个构造器无参带初始化容量带初始化容量和初始化加载因子前两个构造器都是调用第三个构造器。如果没有设置初始化容量或负载因子,以默认值创建。值得一提的是:在调用构造器创建HashMap时不会立即创建容器,(在jdk1.8之后为 Node<K,V>[] table 用于存储键值对...

2020-03-10 11:18:03 183

原创 java爬虫框架diy

背景以前用python做爬虫,就了解到scrapy框架,但是用了一会儿,总觉得用不明白。一直想做一个自己的爬虫,最近就用java自己diy了一个。为了不让自己忘了,就打算写几篇博客爬虫基本结构原谅我用画图画的。。。。。主要分为五部分调度器request请求器Parse解析器Save存储器Reader、Writer读取器url,html,item资源池调度器调度器包括C...

2020-02-29 20:58:58 291

原创 快排

快排介绍:快排简单而言就是在数组中选取一个基准值。将小于基准值的放左边(或者放右边),大于基准值的放右边(或者放左边),分成两个数组。再对得到的左右两个数组分别重复上述操作。这样若干轮下来我们会得到只有1个或0个元素的数组这种最基本情况。那不用排序直接返回即可。举个例子:【5,8,12,4,7,2,7】我们计算的方法是这样的1.选取基准值(可以按照一定的规则选取,或者随机选取,我们就直...

2019-12-26 20:25:58 169

原创 数据库 视图和表

数据库中表的概念很好理解,就是数据的一种组织存放形式。表中是包含真正的数据的。比如我有一张表如下在磁盘中我可以找到表文件用cat打开表文件的话会是乱码,包含了实际的数据而视图。本质上是sql语句(或者说和 指针 的概念有点像)。我这里创建了一个视图虽然我这里创建视图的语法是create view view_table as select * from table1;但是实...

2019-08-01 15:01:17 3612

原创 hive中split(),explode()和lateral row

split()函数是用于切分数据,也就是将一串字符串切割成了一个数组,标准格式为split(str,regex),支持正则切分不过有点奇怪的是,对于 “.”,"|“这样的特殊字符,不加”“的时候是特殊字符,加了以后才是普通字符,而对于”\d"的字符,需要加"“后才是特殊字符,就是是说”\d"才是匹配数字。假设我有一张表(demo)如下:用split()函数对name字段切分select s...

2019-07-31 14:54:24 46297 3

原创 mysql两表关联 将join替换为union效率问题

现在我有两张表表1.表2.假设这两张表来自一家麻辣烫的店铺,表1表示某天(part_init_date)编号(number)的客户消费(cost)表2表示某天(part_init_date)编号(number)的客户姓名(name)两张表各30000条数据。如果用join的方法进行联表查询查询当天来吃麻辣烫的用户真名和花费。select b.name,a.number,a.cos...

2019-07-26 14:15:27 3769 1

原创 navicat中存储过程的写法

步骤一.步骤二.步骤三.步骤4.设置输入输出参数步骤5.再begin,end里写代码就可以了这里我写了一段存储过程。大意是按时间递增分别向两张表插入30000条数据 CREATE DEFINER=`mycat2`@`%` PROCEDURE `inst`()BEGIN DECLARE i INT; declare j int; declare ym varchar(...

2019-07-26 10:38:24 4853

原创 hive中两表同名列关联

hive中两表关联如果列同名会报错。如下Error: COMPILE FAILED: Semantic error: [Error 10878] Column xxx Found in more than One Tables/Subqueries (state=42000,code=10878)这种情况下可以修改其中一个表的列名。如下select a.stockCode,b.name,...

2019-07-16 15:03:35 1783

原创 想做个磁力链搜索引擎 3

上一篇中,我们已经实现了对tracker的访问,从而获取到了peer对等体的ip地址以及端口号。我们这一篇要实现的是对等体之间的通讯。在bt种子下载中,对等体就是正在下载你需要文件的另一台主机或提供下载你需要文件的主机。每一个种子一开始都是有一个做种者做种,将种子,或磁力链发布到网上,提供给其他用户下载,上传的种子如果被其他人下载了。这时做种者即使退出,种子同样可以在网络上传播,因为已下载的用户...

2019-05-06 23:37:09 63306 2

原创 想做个磁力链搜索引擎 2

上一篇我们已经解析出种子的基本结构。下一个问题就是,如何通过种子文件所给的信息,获取文件的下载地址。上一篇中我们解析种子发现有两个键比较特殊,分别时announce以及announce-list这两个属性的值便是是tracker服务器的地址。(据我观察,announce里面的地址比announce-list里面的地址访问速度快一点,announce-list里的地址无法访问的概率大一点)p...

2019-04-30 20:44:23 21076

原创 想做个磁力链搜索引擎 1

最近突然想做个磁力链搜索引擎预计想分3步走1.写个磁力链下载器2.写个DHT网络爬虫3.搭个磁力链搜索网站自己一个人鼓捣了几天了,第一步的进度才迈出第一步。。。。不知道最后能不能实现。part1 磁力链原理的简单介绍。磁力链和种子是两种东西,这首先要分得清。磁力链实际上是bt协议的一个拓展协议。(这里是bt协议的地址http://www.bittorrent.org/index.ht...

2019-04-23 21:24:23 82013

原创 通过爬虫抓取秒懂百科视频

最近想做一个小项目,需要一些百科知识。我便把目标瞄准了百度百科上。爬取百科文本,相对容易,爬取秒懂百科的视频文件,就有些麻烦了。以前也爬过阳光视频的视频文件,阳光视频在网页源码中能找到一个加密的视频网址。但是秒懂百科找了半天没找到。思路一:从html 的vedio标签入手。检查元素,我们可以看到如下网页显示的视频地址带有一个blob:的前缀。你直接访问是没有用的。(关于vedio 标签...

2019-04-02 22:07:22 16806 7

原创 关于用eclipse进行java web开发的一些经验

1.在eclipse 启动服务器以后,不要关闭服务器。然后可以在其他浏览器上访问页面,不必在eclipse中运行页面。而且效果和在eclipse中运行是一样的。eclipse的监控窗口也可以检测到运行页面的变化。2.eclipse 将项目在本地服务器运行时有时会报错。如果是端口占用,将占用程序关闭就好了。有时还会出现类似启动配置出错,一般是把项目中不该删的东西删了,最简单的是重新建一个项目,把文...

2019-03-18 11:00:20 177

原创 利用ajax+jsp+servlet实现网页验证码的生成

效果如下。点击9888的验证码,可以重新获取验证码。实现方法主要是ajax+servlet+jspajax部分(这段js需要在页面加载完后执行,不让可能找不到放图片的位置)//向AjaxGet这个servlet发送post消息function verification(){ http_request2.open("POST","../AjaxGet",true);...

2019-03-18 10:37:56 702

原创 关于jsp:useBean java类导入问题

jsp小白,想要导入一个自己写的java的类。利用jsp:useBean,死活找不到类文件。一直报错:The value for the useBean class attribute [cat.Login] is invalid.网上找了好久才解决。首先这个问题主要可能是两个原因1.路径不正确2.导入的类里面,没有将构造函数设为public.(没写,默认好像是default)第二个好...

2019-03-13 13:31:09 4257

原创 使用frame制作左右分屏的页面

利用frame框架,将页面分为左右两部分,左边是导航,右边是显示页面,这是管理系统的常见布局。效果如下左边是导航,右边是页面,点击左边按钮,左边页面不变,右边页面在跳转。类似这样。html代码如下。 &amp;lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&amp;gt;&amp;lt;head&amp;gt;&amp;lt;meta http-equiv=&quot

2019-03-12 12:17:27 3197

转载 java 编码字符处理

String result = null;byte temp[];temp = str.getBytes(“iso-8859-1”);//以“iso-8859-1”的格式解码成二进制文件result = new String(temp,“utf-8”); //以“utf-8”的格式将二进制文件编码成“utf-8”两者功能和python里的str.deconding(),str.encodi...

2019-03-12 10:42:54 193

转载 python+mysql的一些简单操作

使用的库 pymysqlsql命令的执行:#连接数据库conn = mdb.connect(host=db_host,passwd=db_pw,user=db_user,db=name)#获取游标cur = conn.cursor()#sql语句sql = “INSERT INTO charactors (ty_name, ty_title ,ty_content,ty_pictur...

2019-03-11 20:16:17 222

原创 利用css+js制作广告轮播

现在一般的网站都有广告轮播的部分。参考了网上零零散散的教程,今天尝试自己做了各轮播的效果。放不了效果视频,就放个图片吧。如下四张图片在滚动,每隔5秒向后跳一张,下方的四个点像走马灯一样一个个循环图片转换过程采取淡入淡出的渐变方式鼠标悬停在图片上方会出现,左右两个箭头。点击可以实现向前或向后跳转。当然点击下方的四个点也可以跳转。基本上就是常规的广告轮播。实现方法、html部分 ...

2019-03-11 19:46:41 1484

转载 如何使用asp连接mysql

asp的配套数据库是microsoft access,不过也可以连接mysql连接之前需要配置一下,详情可以见该博客https://blog.csdn.net/zzx2016zzx/article/details/81024287 &amp;amp;lt;!DOCTYPE html&amp;amp;gt;&amp;amp;lt;html lang=&amp;quot;en&amp;quot;&amp;amp;gt;&amp;amp;lt;

2019-03-02 22:36:59 2463

原创 使用python向mysql中添加字典数据

mysql似乎没有字典的数据格式,如果直接将字典转化为字符串,以文本的格式添加数据,会出现一些麻烦的现象(字符串的一些字符,如转义字符会报错)。可以先利用json.dumps()将字典序列化。再将得到的utf-8的编码序列中“\”替代为&amp;amp;quot;\\&amp;amp;quot;,再存入数据库.数据读取时,只需要像文本一样正常读出来,再利用json.loads()反序列化,即可。结果如下字典格式如下从数据库读取数据结...

2019-03-02 14:52:45 6221 1

转载 让浏览器显示asp错误提示

https://blog.csdn.net/hl449006540/article/details/80890709效果如下

2019-02-28 18:31:48 1166

原创 边学边搭建个人网站

网络上搭建个人网站的教程不少,但是都比较零散。自己一个人鼓捣鼓捣,也开始上路了。搭建个人网站的基本步骤如下:1.申请域名2.购买服务器3.在服务器上配置环境4.将自己的本地网页上传到云服务器1.申请域名这一步我没有尝试,对于个人实验而言的话,简单的网站可以直接用ip地址访问,域名实际上不是必要的。网络上由许多教程,可以上万网购买,也可以在阿里云购买。购买后将域名和购买的服务器ip绑定...

2019-02-27 11:26:24 776

转载 关于asp乱码问题解决

由于iis的默认编码格式不是utf-8,只要在页面asp代码前插入这样一段话&amp;amp;amp;amp;lt;%@LANGUAGE=“VBSCRIPT” CODEPAGE=“65001”%&amp;amp;amp;amp;gt; 即可解决。

2019-02-27 09:10:26 917

空空如也

空空如也

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

TA关注的人

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