mysql データベースに接続されている php プロジェクトをコーディングしました。また、php URLが呼び出されたときに実行されるjarファイルもあります。PHPを介して、ユーザーからパラメーターを取得してデータベースに保存します。その後、jarファイルがデータベースに接続され、指定された行が読み取られます。ここまではすべて問題ありません。
これは、サーバーにある .jar ファイルを実行する私の php ファイルです。
<?php
mysql_query("SET NAMES utf8");
header("Content-Type: text/html;charset=UTF-8");
echo shell_exec('java -jar /home/path/path/path/my.jar');
?>
そして私のjarファイルは次のとおりです:
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/somedb?useUnicode=true&characterEncoding=UTF-8", "root", "pass");
while ループで:
while (resultSet2.next()) {
title2 = new String(resultSet2.getString("title").getBytes("UTF-8"), "UTF-8");
url2 = new String(resultSet2.getString("url").getBytes("UTF-8"), "UTF-8");
id = new String(resultSet2.getString("id").getBytes("UTF-8"), "UTF-8");
date = new String(resultSet2.getString("date").getBytes("UTF-8"), "UTF-8");
list.add(title2);
list2.add(url2);
list4.add(id);
list5.add(date);
}
データベースから何かを取得すると、すべてが完全に機能します。また、dbを「デフォルトの文字セットutf8のデフォルトの照合utf8_general_ci」に設定しました。
PHPでトルコ語の文字を書くと、dbに保存され、それを見ることができます。しかし、jar でこれらのトルコ語の文字を取得しようとすると、疑問符しか表示されません。私はほとんどすべてを試しましたが、チャンスはありませんでした。
どんな助けでも大いに感謝します。
編集: jar ファイルで UTF-8 を ISO-8859-1 に変更しました。しかし、それは再び機能しません。