buffalo-2.0(國人開發的Ajax框架),下載buffalo-2.0-bin就可以了,個人認為也下載buffalo-2.0-src
下載地址:
http://sourceforge.net/project/showfiles.php?group_id=178867
1.buffalo-2.0.jar
在buffalo-2.0-bin里,把它加到Web應用程序里的lib
2.buffalo.js和prototype.js
我把這兩個文件放到Web應用程序的scripts/目錄下,buffalo.js在buffalo-2.0-bin里,prototype.js在buffalo-demo.war里找
4.web.xml內容
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>bfapp</servlet-name>
<servlet-class>net.buffalo.web.servlet.ApplicationServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>bfapp</servlet-name>
<url-pattern>/bfapp/*</url-pattern>
</servlet-mapping>
</web-app>
5.index.jsp文件
<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>第一個 buffalo 示例程序</title>
<script language="JavaScript" src="scripts/prototype.js"></script>
<script language="JavaScript" src="scripts/buffalo.js"></script>
<script type="text/javascript">
var endPoint="<%=request.getContextPath()%>/bfapp";
var buffalo = new Buffalo(endPoint);
function hello(me) {
buffalo.remoteCall("demoService.getHello", [me.value], function(reply) {
alert(reply.getResult());
})
}
</script>
</head>
<body>
輸入你的名字:<input type="text" name="myname">
<input type="button" value="Buffao遠程調用" onclick="hello($('myname'));"><br>
</body>
</html>
說明:remoteCall是遠程調用方法,demoService是buffalo-service.properties文件的鍵,getHello是被調用java類方法名,me.value是傳給getHello方法的參數,reply.getResult()是getHello返回的值。
6.DemoService.java文件
package demo.buffalo;
/**
*
* @文件名 demo.buffalo.DemoService.java
* @作者 chenlb
* @創建時間 2007-7-14 下午12:42:17
*/
public class DemoService {
public String getHello(String name) {
return "Hello , "+name +" 這是第一個buffalo示例程序";
}
}
7.buffalo-service.properties文件放到WEB-INF/classes/目錄下
demoService=demo.buffalo.DemoService
說明:框架是通過此文件來查找遠程調用的類的。
8.現在可以運行了。
示例下載
注意:Eclipse項目,文件編碼是UTF-8
官方地址:
Buffalo中文論壇:
http://groups.google.com/group/amowa
http://buffalo.sourceforge.net/tutorial.html
http://confluence.redsaga.com/pages/viewpage.action?pageId=1643
JavaScript API :
http://confluence.redsaga.com/display/BUFFALO/JavaScript+API
http://www.amowa.net/buffalo/zh/index.html
posted @
2007-07-14 13:41 流浪汗 閱讀(4660) |
評論 (7) |
編輯 收藏
這個對隨機取樣很有用
SELECT * FROM tbl_name ORDER BY RAND() LIMIT 10;
posted @
2007-07-14 12:10 流浪汗 閱讀(717) |
評論 (0) |
編輯 收藏
用current_timestamp,不過這個默認值只用在timestamp的列,對datetime列無效
例子:
create table default_time (
id int not null primary key auto_increment,
name varchar(20) default 'chenlb',
my_time timestamp default current_timestamp
);
注意:一個表只能有一個timestamp列的默認值為當前日期時間。
posted @
2007-07-08 21:29 流浪汗 閱讀(6126) |
評論 (2) |
編輯 收藏
中了U盤的病毒,郁悶,生成autorun.inf文件,當然大家都知道這個文件是用來干嘛的,大多數病毒是靠它觸發的。很火的是刪除了autorun.inf文件又會生成,同時game.exe又生成了。網上找了下專殺,意外找到別人的技巧,http://zhidao.baidu.com/question/25183320.html 。就是在U盤里創建個autorun.inf文件夾(注意:是文件夾而不是文件),然后病毒就不能生成自己了。
先刪除autorun.inf文件,再創建個autorun.inf文件夾。但這個動作要快。刪除autorun.inf文件之前要去掉它的只讀屬性,隱藏屬性。attrib autorun.inf -s -h -r
因為人的動作肯定沒有程序快,可能刪除autorun.inf文件后,還沒有來得急創建autorun.inf文件夾后,這個文件又病毒創建了。所以寫一個*.bat文件來搞,把下面的內容保存為del-autorun.inf.bat文件名
attrib autorun.inf -s -h -r
del autorun.inf
md autorun.inf
然后放到U盤下,雙擊即可,然后再手動刪除game.exe文件(當然你要設置文件夾為可以看所有東西的)就OK了。
為了以后不會輕易中中毒,可以把autorun.inf文件夾常駐到U盤里和其它根目錄下。
呵呵!
posted @
2007-07-02 15:15 流浪汗 閱讀(967) |
評論 (1) |
編輯 收藏
拿U盤去打印,出來就在自己上,發現自己的文件夾全變成了*.exe文件,卡巴發現是:木馬程序 Trojan.Win32.Hider.i 文件: J:\music.exe//ASPack,自己雙不敢刪除,因為自己的文件夾里的內容都沒有了。然后,不甘心讓病毒長駐我U盤,就查看文件夾所以隱藏和系統文件,一看,我被騙了,這病毒把所以目錄都隱藏了,而且隱藏選項變灰了。什么火。要用DOS命令改,如下:
attrib -s -h /s /d
說明:選擇用“運行”->cmd->j:
j:是我U盤符,然后輸入上面的命令,
-s 去除系統屬性
-h 去隱含屬性
/s 當前目錄下的所有子目錄及作設置
posted @
2007-06-29 15:20 流浪汗 閱讀(20412) |
評論 (40) |
編輯 收藏
call identity();
<insert id="addUser" parameterClass="user">
insert into User(UserName,Password) values(#userName#,#password#)
<selectKey keyProperty="uid" resultClass="int">
call identity()
</selectKey>
</insert>
posted @
2007-06-09 22:21 流浪汗 閱讀(867) |
評論 (0) |
編輯 收藏
#include "stdio.h"
#include <stdlib.h>
#include "windows.h"
#include <conio.h>
#define RAND_MAX 0x7fff
void main()
{ int m=60,n=10,ans=0;
srand((unsigned)GetCurrentTime()); //加了這個才正直隨機, 頭文件是windows.h
for(int i=0;i<200;i++)
{
printf(" %4d",rand()*(m-n)/RAND_MAX+n);//n<=x<m的數字
}
getch();
}
posted @
2007-05-16 16:56 流浪汗 閱讀(3679) |
評論 (4) |
編輯 收藏
Google的:
http://picasaweb.google.com/chenlb2006163 的:
http://chenlbphoto.photo.163.com/
posted @
2007-05-16 16:55 流浪汗 閱讀(396) |
評論 (0) |
編輯 收藏
#include <dos.h>
sleep() 秒
#include "Windows.h"
#include "Winbase.h"
Sleep()毫秒
CB沒有delay()
posted @
2007-05-09 18:48 流浪汗 閱讀(2520) |
評論 (0) |
編輯 收藏
收集于網絡
首先,需要將繼承了SimpleFormController之類的sessionForm設為true。這樣,在顯示一個新表單時,Spring會將command存放在session中,而在提交表單時,Spring會從session中取出此command,隨后立即從session中刪除存放command的attribute。如果發現在session中沒有command,Spring將其斷定為重復提交,轉而執行handleInvalidSubmit(request, response),可覆蓋此方法負責防止重復提交的任務??梢赃@么說,當setSessionForm(true)之后,如果沒有先后經歷顯示表單、提交表單的過程,就會被認為是重復提交表單。而有一些情況下卻必須重復提交表單,如,修改數據庫的數據后,試圖寫入數據庫時因某些異常失敗,如果此時異常被當前頁面捕獲并依舊返回當前頁面,由于command已經被Spring在后臺從session中移走,因此,就被認為是無效重復提交,從而導致第二次經修改后的記錄無法正確提交到數據庫中。handleInvalidSubmit()必須考慮到這種情況。
posted @
2007-05-08 15:44 流浪汗 閱讀(2042) |
評論 (0) |
編輯 收藏