java 调用jni方法,在JNI中使用参数调用Java方法

I am working on JNI program and I am not able to call a java method from my C++ program.

The code snippet of java method is here

public static void getTables(Connection conn) throws Exception {

String TABLE_NAME = "TABLE_NAME";

String TABLE_SCHEMA = "TABLE_SCHEM";

String[] TABLE_TYPES = {"TABLE"};

DatabaseMetaData dbmd = conn.getMetaData();

ResultSet tables = dbmd.getTables(null, null, null, TABLE_TYPES);

while (tables.next()) {

System.out.println(tables.getString(TABLE_NAME));

System.out.println(tables.getString(TABLE_SCHEMA));

}

}

And I want to call this java method from C++ program.

I am able to call the main method

for that the code is

midMain = env->GetStaticMethodID(clsH, "main", "([Ljava/lang/String;)V");

I want to call getTables method like this. Please help me to solve it.

解决方案

There is some difference between calling static and non-static methods, but not much.

I suggest you start with something that works and gradually change it to what you want.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值