package hello.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.Window;
/**
* Entry point classes define <code>onModuleLoad()</code>.
*/
public class Jsni_hello implements EntryPoint {
public void onModuleLoad() {
//类中直接调用jsni
Window.alert(hello());
//jsni中调用类中的方法
jsnicalljava();
}
/**
* 静态方法
* @return
*/
public static String javatojsni(){
return "jsni call static method";
}
/**
* 非静态方法
* @return
*/
public String javatojsni2(){
return "jsni call non-static method";
}
/**
* 带参数非静态方法
* @param str
* @return
*/
public String javatojsni3(String str){
return str.toUpperCase();
}
/**
* jsni简单方法
* @return
*/
public native String hello()/*-{
var hello='java call jsni:hello jsni';
return hello;
}-*/;
/**
* jsni里调用
*/
public native void jsnicalljava()/*-{
var str1=@hello.client.Jsni_hello::javatojsni()();
var str2=this.@hello.client.Jsni_hello::javatojsni2()();
var para="test";
var str3=this.@hello.client.Jsni_hello::javatojsni3(Ljava/lang/String;)(para);
$wnd.alert(str1+"\n"+str2+"\n"+str3);
}-*/;
}
GWT JSNI HelloWorld
最新推荐文章于 2015-01-30 11:10:02 发布
