Webエンジニアのメモ帳

技術的な話を中心に書いています。

2021-01-01から1年間の記事一覧

MacBook Proでタッチバーのescボタンが消えたときの対処法

MacBook Proでターミナルを使用中、タッチバーからescボタンが消えたことがありました。 解決するには、ターミナルから以下のコマンドを実行します。 sudo pkill TouchBarServer

MacのWordで英単語の途中で改行するよう設定する方法

Wordでは、デフォルトでは英単語の途中では改行されませんが、URLなどの長い英文字列の場合、途中で改行されず困ることがあります。 英単語の途中でも改行させるには、上のバーの「フォーマット」から「段落」を選択します。 つぎに「体裁」を選んで「英単語…

「たまるモール」で否認になるのはなぜ? ケース別に解説

「たまるモール」というサイトをご存知でしょうか。 詳細は以下の記事に書いていますが、投資の面談をしたり、ネットで商品を購入したりするとAmazonギフト券がもらえるというサービスで、ふるさと納税のふるなびと同じくアイモバイルという会社が運営してい…

コバエの駆除方法 最も効果があったのは電撃殺虫機!

今年の夏、コバエ(ノミバエ)が家の中で発生し、駆除のために様々な方法を試しました。 その方法と効果をまとめておきます。 目次 1. 電撃殺虫機 2. お酢トラップ 3. 排水溝にお湯を流す 4. コバエ ワンプッシュ まとめ 1. 電撃殺虫機 記事のタイトルにも書き…

「たまるモール」でAmazonギフト券をゲットする方法まとめ

ふるさと納税の「ふるなび」と同じ運営会社のアイモバイル株式会社が運営している、「たまるモール」というサイトをご存知でしょうか。 投資の面談をしたり、ネットで商品を購入したりするとAmazonギフト券がもらえる、というサービスで、特に前者に関しては…

Spring Batchの使い方

Spring Bootを使った開発において、Webアプリケーションのような常駐するプロセスではなく、一連の処理を実行するだけのバッチ処理を書く時、Spring Batchというものが使えます。 この記事では、Spring Batchの使い方を解説します。 文字列を出力するだけの…

【Spring Boot】Cassandraを使った開発でトランザクション処理を行う

Spring BootでCassandraを使っている場合に、トランザクション処理を行う方法を説明します。 トランザクション処理とは Cassandraに2つのデータを同時に挿入することを考えます。 このとき、エラーが発生した場合でも、片方のデータだけが挿入されている状態…

【Spring Boot】Cassandraを使った開発で、contextLoads()が通らない場合の対処法

Spring Bootを使っている場合、テストコードにcontextLoads()を記述するのが一般的です。 ところがCassandraを使っている場合はcontextLoads()がそのままだと通りません。この記事では、contextLoads()を通す方法を説明します。 contextLoads()とは Spring B…

【IntelliJ IDEA】文字サイズを変更する方法 (コード・コード以外)

IntelliJ IDEAは優れたエディタですが、デフォルトだと文字サイズが小さいです。 MacのIntelliJ IDEAにおいて、文字サイズを大きくする方法を説明します。 コードの文字サイズを変更する方法 まずは、コードの文字サイズを変更する方法を説明します。 画面上…

MacのTime Machineでバックアップが突然取れなくなった場合の解決方法

結論 /Library/Preferences/com.apple.TimeMachine.plistを削除する 解説 MacのTime Machineで定期的にバックアップを取っているのですが、ある日突然、途中でエラーが出てバックアップが取れなくなってしまいました。 エラーの内容も「バックアップが完了で…

【Spring Batch】ジョブが実行できなくなった場合の解決策

Spring Batchで、それまで成功していたジョブが実行できなくなったことがありました。 この記事では、その原因と解決方法を説明します。 解決方法 プロジェクト配下のtest.mv.dbとtest.trace.dbを削除する。 原因 Spring Batchでは、ジョブが成功するとプロ…

【AWS】予算を設定し、超えた場合にEC2インスタンスを停止させる方法

AWSで予算を設定し、超えた場合にEC2インスタンスを停止させる方法を説明します。 概要 AWSでは予算を設定し、それを超えた場合にメールで通知することができます。 これに加え、2020年のアップデートから、EC2インスタンスを停止させることができるようにな…

【Java】小数の浮動小数点表記について

浮動小数点表記とは Javaで少数を出力させると、値によって出力のされ方が変わります。 // 「0.00123」と出力される System.out.println(0.00123); // 「1.23E-4」と出力される System.out.println(0.000123); 「1.23E-4」というのは、初めて見るとエラーの…

【Python】ラムダ式について

Pythonのラムダ式について説明します。 ラムダ式とは、ざっくり言えば関数を手軽に書ける方法です。 ラムダ式の使い方 ラムダ式を使って関数を定義する場合 {関数名} = lambda {引数}: {処理内容} といった書き方をします。 サンプルコード 具体例を見てみま…

Webページ上でブックマークからJavaScriptを実行する方法 (ブックマークレット)

