自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 记一次系统架构的改造(如何在多个微服务项目中使用一套微信权限验证服务)

最近对公司的某在线项目进行了架构重组特记录一下,以后如有类似情况仍可进行参考。首先,公司现有springboot项目A,提供若干rest数据服务、前端页面展示、微信的jssdk权限验证服务、以及与前端页面通信的websocket服务。项目A提供了这么多服务也是有点汗颜,按理说应该继续拆分成更多的微服务,这就是一个产品没有好好设计想一点加一点导致的恶果。其次,公司最近想做另一个h5页面项目B,来提供...

2018-04-16 19:02:40 2777

原创 通过推送消息控制Android系统锁屏、唤醒

最近一年以来,博主一直在搞密室逃脱方面的东西。涉及到的技术很杂,不少也很冷门。前段时间有这样一个有意思的需求:要求服务器在达到一定要求时唤醒一台待机的投影仪自动进行播放,并且在不同的条件下播放不同的影片。博主考察了一下市场发现现在市面上有这样几种投影仪:普通投影仪,需要接一台电脑,在电脑上选择播放的影片,电脑显示什么投影仪做为显示设备就播放什么。这个想做自动化需要和播放

2016-01-19 11:06:39 5731

原创 【收藏】众多iOS开源资源库

标记收藏一下,好多开源的iOS资源库,学习参考的好东西。http://github.ibireme.com/github/list/ios/

2015-12-15 09:56:12 513

转载 mac os 下通过gradle 构建项目报Error:Cause: error in opening zip file问题 解决方法

转载来的:每次启动会弹出这样的错误:Error:Cause: error in opening zip file对于这个问题,只要在url:https://downloads.gradle.org/distributions/gradle-1.xx-all.zip 下载下来即可,解压之后拷贝到~/.gradle/wrapper/dists/gradle-1.xx-all/[ha

2014-12-10 11:10:19 5178

原创 学习https的总结

公司的游戏需要个弱联网服务器来保存用户的信息,游戏的成绩pai

2014-09-03 17:30:39 731

原创 eclipse robovm插件报错原因及解决方法

在eclipse上安装robovm插件

2014-04-28 13:51:13 1124

原创 libgdx 中粒子与背景图片颜色混合的问题。

在libgdx中使用粒子是很方便的,通过粒子编辑器编辑好粒子资源,用程序控制在游戏中播放就可以。在制作粒子效果时,我们经常用的粒子图片是半透明的。但这样的粒子做出来后在游戏中播放往往会有问题,就是粒子的颜色与背景的颜色混合,导致粒子本身颜色变浅。其实这个问题很好解决:ParticleEmitter pe = effect.getEmitters().get(0);pe.setAddi

2013-12-19 16:32:16 1508

原创 libgdx中关于Sprite透明度无效的一深坑

