自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (7)
  • 收藏
  • 关注

原创 C/S+P2P网络模型(二)--上传&下载文件

上一篇文章我们实现聊天的功能,下面我们看文件传输怎么实现。我的做法是:增加一个文件服务器,所有上传和下载文件的操作都由文件服务器来处理。因此处理逻辑是这样的:如果用户请求上传文件或者下载文件,那么就将用户直接与文件服务器通信,而不用经过中央服务器。所以现在的问题是知道java怎么实现上传和下载文件,如果这个问题解决了,那基本就搞定了。首先,文件传输基本都是用面向连接的方式。因为无连

2014-03-20 23:30:57 5457

原创 C/S+P2P网络模型(一)--聊天

从今天开始我们来实现一个C/S+P2P网络模型,主要功能包括:聊天和传输文件。聊天分群聊和私聊,虽然不是真的像QQ那样有个QQ群,但是这样类比容易理解,在后面我们会仔细说明。前面我写过一篇文章讲过组播,我们就用组播来实现p2p网络模型。首先而且是最关键的一点是:每一个程序实例都对应一个peer结点。接下来我们先来解释整个程序代码框架,再分聊天和传输文件详细说明。我们先看整个程序框架。

2014-03-20 02:46:17 5374

原创 Java实现局域网内单播

前面我写过一篇文章讲java实现组播,今天我们就来看看java怎么实现局域网内单播。我们先来补充一下网络编程的两个要点:1.       我们以进程为对象来看待问题会比较简单一点。进程是最小的程序单元,而网络进程在建立网络连接的时候会占用一个端口。2.       我们所说的单播和组播,其实都是进程间通信。所以实现单播最重要的是指定IP地址和进程端口。如果是本机测试,IP地址相

2014-03-19 01:57:31 2841

原创 使用MulticastSocket实现组播

多播技术是一种允许一台或多台主机在同一时间发送单一的数据包到多台主机的网络技术。多播源将数据包发送到特定多播组,只有属于该多播组的主机才能接收到数据包。这些主机可以是在同一个物理网络,也可以来自不同的物理网络(只要有多播路由器支持)。很明显多播是无连接和不可靠的,所以它使用UDP协议。我们说过使用MulticastSocket类,这个类叫多播数据报套接字类,主要用于发送和接收IP多

2014-03-16 20:56:58 4147

原创 在页面中调用搜索引擎

今天突然想到,在自己的页面中调用google、百度这样强大的搜索引擎想必很酷。于是上网查了资料,没想到就几行代码的事。下面是调用百度的一个代码段: 调用百度引擎 怎么样?够简短吧,还想着有多难呢。百度官方还给了更详细的说明。还有,如果想看更多的引擎调用,请看这篇博客http://w

2014-03-16 02:25:31 2693

原创 python实现聊天室--C/S模式

最简单的模式--C/S模式实现聊天室从半双工开始,何谓半双工?半双工即是说双方可以互发消息,但一次只能一个用户发送。 只要稍微会点socket编程的人都会觉得很简单,所以过过场,直接上代码。服务器端代码:from socket import *from time import ctimeHOST = ''PORT = 4568BUFSIZE = 1024ADDR = (

2014-03-15 15:09:43 5030 1

原创 python多线程编程(二)--threading模块

上一篇文章讲thread模块的使用,我们接下来看threading模块怎么使用。threading模块对象对象描述Thread一个线程的执行对象Lock锁对象RLock可重入锁对象,使单线程可以再次获得已经获得了的锁(递归锁定)Condit

2014-03-15 10:37:54 2550

原创 python多线程编程(一)--thread模块

python提供两个模块支持多线程编程:thread和threading。thread模块函数函数描述start_new_thread(function,args,kwargs=None)产生一个新线程,在新线程中用指定参数和可选的kwargs调用function函数allocate_lock()分

2014-03-15 01:57:06 7631

原创 linux安装新版本python

我的机子是ubuntu12.04,自带python2.7.6.这段时间在网上看到一些源码要用到python3的新特性,所以只能装一个python3.但是我还想留着2.7.6,以方便开发的时候测试用。怎么办呢?下面看具体步骤:首先,下载python3.3.5的源码包:http://www.python.org/ftp/python/3.3.5/Python-3.3.5.tar.xz解

2014-03-14 00:32:50 1599

原创 django用表单实现图片爬虫

这一次讲django实现的爬虫,而且是爬图片。爬图片会有两个问题:1.       爬到的图片怎么保存?2.       怎么将爬到的图片显示在页面上?接下来我们一一解答。第一,我们要将爬到的图片显示出来,那就要图片的链接,所以我们只要保存图片的原地址就可以了。第二,django中的for标签会帮我们新建元素并将元素添加到文档流中。举个例子,{% for item in

2014-03-10 22:50:32 1864

原创 django表单处理(二)--数据验证

上一篇讲到最简单的表单处理,就将输入的字符串输出了。这么简单的表单处理可不行,接下来我们以一个用户注册的例子说明怎么验证数据。验证数据要用到django.forms模块。首先我们在templates目录下新建一个forms.py文件,添加代码:#-*- coding: utf-8 -*-from django import formsclass AccountForm(for

2014-03-10 00:28:08 2874

原创 django表单处理(一)--最简单的表单

是时候讲django的表单处理了。最简单的表单处理就是从输入框中提取字符串,交给后台进行数据处理并返回相应结果。本着简单入门的原则,今天设计的表单就只有一个文本框和一个按钮。在templates目录下新建一个test01.html文件 django表单处理 body, div { padding: 0; margin: 0; } #containe

2014-03-10 00:23:04 3607 1

转载 sublime text 3解放鼠标的快捷键总结

Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)Ctrl+G 跳转到相应的行Ctrl+J 合并行(已选择需要合并的多行时)Ctrl+L 选择整行(按住-继续选择下行)Ctrl+M 光标移动至括号内开始或结束的位置Ctrl+T 词互换Ctrl+U 软撤销Ctrl+P 查找当前项目中的文件和快速搜索;输入 @ 查找文件主标题/函数;或者

2014-03-07 16:36:38 1066

《统计学习方法》带书签--李航.pdf

李航的《统计学习方法》,带书签。基本算法及推导全在里面了

2015-07-29

C/S+P2P网络模型--聊天和文件传输

C/S+P2P网络模型,实现聊天和文件传输的功能

2014-03-20

C/S+P2P实现聊天

使用C/S+P2P网络模型实现聊天,传输文件待实现。

2014-03-20

Ubuntu搭建apache+python+django+mysql web开发环境

详细描述Ubuntu下如何搭建python的web开发环境

2013-11-28

EasyBCD2.1.2.zip

 EasyBCD是一款免费软件,EasyBCD能够极好地支持多种操作系统与Windows 7、Vista结合的多重启动,包括Linux、 Mac OS X、 BSD等,当然也包括微软自家的Windows 2000/XP。任何在安装Windows7 前其能够正常启动的系统,通过EasyBCD,均可保证其在安装Windows7后同样能够启动。同时,在设置方面极为简单,完全摆脱BCDEdit的繁琐冗长命令,用户只需选择相应的平台与启动方式(如Linux下的Grub或LILO),即可完成。

2012-11-15

Win7系统下不重新安装系统对硬盘进行分区

Win7系统下不重新安装系统对硬盘进行分区

2012-09-16

空空如也

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

TA关注的人

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