dsnless を使用して jar ファイルから DB にアクセスする方法は知っていますが、dsnless 接続を使用して jar ファイル内の db の URL を取得する必要があります (可能かどうかはわかりません)。
次のコードを試しました
String a=getClass().getResourceAsStream("/homedei.mdb").toString();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+a,"","");
そしてこれも
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+ new File("homemedi.mdb").getAbsolutePath(),"","");
そしてこれも。
youtubeでこれを見て、imgファイルをjarファイルに挿入し、以下のようにクラスファイルを作成します
import java.io.InputStream;
final public class ResourcesProvider
{
public static InputStream load(String path)
{
InputStream input=ResourcesProvider.class.getResourceAsStream(path);
if(input==null)
{
input=ResourcesProvider.class.getResourceAsStream("/"+path);
}
return input;
}
}
そしてしようとする
String a=ResourcesProvider.load("/homemedi.mdb").toString();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+a,"","");
上記のすべてが発生しますNullPointerException
getSource()
またはについて明確な考えを持っていませんgetClass().getResourceAsStream()
子供の言葉でも説明できますか?
私はすでにこのリンクを読んでいます: アプリケーションはMS DBに書き込みません
DB の URL を文字列またはその他の方法で取得する方法を知りたい
ありがとう