
일반설정
Twitter4J 는 몇가지의 설정가능한 프로퍼티가 존재합니다. 프로퍼티는 twitter4j.properties 파일, ConfigurationBuilder 클래스, 또는 시스템 프로퍼티에서 설정 가능합니다.
twitter4j.properties 에서
ConfigurationBuilder 에서
시스템 프로퍼티에서
환경변수에서
표준적인 프로퍼티 파일을 "twitter4j.properties" 라는 이름으로 보존합니다. "twitter4j.properties" 는 current directory, 또는 클래스 패스의 루트(WEB-INF/classes 등)에 배치해 주십시오.
debug=true oauth.consumerKey=********************* oauth.consumerSecret=****************************************** oauth.accessToken=************************************************** oauth.accessTokenSecret=******************************************
ConfigurationBuilder 클래스를 사용하면 아래와 같이 프로그램내에서 설정하는 것이 가능합니다.
ConfigurationBuilder cb = new ConfigurationBuilder(); cb.setDebugEnabled(true) .setOAuthConsumerKey("*********************") .setOAuthConsumerSecret("******************************************") .setOAuthAccessToken("**************************************************") .setOAuthAccessTokenSecret("******************************************"); TwitterFactory tf = new TwitterFactory(cb.build()); Twitter twitter = tf.getInstance();
시스템 프로퍼티에서 설정하는 것도 가능합니다. 시스템 프로퍼티에서 설정하는 경우는 프로퍼티명의 선두에 "twitter4j." 를 붙여줄 필요가 있다는 것에 주의해 주십시오.
$ java -Dtwitter4j.debug=true -Dtwitter4j.oauth.consumerKey=********************* -Dtwitter4j.oauth.consumerSecret=****************************************** -Dtwitter4j.oauth.accessToken=************************************************** -Dtwitter4j.oauth.accessTokenSecret=****************************************** -cp twitter4j-core-4.0.7.jar:yourApp.jar yourpackage.Main
OS의 환경변수에서 설정하는 것도 가능합니다. 환경변수에서 설정하는 경우에는 프로퍼티명의 선두에 "twitter4j." 를 붙여줄 필요가 있다는 것에 주의해 주십시오.
$ export twitter4j.debug=true $ export twitter4j.oauth.consumerKey=********************* $ export twitter4j.oauth.consumerSecret=****************************************** $ export twitter4j.oauth.accessToken=************************************************** $ export twitter4j.oauth.accessTokenSecret=****************************************** $ java -cp twitter4j-core-4.0.7.jar:yourApp.jar yourpackage.MainHeroku에서는:
$ heroku config:add oauth.consumerKey=********** $ heroku config:add oauth.consumerSecret=************ $ heroku config:add oauth.accessToken=************************************************** $ heroku config:add oauth.accessTokenSecret=****************************************** $ git push heroku master
프로퍼티 일람
debug | false | |
includeRTs | true | |
includeEntities | true | |
includeMyRetweet | true | |
jsonStoreEnabled | false | |
mbeanEnabled | false | |
loggerFactory | : twitter4j.StdOutLoggerFactory twitter4j.SLF4JLoggerFactory twitter4j.CommonsLoggingLoggerFactory twitter4j.Log4JLoggerFactory twitter4j.JULLoggerFactory twitter4j.NullLoggerFactory | null |
contributingTo | -1L |
OAuth
oauth.consumerKey | OAuth consumer key | null |
oauth.consumerSecret | OAuth consumer secret | null |
oauth.accessToken | OAuth access token | null |
oauth.accessTokenSecret | OAuth access token secret | null |
Basic / xAuth
user | null | |
password | null |
stream.user.repliesAll | false | |
stream.enableStallWarnings | true |
http.connectionTimeout | 20000 | |
http.readTimeout | 120000 | |
http.streamingReadTimeout | 300000 | |
http.retryCount | 0 | |
http.retryIntervalSecs | 5 | |
http.prettyDebug | false |
http.proxyHost | null | |
http.proxyPort | null | |
http.proxyUser | null | |
http.proxyPassword | null |
media.provider | : twitter, imgly, plixi, lockerz, twipple, twitgoo, twitpic, yfrog | |
media.providerAPIKey | null |
restBaseURL | REST API URL | https://api.twitter.com/1.1/ |
streamBaseURL | Streaming API URL | https://stream.twitter.com/1.1/ |
siteStreamBaseURL | Site Streams API URL | https://sitestream.twitter.com/1.1/ |
userStreamBaseURL | User Stream API URL | https://userstream.twitter.com/1.1/ |
oauth.requestTokenURL | OAuth request token URL | https://api.twitter.com/oauth/request_token |
oauth.accessTokenURL | OAuth access token URL | https://api.twitter.com/oauth/access_token |
oauth.authorizationURL | OAuth authorization URL | https://api.twitter.com/oauth/authorize |
oauth.authenticationURL | OAuth authentication URL | https://api.twitter.com/oauth/authenticate |
async.numThreads | 1 | |
async.dispatcherImpl | twitter4j.DispatcherImpl | |
async.daemonEnabled | true |
로그설정
Twitter4J 의 디폴트는 표준출력에 로그를 기록합니다. SLF4J, Commons-Logging, Log4J 중의 하나가 클래스 패스에 존재하는 경우에는 해당 로그 라이브러리를 사용해 메세지가 출력됩니다.-Dtwitter4j.loggerFactory=twitter4j.NullLoggerFactory 를 시스템 프로퍼티에 지정하는것으로 로그출력을 멈추는 것도 가능합니다.