banner
半米牙

半米牙的笔记

分享技术、记录生活
email

IDEA Live Templateを使用して、コードの書き込み速度を高める。

IDEA でコードを書くとき、同じコードを繰り返し書くことがよくあり、非常にイライラします。

IDEA には Live Template 機能が組み込まれており、組み込みのコードのショートカット機能だけでなく、独自の Live Template をカスタマイズすることもできます。

カスタムコマンド#

いくつかのコマンドをカスタマイズできます。 IDEA の設定を開き、Live Template を見つけて、右側に追加します。まず、自分のグループを追加できます。たとえば、私は「My Live」というグループを追加しました。その後、具体的な設定を追加します。

live11

設定の Live Template

変数は$$で囲むことで、IDEA が変数であることを認識します。変数は右下の「変数の編集」で値を設定できます。

live12

ここで、Expression列では変数に計算方法を設定できます。たとえば、className()と指定すると、CLASS変数は現在のクラス名になります。また、Default valueでデフォルト値を指定することもできます。最後の列は、チェックを入れると、変数が値を計算した場合には入力値をユーザーに入力する必要がなくなります。

以下は私が使用しているいくつかの例です。

logger の定義#

テンプレートテキスト

private static final Logger logger = LoggerFactory.getLogger($CLASS$.class);

変数

名前デフォルト値定義済みの場合はスキップ
CLASSclassName()☑️

効果

live13

logger の定義

ModelAndView を返す#

テンプレートテキスト

@RequestMapping("/$NAME$.html")
public ModelAndView $NAME$(HttpServletRequest request, HttpServletResponse response) {
	logger.info("****************$CLASS$:$NAME$ 開始****************");
	logger.info("****************$CLASS$:$NAME$ 終了****************");
	return new ModelAndView("$NAME$/$NAME$");
}

変数

名前デフォルト値定義済みの場合はスキップ
NAME
CLASSclassName()☑️

効果

live14

ModelAndView を返す(URL パラメータあり)#

テンプレートテキスト

@RequestMapping("/$NAME$/{$PATHVARIABLE$}.html")
public ModelAndView $NAME$(@PathVariable("$PATHVARIABLE$") String $PATHVARIABLE$, HttpServletRequest request, HttpServletResponse response) {
	logger.info("****************$CLASS$:$NAME$ 開始****************");
	logger.info("****************$CLASS$:$NAME$ 終了****************");
	return new ModelAndView("$NAME$/$NAME$");
}

変数

名前デフォルト値定義済みの場合はスキップ
NAME
PATHVARIABLE
CLASSclassName()☑️

効果

live15

新しい Controller を作成#

テンプレートテキスト

@RestController
public class $ControllerName$Controller {
	private static final Logger logger = LoggerFactory.getLogger($ControllerName$Controller.class);

	/**
	 * $viewName$
	 */
	@RequestMapping("/$viewName$.html")
	public ModelAndView $viewName$(HttpServletRequest request, HttpServletResponse response) {
		logger.info("****************$ControllerName$Controller:$viewName$ 開始****************");
		logger.info("****************$ControllerName$Controller:$viewName$ 終了****************");
		return new ModelAndView("$viewName$/$viewName$");
	}
}

変数

名前デフォルト値定義済みの場合はスキップ
ControllerName
viewName

効果

live16

組み込みコマンド#

組み込みのコマンドを使用して、テンプレート形式で文を補完することもできます。例えば、ループ文(for、foreach)、String.format () で文字列を囲む、型変換で式を囲む、(非)空の判定やその他の判定文に基づいて if 文を生成する、instanceOf を使用して分岐判定文を生成するなどがあります。使用方法も非常に簡単で、式の後にドット。を押し、ヒントを入力するか、リストから候補を選択します。一般的な候補には GIF のデモが表示されます。

var 宣言#

image

null 判定#

image

notnull 判定#

image

nn 判定#

image

for ループ#

image

fori インデックス付きループ#

image

not 否定#

image

if 条件判定#

image

cast キャスト#

live98

return 戻り値#

live99

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。