自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

MVEL 简单介绍

MVEL是一种基于java语法的表达式语言,为java提供更便捷灵活的动态性。这里简单介绍一些MVEL的操作:new 创建一个java对象,new String("foo"),当然这里是举个栗子,String的创建一般是不同这个构造函数的。对于java.lang.*中的类,无需手动导入。如果是创建自定义的对象,就需要写明类全路径名,或者手动导入。当需要针对同一个对象进行...

2013-12-18 15:05:04 1267

Netty 4 源码分析——EventExecutor

先从EventExecutor开始,因为它是一个很基础的工具类,是对I/O线程的包装。先了解下它的源码会对后面的分析有更好的理解。[img]http://dl2.iteye.com/upload/attachment/0090/5739/ad7cd980-f64f-330b-9d58-96adadc8d7f9.png[/img]先看下EventExecutor的类关系图,这里只是简...

2013-10-26 12:15:02 484

Netty 4 源码分析——结构概览

看了两天的netty源码,现在总算有了些眉目了。下面是用excel画的一个简单的结构图[img]http://dl2.iteye.com/upload/attachment/0090/5537/2cf5280f-fbca-3b04-81a1-1dcc3235bbbb.jpg[/img][list][*]Channel是对最终I/O处理的封装[*]EventExecutor 封装...

2013-10-25 15:37:31 200

原创 Mina源码分析——IoService

这两天看了下Mina和Netty的源码,想比较来说Mina的结构简洁易懂。Mina和Netty出自同一人,而Netty是作者对Mina的重构版,改进了很多。如果学习网络编程的话,个人建议从Mina开始,学完Mina后再看Netty,学习曲线会变得很平滑;同时还能深刻理解到作者改进点。 先看下Mina的结构图,如果之前做过java的web开发,熟悉servlet规范,看到这个结构图...

2013-10-18 17:53:25 252

原创 Java NIO

众所周知Mina是一个基于java NIO的网络框架,那么在了解Mina之前,需要先了解下java NIO。jdk1.4中引入了NIO的相关api,主要是针对解决一些高并发高吞吐的IO。API的类图如下(网上找的)[img]http://dl2.iteye.com/upload/attachment/0090/1957/dcdda091-ce82-3d2b-b42c-1d07ab8d81ef....

2013-10-15 14:48:46 106

Java 网络编程

这里介绍下使用java的socket编程,搭建一个server与client的通信框架。先看一段代码:Server端[code="java"]import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socket;publi...

2013-08-29 21:38:10 85

java 中的volatile关键字

volatile 是java中用来解决多线程的共享访问问题的,不过它解决的是变量级别的。不同于syncronized解决的是方法和代码块级别的。在java的多线程的内存模型中存在main memory和work memory。main memory是所有线程共享的,而work memory是指各个线程自己的。对于共享变量的访问,线程是先从main memory中copy一份到work me...

2013-08-27 15:57:42 99

原创 解决Maven插件未同步empty folder 至 Ouput folder中

使用eclipse的m2e插件创建了一个工程,在src/main/resources下添加了一个空目录 test发现m2e插件在build project的时候,并未将test 同步到原来设置的output folder下。可以通过在project的pom.xml文件中配置插件的属性解决[code="xml"] org.apache.maven.plugins maven-re...

2013-08-20 16:46:36 144

Ant使用xmltask替换AndroidManifest.xml文件中的配置

新的游戏项目上线后,接了很过国内的推广渠道的SDK,其中一个很繁琐的问题就是打包,每次升级版本都要打几十个包;如果人肉操作的话非常费劲,而且很容易出错。正好Android的SDK中也提供了ant来脚本化打包操作。所以就针对公司里游戏项目的结构对ant打包脚本,添加了些功能。将游戏中的所有可配置的内容全部整理build.properties文件中,比如说游戏中的日志开关,正式环境和测试环境的测试...

2013-08-19 10:48:54 261