在libgdx初学者群里经常会见到有人问,为什么我设置了Sprite透明度没有效果?曾经我也落入此坑中久久未能爬出来.在此备忘一下.下面是一段绘制已设置好Sprite透明度的代码.batch.begin();batch.setColor(sprite.getColor().r,sprite.getColor().g,sprite.getColor().b,sprite.getColo

2013-10-26 14:51:09 1984

原创 关于libgdx中UI控件的旋转和缩放的备忘

最近遇到这样一个问题,定义了一个ImageButton后,想对按钮进行下旋转,结果setRotation(-90f),不起作用.后来在官网上找到了原因关于UI控件的旋转 缩放官网上有这样一段话(链接:http://code.google.com/p/libgdx/wiki/scene2dui):Flushing for each group would severely limit

2013-09-13 13:02:15 1602

原创 libgdx如何调用android平台内容

使用libgdx已经有一段时间了.最近经常有朋友问我如何在libgdx中调用android的内容.正常来说libgdx是跨平台的,gdx中的代码是不允许有任何其他平台的相关代码,但实际使用时经常会有调用其他平台内容的需求.其实这个也很简单,利用java中的事件机制很容易实现,下面贴出相关代码:1:BsuEvent是一个虚类,用来实现消息通知及响应消息后执行的一些操作.public ab

2013-09-01 17:35:56 1720

原创 (备忘)libgdx加载ttf出错的解决方案

尝试把ttf扩展命改成其他扩展名,比如png、jpg,再加载就没有问题了。

2013-06-06 08:21:19 867

原创 libgdx 与 android studio

2013年5月16日,android开发者大会上,google第一次公布了android studio。从此android开发者们有了官方的开发工具,不使用eclipse也可以很方便的开发android程序了。这次公布的android studio版本为0.1版,基于Intellij IDEA,万里长征刚起步,android studio还有很长的路要走。最近在研究libgdx,所以不免联

2013-05-26 14:43:00 2406

转载 程序员美工和真正的游戏美工是两个世界的人

这十年时间里,我一直都在为美工们开发视效工具还有游戏引擎,并且一直相信“程序员美工”和“真正的游戏美工”是两个世界的人。同时,我还注意到那些会对 “程序员美术”说OK的人往往只有其他程序员。不管你的游戏多有趣,或者你的Techdemo在技术上多牛X,那些不是程序员的人们看到你的东西时,往往会想“那到底是个喷射飞行器,还是背上的一个瘤?”  很多时候,我们有办法生成一些不错的图形而不用自己去

2013-05-21 11:45:46 1563

原创 libgdx的Image对象

今天下午在写libgdx程序时,被一个问题困扰了很长时间。我实现了一个Image对象,在一个场景的stage中add了,然后又把它拿到了另外一个场景,使用stage去add,结果发现第二个场景中的Image无论如何都显示不出来。开始以为是加载资源的地方处理问题,后来发现是因为同一个Image对象add到多个stage对象中,后面的stage就不会显示这个Image对象。不能把Image对象作为

2013-05-19 17:56:52 864

原创 libgdx为何去掉了Action类中的setCompletionListener

Action类在libgdx中是一个动作类,它可以让精灵实现很多动作,比如移动,旋转,缩放等等。通常我们希望在动作结束后能获得一个消息,这样以便于我们在动作结束后做一些其他的处理。按照java传统的思想,要想获得动作结束的消息,我们需要为Action对象增加一个监听器,这样在0.9.7版之前的libgdx中Action类是带有setCompletionListener这个函数的。但在0.9.7版之

2013-05-08 19:44:12 1692 6

原创 移植java web 项目到go语言要解决的一系列问题

最近想把一个java web 服务项目用go语言重写一遍,虽然go语言非常简洁易用,设计思想也非常好,但在移植过程中还是遇到了一系列的问题,先把问题列在这里,以后有时间逐个解决。web服务器:go语言自带,很好用mysql数据库驱动:github.com/go-mysql-driver实现了官方驱动接口,推荐使用数据库连接池:没有合适的,自己实现一个吧session操作库:gith

2013-05-04 18:00:29 1336

转载 mysql 中时间运算问题

mysql时间相减的问题(bug)今天看到宁青同学的一条微博,提到mysql日期相减的错误结果,以前没有怎么注意,于是测试了一下,发现确实很坑爹,很容易踩雷,于是整理博客提醒一下大家。先看一下错误的现象如下,第1条正确,第2,3条的t2-t1不正确:[sql] view plaincopyprint?mysql> select t1,t2,t2-t1 fro

2013-05-02 07:26:57 670

原创 (备忘)eclipse配置spket需要注意的地方

用eclipse开发jquery程序,可以安装spket插件,这样在写代码的时候,就会有智能感知.eclipse配置spket的文章网上到处都是,spket官网上也有介绍.但配置后有的人无论如何也没有智能感知提示,我就是其中一个.最后发现了问题所在,原来是eclipse选择javascript编辑器的问题 .我们在双击一个js文件时,eclipse使用的自带的默认javascript Edit

2013-04-06 08:17:06 935

原创 jquery实现excel导出

最近要实现在web页面上导出excel文件的功能.由于javascript本身是没有权限操作本地文件的,除非使用ActiveX,但这东西麻烦又不安全,完全不想用.所以从页面的表格中获得数据保存成本地文件的办法是行不通了.我们想要导出的是表格中的数据,表格中的数据又是从服务器来的,那我们把服务器上的数据下到本地保存成文件不就可以了.服务端实现代码:ServletOutputStream

2013-04-04 14:12:29 2798

原创 (备忘)tomcat处理url参数中文乱码问题

tomcat在处理url参数时,默认是以ISO-8859-1字符集处理的,网上有很多人提出用String str = new String(request.getParameter("name").getBytes("ISO8859-1"),"utf-8");方式处理.但这种方式很麻烦,用过滤器统一处理又更改不了request中的参数.难道要我每个servlet都去处理么?所以我极力不推荐

2013-04-03 12:48:09 986

原创 测试jdbc几种操作mysql数据方法的速度

写了几段测试程序,测试一下mysql的性能.简单说下环境,tomcat下使用连接池连接的mysql,测试方式以下3种:1:每次从连接池获得一个连接执行一个固定的insert语句2000次:insert into test (testcol,testcol1,testcol2,testcol3,testcol4,testcol5,testcol6,testcol7)values('aaa

2013-03-24 12:11:23 969

原创 让IIS Express支持json

准备小研究一下easyui库,因为以前用过WebMatrix写网站,觉得很好用,于是又搬出了它.但在调试一个功能时需要加载一个json文件.iis居然不支持json格式文件....在网上查了半天,知道了需要修改IIS Express中的一个配置文件applicationhost.config.需要在这个配置文件的<handlers accessPolicy="Read, Script">接点中

2013-03-19 23:24:24 2073 1

原创 cocos2d-x系列笔记(10)---增加目标指示

现在我们的小精灵已经可以很好的响应触摸操作.为了画面有更好的交互性,我们决定在小精灵移动的终点增加一个跳动的小箭头以指示小精灵的目的地.我们要实现的功能逻辑如下:首先我们要实现一个播放箭头动画的类,其中包括两个很重要的函数arrow_Play用于播放箭头动画.arrow_Stop用于终止箭头动画#pragma once#include "cocos2d.h"class Arr

2013-03-19 11:15:49 986

原创 curl获得cookie数据

研究了一下curl操作cookie的方法,有个需要注意的地方:void BsuHttp::httpGet(const char *url,size_t(*func)(uint8_t *buffer,size_t size,size_t nmemb,void *stream)){ CURL *curl; CURLcode res; char buffer[10]; curl = c

2013-03-18 19:05:28 5807 1

原创 cocos2d-x系列笔记(9.2)---浅谈cocos2d-x使用函数指针实现委托(下)

上一讲我们通过c#的代码理解了委托,这一讲我们就来说说在cocos2d-x中如何实现委托cocos2d-x使用的是c/c++语言,c++中并没有委托的概念,但c++中有函数指针.利用函数指针我们就可以实现委托的机制上代码:.h文件:#include "cocos2d.h"#include "B.h"using namespace cocos2d;//函数指针,定义了加法操作

2013-03-14 14:57:28 1177

原创 cocos2d-x系列笔记(9.1)---浅谈cocos2d-x使用函数指针实现委托(上)---通过c#代码理解委托

关于委托,我是这样理解的:A接受到一个请求,要对某些事物进行处理,但A目前不知道该怎样处理这个事物,就把处理该事物的工作交给B以后去做.A会给B定义出一个函数的模板,指示B该去实现一个什么样的函数去处理这件事物.事物的处理由B全权负责,而A只负责适时通知B什么时候该处理此事物.有点拗口,我们来看个c#的例子:using System;using System.Collections.

2013-03-14 13:26:37 1378

原创 cocos2d-x系列笔记(8)---在cocos2d-x项目中使用curl与web服务器通信

今天研究了一下如何利用curl同web服务器通信.cocs2d-x中已经集成了curl,所以我们只要引入curl的头文件与静态库文件既可.增加头文件:在项目上右键属性->配置属性->C/C++->常规->附加包含目录->增加$(COCOS2D-XSDK)cocos2dx\platform\third_party\win32\curl目录.$(COCOS2D-XSDK)是在以前的文章

2013-03-12 21:41:12 1825

原创 cocos2d-x系列笔记(7)---碰撞检测

游戏中地图上总有些过不去的沟沟坎坎\山河湖泊.这节我们就来讲讲在coco2dx下如何实现碰撞检测首先我们基于的tmx地图,所以就要先在地图上做些手脚.除了建立的基本地形层,我们在编辑器中又建立了一个碰撞层并在湖面上放置了一些表示不能通过的碰撞障碍在表示障碍的图块上右键->图块属性为该图块中增加一个Collidable属性,值设置为true.这项属性值等下我会在程序中

2013-03-10 12:28:43 2155

原创 cocos2d-x系列笔记(6)---加载一张地图

上一篇我们讲述了如何点击屏幕,并让精灵向点击的目标点移动.这一次,我们来讲讲,如何在游戏中加载一张地图.首先我们来认识一款非常流行的地图编辑器Tiled窗口左侧是主编辑区,右侧上方可以对地图上的图层,对象管理,还可以浏览迷你地图,右侧下方可以加载纹理资源,并按照设定尺寸切割成图块.首先我们点击新地图按钮创建一张新地图.点击新地图后会弹出对话框来设定地图的一些参数这里我们设地图的方向

2013-03-10 10:37:24 1301

原创 cocos2d-x系列笔记(5)---小精灵,走你!

上一篇我们讲了如何利用纹理资源生成了精灵的动画.这一篇我们讲一讲如何点击屏幕设置目的地,让小精灵走向目的地.首先我们要在场景类中覆盖这几个函数void Scene1::onEnter(){ CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this,0,false); CCLayer::

2013-03-07 20:10:08 1951

原创 cocos2d-x系列笔记(4.1)---对<会动的小精灵>博文的补充

在cocos2d-x系列笔记(4)---会动的小精灵一文中,我们介绍了如何用程序裁切图片,创建一个会动的精灵.但这样的做法在实际开发中会比较难用.所以我在这里对上一篇文章进行一个补充,讲述一下实际工作中比较实用的规划纹理资源和创建精灵的方法.TexturePacker这个软件不少人都在用,它可以把若干图片合并成一副图,并生成一个plist文件,用来描述生成的图片中每一帧图片的信息.cocos2

2013-03-06 14:38:12 1130 1

原创 (备忘)Eclipse下配置tomcat连接池连接mysql数据库

过段时间可能会用到,今天稍微研究了一下,留在这里备忘.Eclipse用了Eclipse Java EE IDE for Web Developers.版本.http://www.eclipse.org/downloads/这里可以下到Tomcat用了7.0版本,在Eclipse中下载的.创建Dynamic Web Project项目时就会看到要求你下载Tomcat的提示mysql使用了

2013-03-05 20:14:10 1828

原创 cocos2d-x系列笔记(4)---会动的小精灵

这一篇我们准备在第3篇中创建的场景中增加一个带有动画效果的精灵.创建精灵我们本着以下思路来写代码,首先要创建一个纹理对象CCTexture,这个纹理对象中包含了精灵动画的每一帧图片.创建一个CCSpriteFrame(精灵帧)的数组将从纹理上切割下来的每帧图象保存到数组中.使用CCSpriteFrame数组创建一个CCAnimation对象.利用CCAnimation对象创建一个CCA

2013-03-04 16:18:44 1044

原创 cocos2d-x系列笔记(3)---场景

场景(Scene)与层(Layer)在cocos2d-x中是两个抽象的概念.他们不会在画面上显示任何可视化的东西,却可以帮助我们更好的管理游戏对象.一个游戏场景中CCScene往往是第一个节点,而CCScene的第一层子结点一定是CCLayer的子类.通常CCScene不保存游戏里的任何对象,而是由它的子节点去保存.这样场景中不包含任何游戏的代码,所以我们可以看到cocos2d-x的示例代码中,并

2013-03-04 07:51:43 1201

原创 cocos2d-x系列笔记技巧篇(2)---关于CREATE_FUNC宏的用法

阅读cocos2d-x demo的代码,我们会看到有些头文件中使用CREATE_FUNC这个宏,那么它是做什么的呢?在cocos2d-x 又是起什么作用呢?下面我们就一起来看看CREATE_FUNC宏的源代码:/** * define a create function for a specific type, such as CCLayer * @__TYPE__ class typ

2013-03-03 22:25:05 9368

原创 cocos2d-x系列笔记技巧篇(1)---关于do{}while(0)和CC_BREAK_IF的用法

看过cocos2d-x 自带demo的朋友相信很多人都会发现demo中用了很多do{}while(0)和CC_BREAK_IF宏.他们是做什么用的呢?其实这个是c++中的一个技巧.我们时常会调用某个函数来创建一个对象,但由于内存不足或其他异常情况发生时对象可能会创建失败,创建失败我们就要结束当前程序转到错误处理地方去处理错误或释放已生成的对象.  int* p1 = new int

2013-03-03 22:11:24 2529

原创 cocos2d-x系列笔记(2)---文字标签,按钮,精灵

开发一个游戏,在画面上绘制文字,按钮,精灵这些是最基础的工作了.这一篇我们就来讲讲如何在cocos2d-x中绘制带文字的标签,按钮及精灵.带文字的标签://绘制一段文字void HelloWorld::drawText(const char *ps){ CCLabelTTF* label = CCLabelTTF::create(ps,"Arial",24); CCSiz

2013-03-03 16:05:06 1402

原创 cocos2d-x系列笔记(1)---安装篇

终于有了空闲时间专心研究下cocos2d-x了.虽然进入这个领域晚了些,但也不算末班车.从今天起我会在这里写下一系列的cocos2d-x教程,权当自己的学习笔记,也欢迎朋友们来相互交流.闲话少说,今天就从cocos2d-x的安装说起.操作系统:windows7(以后我会增加macos下安装的教程)IDE:vs2010cocos2d-x版本:cocos2d-2.0-x-2.0

2013-03-02 11:18:27 1307

原创 (备忘)关于Flex4中DataGrid单元格变色处理

最近在用flex做一个大屏幕的数据展示,但在实现DataGrid的单元格变色上卡住了.经过一番研究,最后搞定,示例代码如下:  <![CDATA[ import kernel.Utils; override public function set data(value:Object

2013-02-28 09:07:31 1218

原创 不安装IronPython在C#中执行python脚本

你利用过IronPython与c#交互,在c#中执行python脚本么?是不是需要安装IronPython才能正常执行python脚本?给客户安装程序时除了安装.net framework还要安装IronPython,是不是觉得很麻烦? 上面这一切都弱爆了,下面我来介绍一种不安装IronPython只需要引入几个IronPython的dll就可以在c#中执行python脚本的方法.

2013-01-21 16:32:34 3633 1

空空如也

空空如也

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

TA关注的人

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