wasw100's Blog
2012/02/23

Google AD

2010年03月24日

QQ订阅我的博客(QQ订阅博客认领)

QQ邮箱订阅本博客:
用QQ邮箱阅读空间订阅我的博客。

上面代码如下:

<a href="http://mail.qq.com/cgi-bin/feed?u=http://feeds2.feedburner.com/wasw100" target="_blank">
<img src="http://res.mail.qq.com/zh_CN/htmledition/images/rss/icon_sub02.gif" alt="用QQ邮箱阅读空间订阅我的博客。" border="0" />

认领博客 wasw100的网络日志

认领代码:

QQREADER54882C48BC6C6C55

欢迎大家订阅我的博客

2010年03月20日

MyEclipse右击Run As出现Eclipse Application解决

自己写的一个程序运行的时候,右击,鼠标放到Run As后,右侧出现Eclipse Application,总是点错,打开一个新的Eclipse,如图

--Run As
	--Eclipse Application 	Alt+Shift+X, E
	--Java Application 		Alt+Shift+X, J
	--OSGi Framework		Alt+Shift+X, O
	-------------------------------------------
	--Open Run Dialog...

以下是解决方案:

打开你工程所在的位置,使用文本工具(记事本、UltraEdit、EditPlus等)打开.project文件改为如下就可以了

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>rrdogpro</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>

也就是把多余的<buildCommand>和<natures>删除,只剩下上面那两个,重启MyEclipse,再右击Run As,Eclipse Application,OSGi Framework就不见踪影了。

–EOF–

2010年03月19日

Eclipse使用link方式安装svn插件

svn插件下载页面:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240

最新版本地址:http://subclipse.tigris.org/files/documents/906/47423/site-1.6.10.zip

下载后解压到一个文件夹(我的:D:\tools\eclipseplugin\svn\),在svn下如下文件目录

--svn
	--eclipse
		--features
		--plugins

然后在MyEclipse—>eclipse->links文件夹下建一个以link为扩展名的文件(org.tigris.subversion.link),内容如下:

path=D:\\tools\\eclipseplugin\\svn

删除D:\tools\MyEclipse 6.0\eclipse\configuration下的org.eclipse.update文件夹,重启MyEclipse。

–EOF–

2010年03月18日

MyEclipse恢复误删文件

方法:
在要恢复的工程上右击->Restore from Locle History…
选中要恢复的,点Resotre就可以了

这个功能不紧能够恢复误删文件,而且还能查看以前的某个时间点文章的内容。方法:选中你查看的文件,右侧就会出现一些时间,选中后在下面就能看到这个时间时文件的内容了,但只能查看7天内(为验证)。

–EOF–

2010年03月16日

java中Queue和BlockingQueue的区别

内容主要来自jdk的api,大家可参考jdkapi
1.BlockingQueue:支持两个附加操作的 Queue,这两个操作是:检索元素时等待队列变为非空,以及存储元素时等待空间变得可用。
2.BlockingQueue 不接受 null 元素。
3.BlockingQueue 可以是限定容量的。
4.BlockingQueue 实现是线程安全的。Queue不是线程安全的。因此可以将Blockingqueue用于用于生产者-使用者队列。

根据Api修改的一个例子,大家可以修改自己体验BlockingQueue的使用

package test;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;

/**
 * 生产者
 * @author wasw100
 */
class Producer implements Runnable {
	private final BlockingQueue queue;

	Producer(BlockingQueue q) {
		queue = q;
	}

	public void run() {
		try {
			for (int i = 0; i < 3; i++) {
				queue.put(produce());
				System.out.println("生产后:"+queue.peek());
			}
		} catch (InterruptedException ex) {
			ex.printStackTrace();
		}
	}

	Character produce() {
		char c = (char) (Math.random() * 26 + 'A');
		System.out.println("生产前:" + c);
		return c;
	}
}

/**
 * 消费者
 * @author wasw100
 */
class Consumer implements Runnable {
	private final BlockingQueue queue;

	Consumer(BlockingQueue q) {
		queue = q;
	}

	public void run() {
		try {
			while (true) {
				consume(queue.take());
				//Thread.sleep(100);
			}
		} catch (InterruptedException ex) {
			ex.printStackTrace();
		}
	}

	void consume(Character c) {
		System.out.println("消费:" + c);
	}
}

/**
 * 一个生产者、两个消费者
 *
 * @author wasw100
 */
class Setup {
	public static void main(String[] args) {
		BlockingQueue q = new ArrayBlockingQueue(1);
		Producer p = new Producer(q);
		Consumer c1 = new Consumer(q);
		Consumer c2 = new Consumer(q);
		new Thread(p).start();
		new Thread(c1).start();
		new Thread(c2).start();
	}
}

–EOF–

2010年03月15日

修改eclipse(MyEclipse)自动生成的author


打开eclipse如下操作:
window->Preferences…->Java->Code Style->Code Templates

在右侧依次选择:Comments->Type,点Edit

/**
 * @author ${user}
 *
 * ${tags}
 */

中的${user}改为你要改的名字就可以了。
例如

/**
 * @author wasw100
 *
 * ${tags}
 */

–EOF–

2010年03月13日

人人网积分攻略

获得高的积分,在积分排行榜上就会靠前,自己同学和朋友访问的可能性就增加不少,而且排行靠前的感觉也是很爽的。

