- ベストアンサー
javaでFTPサーバーへファイルの保存
- eclipseのjavaで作成したプログラムを使用して、FTPサーバーへのファイル保存方法を調べましたが分からず困っています。
- このプログラムは誰でも使えるようになっており、他の人が出力したエクセルファイルを上書き保存することができます。
- Dropboxに保存する方法も考えましたが、パソコンによってDropboxの場所が異なるため、FTPサーバーへの保存が確実であると考えています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
いろいろ、仕様を確定しないといけないことが沢山あると思うよ。 わざわざFTPサーバを立ち上げる必要もないと思うけどなぁ。 同時にそのアプリを動かすことは無いの?? ファイルの排他を考えなきゃいけないかも。 特定の役職者以外のアクセス不可はWindowsならActiveDirectory使うとかじゃない? 今作っているシステムでやるなら、閲覧者用のアプリを作らないといけない。 どっちにしたって保存先がわかってれば参照出来ちゃうはずだからWindowsの権限とかに頼るしかないと思うけど。 もし自分が作るなら 入力者が入力したデータは何らかのデータベースに保存 特定の役職者用のアプリでデータベースに接続して、Excelを出力 とかで作るかな。そうすればExcelの保存先なんて気にしなくて済むし。(出力実行したときにExcelを生成するから)
その他の回答 (2)
- askaaska
- ベストアンサー率35% (1455/4149)
一般社員は直接Excelをいじらないことが条件なのかしら? だったら サーバー上にアプリケーションサーバーでもたてて Web画面から入力させればいいと思うわ Javaを使うならTomcatね<アプリケーションサーバー
お礼
たびたびのお返事ありがとうございます。 Tomcatを使う方法があるのですね。 DBを使うのかTomcatを使うのかどっちがいいのか試行錯誤しております…
- askaaska
- ベストアンサー率35% (1455/4149)
FTPサーバーの利用方法はApacheのCommonsNetを使えば 楽にできると思うけど まず解決するべきはそこじゃない気がするわ 作ったExcelを誰からでも見れるようにしたいってことなのよね? さらに言えば見るだけじゃなく編集もできるようにしたいってこと? 「誰から」の範囲はどのくらい? 特定のグループだけなの? それとも世界中誰でも? FTPサーバーのアドレスやアクセスするためのID,パスワードはどう管理するの? 世界中誰でもアクセス可能ならID、パスワードはいらないと思うけどね 気にしているのは あなたがやりたいことに 本当にFTPサーバーが適切なの?ってことなの FTPだとファイルをやり取りするだけだから もし作成されているExcelを BさんとCさんが同時に編集しようとすると 二人ともいったん手元にダウンロードしてから編集して アップロードすることになるから どっちかの編集しか有効にならないなって思うのよ 閉じられたLANの中の話ならFTPとか使わず ネットワークフォルダでいいだろうし このアプリケーションがどこで動く予定なのはわからないけど 各々のパソコンの中で動くなら 設定ファイルにDropboxの場所を記述させれば Dropboxだって使えると思うわよ 何をしたいのか 何ができる必要があって 何ができてはいけないのか をもう一度整理してみるといいかも
お礼
お返事いただきありがとうございます。 現在会社の日報システムというものをeclipseのSwingを用いて作成しています。 Aさんがこの日報システムを使って、ファイルを出力した場合、 存在しないなら新規にファイル作成を、 存在するなら既存のファイルに上書きをするというものです。 エクセルファイルを見れるのは特定の役職者(今回の場合1人)のみでして あとの人はひたすらシステムを用いてエクセルを上書きするだけです。 内部の人間だけなので、会社の共有フォルダを作成すればよいということになるのでしょうか? >何をしたいのか 会社に所属する全社員がその日の日報(どの会社に行って、誰と会って、どういう話をしたか)を入力し、その"会社名"のエクセルファイルが存在する場合には作成されたファイルに追加をする。 >何ができる必要があって システムが使われ、更新されたらリアルタイムでエクセルの更新を行う。 >何ができてはいけないのか 特定の役職者以外のエクセルファイルへのアクセス不可。 という感じでしょうか。
お礼
ご回答いただきありがとうございます。 同時にそのアプリを動かすことはないのか…といわれると正直ないとは言えないです。 自分自身、Javaは4年前にSEとして仕事をしていましたが、そこから職を転々。 今正社員で雇用された会社にJavaプログラムを再びお願いされているといった感じです。 DBですれば一番手っ取り早いのでしょうが、 DBは未経験なのです…