Google App Engine SDK 1.3.8 预览版放出

SDK 1.3.8的评估版现在已经可以下载:
http://code.google.com/p/googleappengine/downloads/list

我们来看看有哪些新特性:

  • 上传app的开发者可以使用appcfg.py download_app命令下载所上传版本的代码。
  • 内建app.yaml中处理程序可用于常见的应用功能,如appstats。
  • Admin Console 提供了工具删除数据库中所有的实体或者给定类型的实体。
  • 可以在Admin Console立即执行queue tasks。
  • 可以在执行图像API的execute_transforms函数时指定jpeg图像的质量。
  • 支持多帐户登录。
  • 在queue.yaml中 bucket size 提升到100。
  • 默认开启Precompilation预编译。
  • BlobInfo拥有一个返回BlobReader值的open方法。
  • BlobReader接受BlobInfo类型的参数。
  • 移除了zigzag merge-join queries的限制。

via Prerelease SDK 1.3.8 is out!

好吧,没我期望的特性,希望Google Storage能成为内置支持(允许大文件传输),希望Prediction API和BigQuery也成为内置支持。版本号在上升,有新特性总是好的。
-EOF-

GAE开始支持Java

去年的今天(2008年4月8日)Google发布了统一开发平台App Engine,一年一之后的今天,Google开始开放Java支持,众说纷纭的对Java的支持即将揭开面纱。
登录GAE后台后有一行提醒问是否试用Java支持,并且下面会要求接受新的协议,不论是否参与用Java支持,新的协议都是必须同意的。

在点击“Learn More”,就会Java支持试用申请界面(点击“Dismiss”则忽略该信息)

点击“Sign me up!”即进入等待开通队列,预计近日Google便会正式开通正式的支持。

PS:刚去官网看了一下,此次会先开放先到的10,000名报名者,想尝鲜的盆友们抓紧时间吧。
-EOF-

JAVA求素数算法实现

尽管求素数在程序设计里面是基础的基础,但是对于一些初学者来说还是很难,而这类问题不管是面向对象语言还是面向过程语言的实现方法大至都是相同的,我这里写了JAVA语言的实现,供参考。
一般的求素数算法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class Prime {
 
	/**
	 * 一般求素数方法
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		for (int i = 2; i < 100; i++) {
			int j;
			for (j = 2; j < (int) (Math.sqrt(i) + 1); j++)
 
			{
				if (i % j == 0) {
					break;
				}
			}
 
			if (j > (int) Math.sqrt(i)) {
				System.out.print(i + " ");
			}
		}
 
	}
 
}

筛法求素数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public class Prime2 {
 
	/**
	 * 筛法求素数
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int n = 100;
		int[] array = new int[n];
		for (int i = 2; i < n; i++)
			array[i] = i;
		for (int i = 2; i < n; i++) {
			if (array[i] != 0) {
				int j, temp;
				temp = array[i];
				for (j = 2 * temp; j < n; j = j + temp) {
					array[j] = 0;
				}
			}
		}
		for (int i = 0; i < n; i++) {
			if (array[i] != 0) {
				System.out.print(i + " ");
			}
		}
 
	}
 
}

-EOF-