比如
class MyJavaClass
{
public string db_name;
public string table_name;
}
public class UseObjects
{public static void main(String [] args)
{
UseObjects app = new UseObjects();
MyJavaClass anObj = new MyJavaClass();
anObj.db_name = "oracle数据库";
anObj.table_name="表一";
app.print(anObj);
}private native void print(MyJavaClass obj);
static
{
System.loadLibrary("UseObjImpl");
}}JNIEXPORT void JNICALL
Java_UseObjects_changeObject(
JNIEnv * env, jobject jThis, jobject obj)
{
//这个里面咋写呀?怎么把上面的两个字符串变为指针类型 ,谢谢!
}
class MyJavaClass
{
public string db_name;
public string table_name;
}
public class UseObjects
{public static void main(String [] args)
{
UseObjects app = new UseObjects();
MyJavaClass anObj = new MyJavaClass();
anObj.db_name = "oracle数据库";
anObj.table_name="表一";
app.print(anObj);
}private native void print(MyJavaClass obj);
static
{
System.loadLibrary("UseObjImpl");
}}JNIEXPORT void JNICALL
Java_UseObjects_changeObject(
JNIEnv * env, jobject jThis, jobject obj)
{
//这个里面咋写呀?怎么把上面的两个字符串变为指针类型 ,谢谢!
}
解决方案 »
- java.lang.NoSuchMethodError: com.sun.xml.bind.v2.runtime.JaxBeanInfo.getTypeName
- 提问:long MAX_UPON = 10000000000; 这语有错误吗?
- 输出格式(控制输出小数位数,对齐)
- 有没有人装过Solaris 10 X86 .我有问题求助
- java做的东西怎么安装?
- 一个简单的程序,书上的,有问题.
- 向大家请教问题,为表诚意,先给300分。(如果每个帖子的有效回答超过10个,我就会再开一个,直到问题圆满解决)
- 我下载了jmf,安装后JMStudio程序能够播放mid与wav,可是在播放avi与mp3有问题?
- 一个关于网络方面的问题,请各位帮忙,万分感谢! (紧急)
- 一个多用户提交数据库的问题
- 一个java超级简单的问题[super]语句
- 求j2se api 中文版(请各位大虾献策。。。。。。。)
Java_UseObjects_print(
JNIEnv * env, jobject jThis, jobject obj)
{
const char* dbstr, tablestr;
jfield fid;
jstring jstr; jclass cls = env->GetObjectClass(obj);
assert( cls != NULL ); fid = env->GetFieldID(cls,"db_name","Ljava/lang/String");
assert( fid != NULL ); jstr = env->GetObjectField(obj,fid);
assert( jstr != NULL ); dbstr = env->GetStringUTFChar(jstr,NULL);
assert(dbstr != NULL); printf("%s",dbstr); 同理,可以得到table_name的值,楼主该知道如何实现了
}
jstring jstr;
jclass cls = env->GetObjectClass(obj);
fid = env->GetFieldID(cls,"db_name","Ljava/lang/String");
jstr = env->GetObjectField(obj,fid);
char* dbstr =(*env)->GetStringUTFChars(env,jstr ,0);
(*env)->ReleaseStringUTFChars(env,jstr ,dbstr ); //table_name相同