"Updating Maven Project". Unsupported IClasspathEntry kind=4

上午导入了下游戏服务器端的代码,是使用java开发的,通过maven对多个工程模块进行管理eclipse安装了1.4版本的m2e后,在工程目录下执行mvn eclipse:eclipse后,导入eclipse 中。通过m2e插件update project时提示了如下的错误"Updating Maven Project". Unsupported IClasspathEntry kind=...

2013-08-14 14:17:25 95

原创 SyntaxError: Non-ASCII character '\xe5' in file

eclipse中安装好pydev,最近安装的时候总是提示不成功。提示错误连接超时 Read time out。后来爬出去后再安装,ok了配置好pydev后,新建一个module,print 'hello world',结果却提示SyntaxError: Non-ASCII character '\xe5' in file查看了错误信息中的链接,发现原来python解释器在读取到文件...

2013-07-06 09:50:53 133

ADB server didn't ACK

用数据线连接android手机到pc,却在eclipse中Device view中未发现设备信息。提示错误信息如下:adb server is out of date. killing... ADB server didn't ACK * failed to start daemon *确认手机上的usb调试已打开,adb kill-server,adb start-serve...

2013-06-27 15:02:04 102

解决ADT插件升级22.0.1版本后的问题

昨天升级了android的开发的eclipse插件adt,升级到22.0.1。发现原来的工程导出apk后安装都出现了java.lang.NoClassDefFoundError。所有有依赖其他library工程的都出现编译错误,提示library工程中的类无法找到。几经摸索,终于解决。ADT 22.0.1 升级后在 project property 中的order and expo...

2013-06-27 09:12:11 196

Android链式方法显示Dialog

发现Android中的AlertDialog原来可以使用方法链式来创建和显示[code="java"] new AlertDialog.Builder(this).setTitle("提示").setMessage("提示消息") .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Ov...

2013-06-26 17:24:42 140

解决Android帧动画在Oncreate中启动只显示第一帧

做了个简单的帧动画,在onCreate方法中start,发现只能看到第一帧[code="xml"] [/code][code="xml"] [/code][code="java"] ImageView fireImg = null...

2013-06-26 17:18:05 160

Android 自定义权限 (<permission> <uses-permission>)

