Dropbox upload with Java SE
Dropbox에 파일을 업로드(File Upload)하는 예( Java )
from: http://forums.dropbox.com/topic.php?id=47952&replies=15#post-371138
프로그램을 작성하여 Dropbox의 App Folder에 파일을 업로드하려면 App key/secret, Access key/secret 가 준비되어 있어야 한다. 이를 준비하기 위해서 Dropbox.com 에서 App Folder를 생성하고 프로그램을 작성하여 API 사용승인을 받아야 한다. 여기를 참조하세요
아래의 프로그램은 App Folder생성시 발급된 App key/secret와 API 사용승인을 받을 때 발급된 Access key/secret 를 사용하여 Dropbox서버에 접속하고 텍스트파일을 서버로 전송하여 App Folder에 저장하는 예이다. File Download 예제는 여기를 참조하세요
package com.test.dropbox; import java.io.ByteArrayInputStream; import com.dropbox.client2.*; import com.dropbox.client2.DropboxAPI.Entry; import com.dropbox.client2.session.*; import com.dropbox.client2.session.Session.AccessType; public class DropboxFileupload { private static final String APP_KEY = "nj8slpjoasdfr5"; private static final String APP_SECRET = "ixk5masdfl3f"; private static final AccessType ACCESS_TYPE = AccessType.APP_FOLDER; private static DropboxAPI<WebAuthSession> mDBApi; public static void main(String[] args) throws Exception { AppKeyPair appKeys = new AppKeyPair(APP_KEY, APP_SECRET); WebAuthSession session = new WebAuthSession(appKeys, ACCESS_TYPE); AccessTokenPair accessToken = new AccessTokenPair("1is0t9asdf48", "i08qasdfkk1"); session.setAccessTokenPair(accessToken); mDBApi = new DropboxAPI<WebAuthSession>(session); //결국 위의 내용은 DropboxAPI를 생성하기 위해 필요함 DropboxAPI.Account account = mDBApi.accountInfo(); System.out.println("User Name: " + account.displayName);// 계정 사용자 이름 System.out.println(); System.out.print("Uploading file..."); String fileContents = "Hello World!"; ByteArrayInputStream inputStream = new ByteArrayInputStream(fileContents.getBytes()); Entry newEntry = mDBApi.putFile("/testing2.txt", inputStream, fileContents.length(), null, null); System.out.println("Done. \nRevision of file: " + newEntry.rev); } }