1.每天记得改一次状态(这个不难吧,可以只换个表情),给同学留言一次,再就是上传一张图片

2.回复与被回复,很累,可以不做,最重要的第三条

3.连续登陆,坚持,然后每天人人桌面(2倍),手机页面(http://3g.renren.com),手机客户端。假如你已经连续30天以上了,光登陆每天就可以获取40积分。所以每天用各种登陆方式登陆一遍人人网是必须的。

–EOF–

2010年03月11日

flex国际化实例

作者:wasw100
网址:http://www.wasw100.com/flex/flex_internationalization_example.html

测试环境:MyElipse(带Flex Builder3的插件)
可以根据 http://www.javaeye.com/wiki/flex/1804-flex-internationalization 进行设置,下面就是更据这篇文章的补充

另外可参考:http://badqiu.javaeye.com/blog/591493

1.一定要在sdks的bin下执行 copylocale en_US zh_CN 命令,否则编译flex时报错

2.这里稍微进行补充一下,文件目录可以和下面一样,也可以与flex_src平行,像参考文章中那样:

    flex_src
        --locale
            --zh_CN
                   message.properties
            --en_US
                   message.properties

3.既可以在Eclipse开发环境中的Flex Compiler/Additional compiler arguments选项增加如下参数

-locale zh_CN -locale en_US -source-path=locale/{locale}

也可以这样配置:Flex Build Path/Source path选项卡下,Add Folder…,内容为:

flex_src/locale/{locale}

注意和上面的区别(多了一个flex_src)

具体可结合文章开头那两篇文章看,两种国际化方式也可看下面实例及注释

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
    <mx:Script>
    <![CDATA[
    import mx.resources.ResourceManager;
    import mx.controls.Alert;

    private var _currentLanguage:String = "zh_CN";

    public function changeLocale():void{
    	_currentLanguage = _currentLanguage == "zh_CN" ? "en_US" : "zh_CN";
    	resourceManager.localeChain = [_currentLanguage];
	}
    ]]>
    </mx:Script>
    <mx:Metadata>
    [ResourceBundle("message")]
    </mx:Metadata>
    <!-- resourceManager.getString国际化,需要上面的mx:Metadata标签 -->
    <mx:ApplicationControlBar width="600">
        <mx:Label text="{resourceManager.getString('message','file')}" width="50"/>
        <mx:Text  text="{resourceManager.getString('message','edit')}" width="50"/>
        <mx:Button label="{resourceManager.getString('message','change')}" click="changeLocale()"  width="70"/>
    </mx:ApplicationControlBar>
    <!-- 使用@Resource标签国际化 -->
    <mx:Label text="@Resource(key='file', bundle='message')"/>
</mx:Application>

–EOF–

2010年03月7日

人人狗狗骨头赠送活动

自己网站刚刚简历,急需流量,故举办一次留言送骨头活动

活动时间:2010年3月31日24点之前

骨头赠送时间:2010年3月31日24点之前

活动规则:
请在这篇文章下留言,留言规则为留下自己的校内地址(个人主页的地址),例如我的地址:

http://www.renren.com/profile.do?id=200778561

只要符合留言规则的前十名留言者均会得到100跟骨头,重复留言不计。

活动QQ:316893493,留言后可提醒这个QQ送骨头

2010年03月5日

cPanel中备份wordpress数据库,并与本地同步

假设你本地跑着一个wordpress,你在本地调试你的程序、格式,然后上传到服务器,为了是环境尽量一致,我们需要需要把远程数据库同步到本地(有时更可能为了数据的安全)。本地环境的搭建可以参考:
1.绿色版MySQL的安装和使用
2.xp下apache+php的环境的安装

备份数据库
1.进入cPanel管理面板,点 数据库 的 phpMy管理(phpMyAdmin),进入phpMyAdmin管理界面

2.在 phpMyAdmin管理界面 的左侧,选中你要备份的数据库,在右侧显示此数据库下面的所有表,然后全选。点上面的 导出 按钮,在新的界面中左侧选导出格式是sql,在另存为文件里选择:zip压缩或者gzip压缩,其余保持默认,然后点右下角的 执行 按钮,然后弹出一个保存对话框,备份成功

将备份数据同步到本地数据库
数据库备份后,剩下的工作就是同步本地数据库
1.解压刚才导出的数据库文件(以解压到D盘为例),使用文本编辑器打开解压出的sql文件,搜索你的博客名,例如我的就可以搜索wasw100.com,搜到插入表wp_options的http://www.wasw100.com替换为http://127.0.0.1

2.
a.进入mysql
打开命令行(win+r,输入cmd回车),进入d盘,输入D:\>mysql -uroot -proot(假设用户名密码都是root)

b.删掉原来的数据库
命令:drop database wpdb; ,我原来的数据库名叫 wpdb,具体你自己的可以打开你的wordpress的配置文件wp-config.php查看具体信息(包括数据库的用户名、密码)。

c.建立一个与原来名字相同的数据库
create database wpdb default character set utf8;

d.导入数据
退出到D盘符下(D:\>),输入命令(假设备份文件的名字是wp.sql):mysql -uroot -proot wpdb < wp.sql;

这样本地数据就和远程数据库同步成功了。

–EOF–

返回顶部