この記事では、Webページ上でブックマークからJavaScriptを実行する方法、通称「ブックマークレット」について説明します。 ブックマークレットとは Webページ上でJavaScriptで書いたスクリプトを実行することで、例えばフォームの内容を自動で入力するなど…

【Java】文字列→数字の変換に使えるparseInt()とvalueOf()の違い

ともに文字列から数字への変換の際に使われる、parseInt()とvalueOf()の違いについて説明します。 結論 parseInt()はint型を、valueOf()はInteger型を返す。 解説 String a = "123"; int b = Integer.parseInt(a); int c = Integer.valueOf(a); このように書…

【IntelliJ IDEA】ファイル末尾に改行を自動で入れるようにする

IntelliJ IDEAでファイル末尾に改行を自動で入れるようにするには、以下の操作を行います。 Preferencesを開き、Editor -> General -> Save Filesと進む 「Ensure an empty line at the end of a file on Save」にチェックをつけ、「Apply」ボタンを押す こ…

【Java】JSON⇄オブジェクトの変換を行う

JavaでオブジェクトをJSON文字列に変換したり、JSON文字列をオブジェクトに変換したりする方法を説明します。 ライブラリのインポート 変換を行うには、Jacksonというライブラリのインポートが必要です。 gradleを使っている場合は、build.gradleのdependenc…

【Spring】application.ymlから値を読み込む方法

Springを使った開発では、src/main/resources/application.ymlに外部設定値を記載することが多いですが、この値をコード中で利用する方法を2つ説明します。 @Valueを利用する方法 application.ymlに以下が記載されているとします。 api: hostname: "http://s…

シークレットウィンドウの開き方 (Macの場合)

結論 Command + Shift + n 説明 シークレットウィンドウというのは、閲覧履歴やCookieなどのデータが保存されないブラウザのウィンドウのことです。 特に共有のパソコンなどであれば、閲覧履歴を残したくない場合もありますし、そういった際には有用です。 …

Google Chromeでリロードしても更新されない場合の対処法 (Macの場合)

結論 Command + Shift + R 解説 同じサイトを短時間の間に見た場合は、ブラウザがサイトの内容を記憶しており、その内容を返すことがあります。 いわゆる「キャッシュ」という機能です。 キャッシュがある場合でもキャッシュを無視してリクエストを行いたい…

【Spring Security】ロールを使った認証の注意点

ロールを使った認証について Springを使った開発では、Spring Securityを使えば認証・認可の機能が実装できます。 例えばフォームを使ったログインなどであれば、以下の記事で説明しているように簡単に実装できます。 http://lavapies9.com/2021/03/03/2021-…

【Spring Security】ログイン機能の実装方法

Springを用いた開発では、Spring Securityを使えばログイン機能が簡単に実装できます。 今回は最低限のコード量で、フォームでのログインを実装します。 build.gradleの修正 まずは、Spring Securityを使うため、build.gradleに依存ライブラリを追加します。…

Google Adsenseのads.txtを配置する方法 (Webアプリケーションの場合)

概要 Google Adsenseの審査に合格した場合、ads.txtに関する注意書きが表示されます。 「今すぐ修正」をクリックすると、今度は以下のような注意書きが表示されます。 ads.txtをルートレベルのドメインに配置することを求められるのですが、それってどうする…

【Java】日時を文字列として取得する方法

Javaで日時を文字列として取得する方法についてです。 日時はDate型の他にCalendar型も利用できますが、今回はDate型を使う方法を説明します。 Date now = new Date(); SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String nowS…

【Thymeleaf】UnixTimeをフォーマットして出力する方法

Spring Boot + Thymeleafを使った開発で、コントローラー層から受け取った時刻(UnixTimeの形式)をテンプレート側で整形して出力する方法を説明します。 たとえば、コントローラー層からテンプレートにtimeという変数名で時刻(UnixTime)を渡し、これを整形し…

【Spring Boot】リソースに配置した画像を表示する

Spring Boot + Thymeleafを使った開発で、リソースに配置した画像を表示する方法を説明します。 画像の配置 src/main/resources/static/imgに画像を配置します。 必ずstaticというディレクトリの下に配置します。imgは好きな名前で構いません。 表示 テンプ…

Spring Boot Actuatorについて

Webアプリケーションなどを動かすとき、アプリが動いているかの監視(死活監視)をしたいことはよくあります。 またAPIなどでは、HTTPリクエストの成功率や、リクエストが遅れていないか(レイテンシ)などを確認したいこともあるでしょう。 Spring Bootを使って…

【Spring Boot】faviconを設定する方法

faviconとは Webサイトなどで、ブラウザのタブに表示される小さな画像をファビコン(favicon)といいます。 はてなブログの場合だと、↓の画像のペンのマークですね。 Spring Bootでfaviconを設定する方法 Spring Bootを使って書かれているアプリでファビコンを…

【Linux】シェルの違いによるhistoryコマンドの挙動の違いについて

historyコマンドは、ターミナルで実行したコマンドの履歴を表示するコマンドですが、普段使っているMacBookと、さくらVPSで借りているLinuxのサーバーとで挙動の違いがありました。 その原因を調べたところ、両者で使っているシェルが違い、シェルによってhi…