התחברות לבסיס נתונים Access ב- JAVA
שלום לכולם, כתבתי ישום WhiteBoard בעזרת טכנולוגיות RMI ו- JDBC ויש לי את הבעייה הבאה: המחלקה WhiteBoardServerImpl שהיא המחלקה שמספקת ממשק מבוסס RMI לשרת WhiteBoard, צריכה להתחבר לבסיס נתונים של אקסס, אז בבנאי שלה יש את השורה: connection = DriverManager.getConnection("jdbc
dbc:MS Access DataBase;DBQ=D:\\WhiteBoard.mdb"); שאיתה המחלקה מצליחה להתחבר לבסיס הנתונים. הקטע הוא שאני לא מעוניין לתת לו נתיב קבוע ומפורש לבסיס הנתונים, אלא נתיב שתלוי במקום שממנו רצה המחלקה, או כזה שמתקבל מארגומנטים שמועברים בצורה מסויימת למחלקה. הבעייה היא שאינני יכול להעביר ארגומנטים של שורת הפקודה, כיוון שלמחלקה הזאת אין מתודת Main. וגם ניסיתי שהוא ימצא את המיקום של קובת ה- MDB בהתחשב במקום שממנו הופעלה המחלקה ע"י שימוש בקוד הבא: String dir=System.getProperty("user.dir"); int index=dir.indexOf("board"); String homeDir=dir.substring(0,index-1); connection=DriverManager.getConnection"jdbc
dbc:MSAccessDataBase;DBQ=homeDir+"\\WhiteBoard.mdb"); כיוון שהנתיב שבה נמצאת המחלקה הוא board\rmi\server, ולכן הנחתי שאם אשים את קובץ ה- MDB בתקייה מעל התקייה board, אז הקוד יעבוד. הוא לא הצליח להתחבר לבסיס הנתונים ובבדיקה שעשיתי גיליתי שהערך של dir הוא C:\Documents and Settings\Administrator (לא בדיוק מה שציפיתי שיהיה). מה עוד ניתן לנסות? תודה מראש, חן.
שלום לכולם, כתבתי ישום WhiteBoard בעזרת טכנולוגיות RMI ו- JDBC ויש לי את הבעייה הבאה: המחלקה WhiteBoardServerImpl שהיא המחלקה שמספקת ממשק מבוסס RMI לשרת WhiteBoard, צריכה להתחבר לבסיס נתונים של אקסס, אז בבנאי שלה יש את השורה: connection = DriverManager.getConnection("jdbc