在android系统的安全模型中,应用程序在默认的情况下不可以执行任何对其他应用程序,系统或者用户带来负面影响的操作。如果应用需要执行某些操作,就需要声明使用这个操作对应的权限。 (在manifest文件中 添加标记) android 系统提供了一系列这样的权限,具体可以查看[url="http://developer.android.com/reference/android/...

2013-02-01 17:23:17 249

Android 系统启动时自启动一个app

Android中也可很方便的实现类似windows中的开机启动。方法很简单,就是注册一个BroadcastReceiver 去接收 actoin 为 android.intent.action.BOOT_COMPLETED 的消息,然后即可启动Activity了。首先在menifest 文件中添加权限声明,因为接收BOOT_COMPLETED消息需要RECEIVE_BOOT_COMPL...

2013-02-01 16:07:06 637

Android中获取设备的IP

在wifi环境下,可以通过WifiInfo来获取设备的ip[code="java"] public String getIpAddress() { WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectio...

2013-01-28 16:47:50 141

编写App的开场Activity

在android的app和游戏的应用中,都会有个开场场景,老外管这个叫splash。现在就编写个简单的SplashActivity[code="java"]import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.widget.Image...

2013-01-28 16:03:37 120

Eclipse通过wtp插件启动tomcat出现OutOfMemoryError

在eclipse中通过wtp插件启动tomcat,tomcat中部署了很多个应用,启动是出现了OutOfMemoryError 异常[code="java"]java.lang.OutOfMemoryError: PermGen space java.lang.ClassLoader.defineClass1(Native Method) java.lang.Class...

2013-01-16 14:49:06 103

扩展ImageView使可旋转

继承ImageView,增加angle属性,重写OnMeasure和OnDraw方法[code="java"]package com.upon.common.view;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;im...

2013-01-13 15:19:04 133

原创 VS2010 快捷键

Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL + SHIFT + O打开项目 CTRL + SHIFT + C显示类视图窗口 F4 显示属性窗口 SHIFT + F4显示项目属性窗口 CTRL + SHIFT ...

2012-08-25 17:39:10 59

amazon RSD 查看slow_log

amazon RSD 并未提供SSH直接访问db server。不过提供了Amazon RDS Command Line Toolkit,但是调整mysql的一些系统参数不是那么方便了。这里主要记录下查看slow_log的操作。1、下载Amazon RDS Command Line Toolkit[url]http://aws.amazon.com/developertools/292...

2012-06-30 17:38:55 202

原创 Google Play是如何屏蔽添加了Checkout的应用在一些地区不能下载的

因为google checkout 只支持一些地区使用,不幸的是中国大陆不在支持之列。所以加了checkout 的应用或游戏在google play的网页上会提示与你的设备不兼容。对于google play这个是如何来做的比较疑惑,做了下测试1、仅仅在AnroidManifest.xml文件中添加了权限限制发布了app后发现还是能够下载的。猜测:检测apk包...

2012-06-02 20:05:11 308

原创 HttpURLConnection设置代理服务器

1、设置系统数据[code]java -Dhttp.proxyHost=proxy.com -Dhttp.proxyPort=80 MyJavaApp[/code]或者[code]System.setProperty("http.proxyHost", "proxy.com");System.setProperty("http.proxyPort", "80");...

2012-06-02 20:01:57 991

原创 eclipse ADT插件安装碰到的错误

下午换了台机器,重新给eclipse装上ADT插件,过程中碰到几个错误记录下。1、help -> Install New Software 输入地址https://dl-ssl.google.com/android/eclipse/,发现根本无法安装 无奈从官方下载zip插件安装。具体安装步骤查看下面链接 [url]http://developer.android....

2012-04-10 15:21:51 166

原创 修改Linux文件句柄数限制

因为linux系统里都是以文件来表示的,所以在做搞并发的web系统时,修改文件句柄限制那是必须的。 查看某个进程使用了的文件句柄数# sudo ps -ef | grep javaroot 1663 1 0 02:37 ? 00:00:43 /opt/bitnami/java/bin/java从结果中可得知进程的pid,然后根据pid查看该进程...

2012-03-30 15:59:16 469

原创 linux系统locale设定

locale 是国际化与本土化过程中的一个非常重要的概念,个人认为,对于中文用户来说,通常会涉及到的国际化或者本土化,大致包含三个方面:看中文,写中文,与 window中文系统的兼容和通信。从实际经验上看来,locale的设定与看中文关系不大,但是与写中文,及window分区的挂载方式有很密切的关系。本人认为就像一个纯英文的Windows能够浏览中文,日文或者意大利文网页一样,你不需要设定loca...

2011-12-19 14:16:57 104

原创 ubuntu中添加中文字符集

在 /etc/environment中看到:$sudo gedit /etc/environmentLANG="zh_CN.UTF-8"LANGUAGE="zh_CN:zh:en_US:en"添加中文字符编码的方法1. 直接使用locale-gen命令:$ sudo locale-gen zh_CN.GB18030$ cd /usr/lib/locale/目...

2011-12-19 14:13:09 979

原创 [转]Game Engine Architecture: URL List

1.4.1. First-Person Shooters (FPS)http://en.wikipedia.org/wiki/First-person_shooter1.4.2. Platformers and Other Third-Person Gameshttp://en.wikipedia.org/wiki/Platformer1.4.3. Fighting Gam...

2011-10-20 20:52:16 789

maven依赖本地非repository中的jar包

今天在使用maven编译打包一个web应用的时候,碰到一个问题:项目在开发是引入了依赖jar包,放在了WEB-INF/lib目录下,并通过buildpath中将web libariary导入。在eclipse中开发没有问题,但是使用maven编译插件开始便宜总是报找不到WEB-INF/lib这个jar包中的类。显然实在编译的时候WEB-INF/lib并没有配置到maven-compli...

2011-09-29 17:09:07 520

groovy 操作http请求

话不多说,先上一段代码,如果你使用过jquery,看到这样的代码是不是很亲切呢?[code="java"]def http = new HTTPBuilder('http://www.baidu.com')http.request(GET,TEXT) { //设置url相关信息 uri.path='/' uri.query=[a:'1',b:2] //设置请求头信息...

2011-09-29 12:11:21 3017

groovy 操作json

在groovy1.8中内置了对json格式数据的至此;使对json的操作变得非常简捷方便了[code="java"]def builder = new JsonBuilder()//如同构建对象般builder.pepole{ person { firstName 'leng' lastName 'feng' //传入map address(...

2011-09-28 17:07:20 1447

groovy 操作xml

[code="xml"] Java Groovy JavaScript[/code][code="java"]//XmlParser使用Gpath,返回Node,NodeList,以及属性对应的Map//所以你在访问xml文件中的属性时,也就如同访问list和map中的属性def langs = new XmlParser().parseText(...

2011-09-28 15:52:55 295

Groovy的文件操作

groovy 文件操作,对java原有的io进行了扩展,增加了许多闭包后省去了很多逻辑无关代码,同时自动进行资源管理和异常处理。读取文件内容:使用java代码的基本写法:[code="java"]FileInputStream fin = null;try { fin = new FileInputStream("test.txt"); BufferedReader...

2011-09-26 22:28:13 858

原创 mysql 学习

表级锁开销小,加锁快,不会出现死锁。锁冲突概率高,并发度低行级锁 开销大,加锁慢;会出现死锁,锁冲突概率低,并发度高。页级锁开销和加锁时间介于上面两种之间。会出现死锁。myisam 只支持表级锁。show status like 'table%';mysql> show status like 'table%';+----------------...

2011-08-07 22:20:03 79

原创 mysql 学习

整理了下mysql在优化方面相关的命令:show session| global status like 'Com_%' 默认是查看session级别的状态参数表示某个语句执行的次数,包含所有的存储引擎的操作记录Com_select Com_updateCom_insertCom_delete下面这些参数仅显示Innodb的操作记录Innodb_rows_...

2011-08-07 19:22:53 117

原创 如何避免android上的进程的内存限制

The Android framework enforces a per-process 24 MB memory limit. On some older devices, such as the G1, the limit is even lower at 16 MB.What’s more, the memory used by Bitmaps is included in the ...

2011-07-11 11:54:50 196

原创 【转】无线加密的方案

电波传输数据,原则上无线网络会比有线网络更容易收到入侵,只需要在此无线网络的范围之内,就可以通过电脑进入你的无线网络。 这让很多用户听起来都觉得很可怕,甚至都不打算使用无线网络。其实,无线网络在不断的发展过程中,无线网络加密技术也在不断的完善,到现在无线路由都有着 多种密码加密技术,这让我们在架设使用无线网络的时候,用户的网络和数据安全都得到了很大的保障。今天,就让我们一起来了解一下目前...

2011-07-08 11:40:52 89

原创 对称式多处理器

对称式多处理器(SMP):Symmetric Multi-Processor的缩写。是指在一个计算机上汇集了一组处理器(多CPU)。各CPU之间共享内存子系统以及总线结构。虽然同时使用多个CPU,但是从管理的角度来看,它们的表现就像一台单机一样。系统将任务队列对称地分布于多个CPU之上,从而极大地提高了整个系统的数据处理能力。随着用户应用水平的提高,只使用单个的处理器确实已经很难满足实际应用的...

2011-07-06 11:46:18 159

空空如也

空空如也

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

TA关注的人

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