免責事項フリーランスエンジニア→法人化した人の技術ブログ。フリーランス事情や会社の作り方、経営などについても徒然なるままに書いていきます。主な使用言語はRuby、JavaScript。2019年4月24日Tweet外部のAPIサービスを利用した開発を行うときに、アクセスキーとアクセストークンを求められる場合があります。//アクセストークンとソースコードにベタ打ちするのも一つの手段ではありますが、アプリケーションの規模が大きくなってくるとやはり外部の値はプロパティファイルにもたせて管理したくなります。Bootの環境下で、プロパティファイルを読み込むような実装の手順についてまとめてみます。1.src/main/resourcesにプロパティファイルを配置src/main/resources下に読み込みたいプロパティファイルを配置します。Bootでプロパティファイルの値を読み込むには、@PropertySourceと@Valueを使用します。Configurationで呼び出せるように設定してみます。}}これで、APIのアクセストークンとシークレットキーの組をSpringのServiceから@Autowiredで呼べるようになります。}}githubに外部APIのアクセスキーなどを公開したくないときはgithub上で自分のリポジトリを管理している場合、publicリポジトリに外部APIのアクセスキー・アクセストークンを記述したソースを残すことはセキュリティ上好ましくありません。ソースにベタ打ちする弊害が、ここでも出てくるわけですね。企業のシステム開発であればだいたいPrivateリポジトリで管理するのでさしたる問題はありませんが、個人のポートフォリオとしてソースコードを公開する場合などに困ったことになります。いうわけで、githubに外部APIのアクセスキーを公開したくない場合に取るべき方法について説明します。default.propertiesなどを作って構造だけ書く必要な構造のみをawesome.default.propertiesなど、名前を変えて記述します。構造は同じですが、もちろん値はダミーにしておくことに注意しましょう。awesome.accessKey=*********awesome.accessSecret=********コミットする場合はこのdefault.propertiesのみをコミットします。本体を.gitignoreで無視するローカルにある、実体のpropertiesファイルを.gitignoreに追加してコミットされないようにします。gistとかで管理しましょう。gistなどから本来のアクセスキーをコピペします。このようにすることで、アクセスキーなどに変更による余計なgitの差分を発生させずに、複数端末で開発を行うことができます。Controllerにおける@ModelAttributeと@RequestBodyの違い@RequestBodyと@ModelAttributeの違いを簡単にまとめました。JDBCでデータを1件取得したい場合に、0件の場合がある場合はどうするか?jdbcTemplate#queryForObject(sql,rowMapper)というメソッドがあります。APIの非公式SDKを作ってみたプログラミング質問サイト「Teratail」のAPIをJavaから実行する非公式SDKを作成・公開しました。自由に使ってみてください。暇があればRuby版に挑戦するのと、Bintrayにあげます。大体java書いたことある人なら見たことある構文で構成されてると思います。Serviceでメール送信を実装するyohira_dev正社員になるも80時間以上のサービス残業により過労退職→フリーランスエンジニア→月商100万突破、2017年法人成り。RailsとVue.jsを用いた高速実装・改善が強み。BeanはSingletonだから、状態持たせるとバグるよ。views最近の投稿フリーランスエンジニアに請負契約がオススメできない理由【準委任契約にしましょう】コロナウイルスのせいで投資信託が一週間で20万溶けました。SESで簡単なログイン認証を実装する【法人化3年目の体験談】今年の売上は1300万程度で着地しそうです。投資2020/02/02コロナウイルスのせいで投資信託が一週間で20万溶けました。SESで簡単なログイン認証を実装するオピニオン2020/1/27【法人化3年目の体験談】今年の売上は1300万程度で着地しそうです。免責事項フリーランスエンジニア→法人化した人の技術ブログ。フリーランス事情や会社の作り方、経営などについても徒然なるままに書いていきます。主な使用言語はRuby、JavaScript。AFFINGER5.。