自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(118)
  • 资源 (14)
  • 收藏
  • 关注

原创 Android 使用Mina的Nio实现客户端服务器通信

1、添加jar包到客户端与服务器端 2、服务器端public class TcpServer { public static void main(String[] args) { NioSocketAcceptor acceptor = new NioSocketAcceptor(); try { acceptor.setHandler(n

2016-06-30 21:41:02 1765

原创 Java 快速排序

package com.struct.array;import java.util.Random;/** * @描述 快速排序 * @项目名称 Java_DataStruct * @包名 com.struct.array * @类名 QuickSort * @author chenlin * @date 2

2016-06-30 21:23:59 365

原创 Java 希尔排序

希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止代码:/** * @描述 希尔排序 * @项目名

2016-06-29 20:45:43 325

原创 Android 使用Socket实现服务器与手机客户端的长连接七:定义消息体,区分是响应还是回复信息

一、分析:1、示例图: 如上图可以知道服务器给客户端会发送两条信息,一个是回复,另一个是推送信息,如何区分这些信息呢?就必须定义消息体协议*2、消息体协议: 1)请求部分:{ "sequence": "9f4c696e-9ab5-46cf-959c-b1e2e35200d2", "type": "request", "action": "text"}2)响应部分:{

2016-06-28 22:50:32 984

原创 Android 使用Socket实现服务器与手机客户端的长连接七:定义消息体,区分是响应还是回复信息

一、分析:1、示例图: 如上图可以知道服务器给客户端会发送两条信息,一个是回复,另一个是推送信息,如何区分这些信息呢?就必须定义消息体协议*2、消息体协议: 1)请求部分:{ "sequence": "9f4c696e-9ab5-46cf-959c-b1e2e35200d2", "type": "request", "action": "text"}2)响应部分:{

2016-06-28 22:49:49 1141

原创 Android 使用Socket实现服务器与手机客户端的长连接六:二次封装

1、修改原来的连接器 1)在连接时发送信息给服务器 new Thread(new RequestWorker()).start();2)把验证码放入队列里public void auth(String auth) { putRequest(auth);}3)代码:public class Connector { //ip private String dstN

2016-06-28 22:37:15 11475

原创 Java数据结构之递归与三角函数的运用,使用3种方法实现三角

package com.struct.recusion;/** * @描述 递归与三角函数的运用 * @项目名称 Java_DataStruct * @包名 com.struct.recusion * @类名 Recusion * @author chenlin * @date 2010年6月28日 下午8

2016-06-28 20:32:02 1303

原创 Android onmeasure 与 onLayout示例

一、viewgroup垂直滚动布局的设置——————————————————– 1、 onmeasure过程@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec);

2016-06-28 08:16:09 621

原创 Android 使用Socket实现服务器与手机客户端的长连接五:使用队列封装请求

一、概述:1、把发送者发送的信息全部封装在blockqueue队列里,然后使用connManager把队列里的信息取出,分发出去 2、原理图: 二、实现:/** * @描述 使用socket实现长连接 * @项目名称 App_Chat * @包名 com.android.chat.utils * @类名 TcpUtil * @author chenlin * @date 2012年6

2016-06-27 22:54:35 3350

原创 Android 使用Socket实现服务器与手机客户端的长连接四:使用回调函数与Service调用

1、改写原来客户端连接封装类,添加监听/** * @描述 使用socket实现长连接 * @项目名称 App_Chat * @包名 com.android.chat.utils * @类名 TcpUtil * @author chenlin * @date 2012年6月26日 下午4:06:43 * @version 1.0 */public class ConnManager

2016-06-27 22:26:57 4173

原创 Java 数据结构之双向链表

一、概述:1、什么时双向链表: 链表中的每个节点即指向前面一个节点,也指向后面一个节点,就像丢手绢游戏一样,每个人都手拉手 2、从头部插入 要对链表进行判断,如果为空则设置尾节点为新添加的节点,如果不为空,还要设置头节点的一个前节点为新节点 3、从尾部进行插入 如果链表为空,则直接设置头节点为新添加的节点,否则设置尾节点的后一个节点为新添加的节点。同时设置新添加的节点的前一个节点为尾

2016-06-27 21:09:10 11723

原创 Android 使用Socket实现服务器与手机客户端的长连接三:clientA 发送给clientB,定点发送

一、分析:1、如图: 2、要想B知道A是谁,如何实现? 此时clientA可以发送一个认证给服务器,服务器接到了认证信息,发送A的信息给B 二、实现1、在客户端添加认证信息 1)创建布局文件<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=

2016-06-26 23:20:30 1354

原创 Android 使用socket 实现简单的客户端和服务器端互相通信

1、服务端:public class SocketServer { public static void main(String[] args) throws IOException { ServerSocket server = new ServerSocket(10000); final Socket socket = server.accept

2016-06-26 22:09:32 13206 2

原创 Android 使用Socket实现服务器与手机客户端的长连接二:多Client对一Server聊天

一、分析:1、修改原来的服务端,因为is.read(buffer)是阻塞式读取,所以必须把其抽取出来放置在新的子线程里。 不知大家还记不记得多线程下载的原理也是这样,开个主线程,其它的分段读取又都放在另外的子线程里去运行2、为了能把自己发送的信息转发给其它客户,必须使用LinkedList来添加所有的client,然后使用for循环把收到的信息转发3、如图: 二、只需要服务器端实现:packag

2016-06-26 22:07:11 4237

原创 Android 使用Socket实现服务器与手机客户端的长连接一:一对一聊天

1、创建服务器端可以是Web或Java项目,创建类TcpServer:/** * @描述 服务器端 * @项目名称 SocketServer * @包名 com.heima.socket.server * @类名 TCPServer * @author chenlin * @date 2012年6月26日 下午4:36:27 * @version 1.0 */@SuppressWar

2016-06-26 16:53:23 5033 4

原创 Android 网络工具类HttpManaer

package com.android.chat.lib;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.nio.charset.Charset;import java.util.ArrayList;import java.util.HashMap;imp

2016-06-26 15:34:07 593

原创 Java 数据结构之双端链表

一、概述:1、什么时双端链表: 链表中保持这对最后一个连点引用的链表2、从头部插入 要对链表进行判断,如果为空则设置尾节点为新添加的节点3、从尾部进行插入 如果链表为空,则直接设置头节点为新添加的节点,否则设置尾节点的后一个节点为新添加的节点4、从头部删除 判断节点是否有下个节点,如果没有则设置节点为null二、具体实现

2016-06-26 11:57:17 649

原创 Android 自定义图片选择框

1、效果图: 2、布局文件:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="320dp" android:layout_height="wrap_content

2016-06-25 22:24:46 1900

原创 Android 常用方法集合工具类CommonUtil

public class CommonUtil { /** * 判断当前网络是否连接 * * @param context * @return */ public static boolean isNetConnected(Context context) { ConnectivityManager connectiv

2016-06-25 22:13:09 1918

原创 Android 序列化工具类SerializableUtil

package com.android.chat.utils;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.

2016-06-25 22:08:19 895

原创 Android 使用Gson与AsyncHttpClient封装网络

一、概述:现从服务器传输Json格式数据,使用如下协议, 数据传输成功时: {‘flag’:true,’data’:{‘name’:’张三’,’age’:18,’sex’:true}} 输出传输失败时: {‘flag’:false,’errorCode’:404, ‘errorString’:’服务器没响应’}现在把这些数据使用Gson封装成通用的格式。二、实现步骤:1、创建HttpHelp

2016-06-25 16:59:02 685

原创 Andorid Gson解析示例:

1、创建实体类学生:public class Student { private String name; private int age; private boolean sex; public String getName() { return name; } public void setName(String name) {

2016-06-25 15:34:00 451

原创 Anroid IntentService解析

一、概述 IntentService是Service类的子类,用来处理异步请求。客户端可以通过startService(Intent)方法传递请求给IntentService。必须实现一个无参数构造函数 onHandleIntent()运行在子线程中 如果IntentService 被start了多次,onHandleIntent()方法将排队执行多次。

2016-06-25 15:15:51 314

原创 Anroid HTTP网络编程

网络接口文档用来描述客户端和服务端的数据交互Http的格式规范请求部分请求消息行:定义请求类型,请求的地址,http的版本号请求消息头:定义请求的消息头请求消息内容实体:消息的内容实体POST http://www.baidu.com/ur/submit/urreward HTTP/1.1Host: www.baidu.comConn

2016-06-25 15:13:33 457

原创 Anroid gson解析

GSONJSON 介绍Gson 下载Gson 解析 和 格式化Gson 格式化Gson 解析 Json 介绍Json 全称 JavaScript Object Natation ,用来描述数据结构,它是基于纯文本的数据格式,是一种轻量级的数据交换格式。广泛应用于 服务端 与 客户端 的数据交互。格式Json 以 k

2016-06-25 15:08:39 428

原创 Android 批量添加联系人

public class ContactTest extends AndroidTestCase { public void testRead() { ContentResolver resolver = getContext().getContentResolver(); Uri rawContactsUri = Uri.parse("content://co

2016-06-25 08:25:21 1409

原创 Android IntentUtil跳转工具类

/** * @描述 intent常用工具类 * @项目名称 AppClient * @包名 com.andorid.main.basic.aboutActivity * @类名 IntentUtils * @author chenlin * @date 2012年6月25日 上午8:08:55

2016-06-25 08:14:03 2369

原创 Android 开发中的接口文档

接口文档HTTP部分全局规范Login 登录接口Register 注册接口搜素用户接口接受用户用户邀请获取朋友列表修改用户名接口Socket自定义协议全局规范client 请求部分Auth认证发送邀请发送文本消息server 推送部分推送用户邀请推送接受用户邀请推送文本消息推送用户名变更Http部分全局

2016-06-24 22:36:29 9956 3

原创 Android Application的写法二

一、概述:在此application里封装了对activity与service的统一管理二、代码:package com.android.chat;import java.util.LinkedList;import java.util.List;import java.util.ListIterator;import android.accounts.Account;import andr

2016-06-24 21:40:48 523

原创 Android Parcelable的写法

/** * @描述 用户信息 * @项目名称 App_Chat * @包名 com.android.chat.bean * @类名 Account * @author chenlin * @date 2014年6月24日 下午9:34:02 */public class Account implemen

2016-06-24 21:36:38 627

原创 Java 用两种方法实现插入排序

一、概述:排序算法是最简单的算法,也是最基本的算法。顾名思义,插入排序就是把当前待排序的元素插入到一个已经排好序的列表里面。 一个非常形象的例子就是右手抓取一张扑克牌,并把它插入左手拿着的排好序的扑克里面。插入排序的最坏运行时间是O(n2), 所以并不是最优的排序算法。特点是简单,不需要额外的存储空间,在元素少的时候工作得好。二、示例图:三、代码实现/** * @描述 数组排序 * @项目名称

2016-06-24 21:10:18 2784

原创 Android FragmentTabHost实现底部tab切换

一、概述:1、实现如下图的底部Tab效果,点击tab颜色变化 2、示例图: 二、实现:1、创建布局<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="

2016-06-23 22:41:53 693

原创 Android项目之仿360手机助手项目

主页使用了actionbar + drawlayout 结构设计模式使用了 BaseAdapter + BaseHolder + Protocol + BaseFragment Protocol 读取网络数据 BaseHolder 处理数据 BaseAdapter 封装的适配器服务器数据请大家使用servlet写就OK了,这里不贴源码下载: 链接:http://pan.baidu.com

2016-06-23 21:32:09 2254

原创 Java 4种方法实现选择排序算法

说明: 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 如图: 代码:/** * @描述 数组排序 * @项目名称 Java_DataStruct * @包名 com.struct.array * @类名 ArraySort * @author chenlin * @date 2010年6月22日 下午8:28:4

2016-06-23 20:51:42 542

原创 Android FragmentStatePagerAdapter的写法

/** * * @描述 主页 * @项目名称 App_Shop * @包名 com.android.shop * @类名 MainActivity * @author chenlin * @date 2015年6月20日 下午9:36:50 */public class MainActivity extends BaseActivity implements OnQueryTex

2016-06-22 22:24:39 770

原创 Android控件(1)--ActionBarDrawerToggle、DrawerLayout、ActionBar 使用说明

一、说明:1、ActionBarDrawerToggle是一个开关,用于打开/关闭DrawerLayout抽屉2、ActionBarDrawerToggle 提供了一个方便的方式来配合DrawerLayout和ActionBar,以实现推荐的抽屉功能。 即点击ActionBar的home按钮,即可弹出DrawerLayout抽屉。在Activity中的两个回调函数中使用它: onConfi

2016-06-22 22:19:30 2717

原创 Android Application的写法一

一、概述:1、在清单文件里注册 android:allowBackup="true" android:name="BaseApplication"2、在application里可以如何获得 contextprivate static BaseApplication mApplication;public static Context getContext(){

2016-06-22 21:27:00 1973

原创 Java 4种方法实现冒泡排序算法

一、基本思路:冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,……第i趟需要比较n-i

2016-06-22 20:58:46 753

原创 Android 总结三

1、打开raw资源文件AssetFileDescriptor file = getResources().openRawResourceFd(R.raw.beep);2、打开assert里的文件InputStream inputStream = getAssets().open("tangyan.jpg");3、mediaPlayer的初始化// 设置声道流格式为音乐setVolumeContro

2016-06-22 08:20:52 281

原创 Android 自定义属性写法

TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.ColorTrackView); mText = ta.getString(R.styleable.ColorTrackView_text); mTextSize = ta.getDimensionPixelSize(

2016-06-22 08:16:59 398

Redis6.2.6安装文件与资料.zip

Redis6.2.6安装文件与资料.zip,资源包括安装包和安装说明书

2023-05-06

maven工程,可实现对多模块的打包

最近一直在弄 springboot项目,但是只能是 单个模块开发,一直想做成多模块开发,但是 使用maven打包,一直打包不成功,总是提示: 找不到主类 。下面总结一下 多module 打包,做一个maven工程,可实现对多模块的打包

2023-04-09

搭建k8s集群所需的文件 k8s.zip

搭建k8s集群所需的文件

2021-07-28

闪库内网穿透免费版,使用非常简单

闪库内网穿透免费版,如同花声壳一样,可搭建本地供外网访问的域名

2021-07-16

nacos-server1.41与seata-server1.30.zip

nacos-server1.41与seata-server1.30

2021-07-14

aqqdfadfa.zip

畅购商城所需要的starter-canal文件,解压后进入含有pom.xm文件,打开命令窗口,输入mvn install,编译完成后就可在项目中引入

2020-06-03

nexus-3.2.0-01-win64

注意:下载完,请添加java 里的jre内容到包目录下! 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。

2017-11-16

apache-tomcat-7.0.65

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳

2017-10-09

android 下拉视差特效

android 下拉视差特效 现在流型的APP如微信朋友圈,QQ空间,微博个人展示都有视差特效的影子。

2016-05-29

java servlet写的电子商城

java servlet写的电子商城,有登陆功能,记住密码,购物车,在线支付,销售订单,邮件发送,导出榜单, 分页 等功能

2015-09-23

android 击溃360手机卫士的三大防护

android 击溃360手机卫士的三大防护

2015-04-30

基于socket通讯的文件续传

基于android http socket通讯的文件续传

2015-04-30

Android-XMPP-openfire-实现IM

Android-XMPP-openfire-实现IM

2015-04-30

Android 仿QQ客户端及服务端源码

Android 仿QQ客户端及服务端源码

2015-04-30

aidl跨进程调用

看完此aidl跨进程调用,绝对的了解aidl的机制,非常好的资源

2015-04-30

ADT-22.6.2.zip

ADT-22.6.2.zip android sdk eclipse google

2014-11-20

空空如也

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

TA关注的人

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