编程笔记

  • Android XMPP通讯自定义Packet&Provider

    摘要 在xmpp通信过程中,asmack中提供的Packet组件是IQ,Message,Presence三种: IQ用于查询 Message用于消息传递 Presence用于状态交互 他们都是Packet的子类,实质是用于将消息封装成响应的xml格式来进行数据交换,都有着良好的可扩展性。 简介p

  • Android中基于XMPP协议实现IM聊天程序与多人聊天室

    简单的IM聊天程序 由于项目需要做一个基于XMPP协议的Android通讯软件。故开始研究XMPP。 XMPP协议采用的是客户端-服务器架构,所有从一个客户端发到另一个客户端的消息和数据都必须经过XMPP服务器转发,而且支持服务器间DNS的路由,也就是说可以构建服务器集群,使不同的 服务器下的客户端也可以通信,XMPP的前身是一个开源组织制定的网络通信协

  • 修改Python的pyxmpp2中的主循环使其提高性能

    引子 之前clubot使用的pyxmpp2的默认mainloop也就是一个poll的主循环,但是clubot上线后资源占用非常厉害,使用strace跟踪发现clubot在不停的poll,查看pyxmpp2代码发现pyxmpp2的poll在使用超时阻塞时使用最小超时时间,而最小超时时间一直是0,所以会变成一个没有超时的非阻塞poll很浪费资源,不打算更改库代码,所以自己仿

  • xmpp 将XMPP网络可视化为图形

    示例 XMPP网络可以看作是双向图,其中服务器S在网格中运行,客户端C聚集在其本地服务器上,流由外向边缘表示: 当客户端希望通过网络将数据(例如消息或状态信息)发送到另一个客户端时,该消息总是沿着可能的短路径(从客户端到其服务器,然后如果它们处于打开状态,则路由到远程客户端)进行路由同一服务器或远程客户端服务器,如果远程客户端在其他服务器上,则再到客户端。

  • xmpp 拆分JID(通用)

    示例 要将JID拆分为其组成部分(localpart,domainpart和resourcepart),应使用以下算法(其中localpart由lp,resourcepart由rp,domainpart由dp和∈表示,用于检查给定字符是否为包含在字符串中): 请注意,localpart和resourcepart是可选的,并且可能导致空字符串(您可能只是em

  • realm Objective C

    示例 先决条件 iOS 7或更高版本,macOS 10.9或更高版本,tvOS和watchOS的所有版本。 需要Xcode 7.3或更高版本。 ol

  • realm 迅速

    示例 创建对象类: classDog:Object{ dynamicvarname="" dynamicvarage=0 }pr

  • realm Objective-C

    示例 @interfaceDog:RLMObject @propertyNSString*name; @propertyNSIntegerage; @end @implementationDog @end Dog*dog=[Dog&n

  • JavaScript中日常收集常见的10种错误(推荐)

    1 对于this关键词的不正确使用 Game.prototype.restart = function { this.clearLocalStorage; this.timer = setTimeout function { this.clearBoard; }, 0; }; 运行上面的

  • div实现自适应高度的textarea实现angular双向绑定

    相信不少同学模拟过腾讯的QQ做一个聊天应用,至少我是其中一个。 过程中我遇到的一个问题就是QQ输入框,自适应高度,最高高度为3row。 如果你也像我一样打算使用textarea,那么很抱歉,你一开始就错了。 textarea不是不可以的,然后我是这样错的。(就是监听scroll 如果出现了,就增加1rows 的高度)然而这样真的很挫 tex

  • C 语言二叉树几种遍历方法详解及实例

    二叉树的一些概念 二叉树就是每个结点最多有两个子树的树形存储结构。先上图,方便后面分析。 1 满二叉树和完全二叉树

  • Python中的sort()方法使用基础教程

    一、基本形式 sortediterable[, cmp[, key[, reverse]]] iterable.sortcmp[, key[, reverse]] 参数解释: (1)iterable指定要排序的list或者iterable,不用多说; (2)c

  • iOS runtime知识梳理

    一、runtime简介 RunTime简称运行时。OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制。 对于C语言,函数的调用在编译的时候会决定调用哪个函数。 对于OC的函数,属于动态调用过程,在编译的时候并不能决

  • Android 开发中fragment预加载问题

    我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而如果每个fragment都需要去加载数据,或从本地加载,或从网络加载,那么在这个activity刚创建的时候就变成需要初始化大量资源。这样的结果,我们当然不会满意。那么,能不能做到当切换到这个fragment的时候,它才去初始化呢? 答案就在Fragment里的setUserVis

  • centos 6.5 oracle开机自启动的环境配置详解

    centos 6.5 oracle开机自启动的环境配置详解 环境:centos 6.5 + Oracle 11g 自启动之前问题 虚拟机里的oracle环境,每次重启完系统,用plsql developer连接,先是报错: 无TNS监听程序 解决方法是切换到系统的o

  • JSP页面跳转方法小结

    实现JSP页面跳转,有如下几种方式: n 使用href超链接标记 客户端跳转 n&n

  • 微信开发之php表单微信中自动提交两次问题解决办法

    前言: 最近做微信开发,在微信中访问PHP页面,页面中有个表单。测试发现偶尔会出现表单被自动提交两次的情况,导致流程出错。 问题原因 暂时未找到原因,不过怀疑跟微信本身的机制有关。 解决方法 用session,每次提交表单时,计算一

  • Android 中RecyclerView多种item布局的写法(头布局+脚布局)

    RecyclerView多个item布局的写法(头布局+脚布局) 上图 img src="https:img.nhooo.

  • Android系统默认对话框添加图片功能

    开发工具Android Studio 今天公司UI要求软件对话框改成加图片的,以前没有做过,所以就学习了一下,废话不多说, 看效果: 创建XML文件dialog_lsit_item.xml &

  • jQuery实现文字自动横移

    效果图: 实现文字自动横移 style type="textcss" #demo {o

  • JAVA使用geotools读取shape格式文件的方法

    先看下JAVA用geotools读取shape格式文件 Shapefile属于一种矢量图形格式,它能够保存几何图形的位置及相关属性。但这种格式没法存储地理数据的拓扑信息。 其中,要组成一个Shapefile,有三个文件是必不可少的,它们分别是".shp", ".shx"与 ".dbf"文件 .shp— 图形格式,用于

  • jquery实现文字单行横移或翻转(上下、左右跳转)

    通过jquery的animate实现上下单行自动跳转 script type="textjavascript" src="__ROOT__StyleHjsjquery-1.7.2.min.js"script style .rool-div{ height:50px; wid

  • JavaScript中的"=、==、==="区别讲解

    = 是赋值运算,== 用于一般比较,=== 用于严格比较 == 在比较的时候可以转换数据类型; === 严格比较,只要类型不匹配就返回flase。 举例说明: "1" == true 类型不同,"=="将先做类型转换,把true转换为1,即为 "1" == 1;

  • JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别

    一、JavaScript"=="的作用 1.当==两边的内容是字符串时,则比较字符串的内容是否相等。 2.当==两边的内容是数字时,则比较数字的大小是否相等。 3.当==两边的内容是对象或者是对象的函数属性时,则比较内存地址是否相等。 二、==和===的区别   =

  • Struts2实现文件上传功能实例解析

    一、 搭建struts2环境 在myeclipse下,右击项目-MyEclipse-Project Facets-install Apache Struts2。 如要自己搭建,需下载struts2包,写struts.xml配置文件。 web.xml文件配置如下: filter&

  • 微信小程序首页数据初始化失败的解决方法

    一、 问题描述 用户首次后再次进入小程序时,我们通常需要通过获取用户openid或unionid用作唯一标示与后台进行数据交流,初始化用户信息。当我们通过第三方服务器跟微信建立请求时,微信需要用户确认是否公开信息。如图1,从console可以看到,在请求的同时,我们的首页index已经加载完成,图中初始化数据显示为空。无论我们将请求信息写在app.js的onload中

  • Oracle表字段的增删改、表的重命名及主键的增删改

    一、表字段的增删改: 添加字段的语法:alter table tablename add column datatype [default value][nullnot null],….; 修改字段的语法:alter table tablename modify column datatype [default value][nullnot

  • IOS  手势操作详解及实例总结篇

    iOS手势操作总结 手势操作种类 UITapGestureRecognizer: 敲击,点击 UILongPressGestureRecognizer: 长按 UIPinchGestureRecognizer: 缩放 UIRotationGestureRecogn

  • python中的sort方法使用详解

    Python中的sort方法用于数组排序,本文以实例形式对此加以详细说明: 一、基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的。 x = [4, 6, 2, 1, 7, 9] x.sort print x # [1, 2, 4, 6, 7

  • iOS Runtime详解(新手也看得懂)

    前言 Runtime的特性主要是消息方法传递,如果消息方法在对象中找不到,就进行转发,具体怎么实现的呢。我们从下面几个方面探寻Runtime的实现机制。 Runtime介绍 Runtime消息传递 Runtime消息转发 Runtime应用

  • iOS中Runtime的几种基本用法记录

    Runtime 介绍 这不是一遍介绍关于Runtime实现细节的文章,而是怎么利用Objective-C提供的Runtime API进行开发的文章! Objective-C拥有相当多的动态特性,这些特性在运行程序时候发挥作用. Objctive-C Runtime是个运行时的库,由C和汇编实现。通过Runtime封装的C结构体和函数可

  • iOS runtime动态添加方法示例详解

    前言 上手开发 iOS 一段时间后,我发现并不能只着眼于完成需求,利用闲暇之余多研究其他的开发技巧,才能在有限时间内提升自己水平。当然,“其他开发技巧”这个命题对于任何一个开发领域都感觉不找边际,而对于我来说,尝试接触 objcruntime 不失为是开始深入探索 iOS 开发的第一步。下面主要介绍了关于iOS runtime动态添加方法的相关内容,分享出来供大家参考

  • IOS 中runtime使用方法整理

    IOS 中runtime使用方法整理 做iOS的朋友都知道或听说runtime,这个东西很像java的反射机制,但功能远胜于java的反射。通过runtime我们可以动态的向一个类中添加属性、成员变量、方法,以及对其进行读写访问。 新建两个类ClassOne和ClassTwo #im

  • iOS runtime forwardInvocation详解及整理

    iOS runtime forwardInvocation详解 代码: TestModel - NSMethodSignature *methodSignatureForSelector:SELaSelector { ifaSelector == @selectortestMethod

  • JSP建立错误页页面并自动跳转

    在各个常用的web站点中,经常会发现这样一个功能:当一个页面出错后,会自动跳转到一个页面上进行错误信息的提示。   想要完成错误页的操作,则一定要满足两个条件:   1、指定错误出现时的跳转页,通过errorPage属性指定;   2、错误处理页必须有明确的标识,通过isErrorPage属性指定。 下面就是错

  • RecyclerView的使用之多种Item加载布局

    本文给大家介石介绍下如何利用RecyclerView实现多Item布局的加载,多Item布局的加载的意思就是在开发过程中List的每一项可能根据需求的不同会加载不同的Layout。 下面给大家展示下演示效果图: img src="https:img.nhooo.comstaticupload2103

  • Android ActionBar搜索功能用法详解

    本文实例讲述了Android ActionBar搜索功能用法。分享给大家供大家参考,具体如下: 使用ActionBar SearchView时的注意点: 首先要吐槽一下Android的官

  • Bootstrap每天必学之进度条

    1、进度条 在网页中,进度条的效果并不少见,比如一个评分系统,比如加载状态等。就如下图所示的一个评分系统,他就是一个简单的进度条效果: p

  • PHP数据库表操作的封装类及用法实例详解

    本文实例讲述了PHP数据库表操作的封装类及用法。分享给大家供大家参考,具体如下: 数据库表结构: CREATE TABLE `test_user` `id` int11 NOT NULL AUTO_INCREMENT, `username` varchar45 NOT NULL, `password` varchar45

  • 关于linux分区,文件系统,目录结构的概述

    1.Linux中如何表示硬盘,分区 Linux内核读取光驱,硬盘等资源时均通过“设备文件”的形式进行,因此在linux系统中,将硬盘和分区表示为不同的文件。具体表述形式如下: 硬盘:对于IDE接口的硬盘设备,表示为“hdX”形式的文件名:而对于SCSI接口的硬盘设备,则表示为“sdX”形式的文件名,其中“X”可以为a,b,c,d等字母序号。例