如何在Netbeans代码模板中获取当前类名?
我想在Netbeans中为记录器编写代码模板:如何在Netbeans代码模板中获取当前类名?,netbeans,code-templates,Netbeans,Code Templates,我想在Netbeans中为记录器编写代码模板: org.slf4j.LoggerFactory.getLogger(XXXXXX.class).warn("${cursor}"); 我在中找不到将当前类名插入模板的语法(请参见上面的XXXXXX占位符)。要获取当前类名,您需要在代码模板中使用它:${classVar editable=false currClassName default=getClass()}我创建了以下代码模板: private static final ${LOGGER_
org.slf4j.LoggerFactory.getLogger(XXXXXX.class).warn("${cursor}");
我在中找不到将当前类名插入模板的语法(请参见上面的XXXXXX占位符)。要获取当前类名,您需要在代码模板中使用它:
${classVar editable=false currClassName default=getClass()}
我创建了以下代码模板:
private static final ${LOGGER_TYPE type="org.slf4j.Logger" default="Logger" editable=false} LOGGER = ${LOGGER_FACTORY type="org.slf4j.LoggerFactory" default="LoggerFactory" editable=false}.getLogger(${CLASS editable="false" currClassName}.class);
我把它和缩写log
联系起来
因此,在光标处:
...
public class MyClass {
|
...
我键入log
+选项卡,NetBeans展开文本:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
...
public class MyClass {
private static final Logger LOGGER = LoggerFactory.getLogger(MyClass.class);
...
我还:
+选项卡logd
+选项卡logw
+选项卡logi
+选项卡loge
${LOGGER_CONST default="LOGGER" editable=false}.debug("${logMessage}");
${LOGGER_CONST default="LOGGER" editable=false}.warn("${logMessage}");
${LOGGER_CONST default="LOGGER" editable=false}.info("${logMessage}");
${LOGGER_CONST default="LOGGER" editable=false}.error("${logMessage}", ex);
这将产生:
LOGGER.debug("logMessage");
LOGGER.warn("logMessage");
LOGGER.info("logMessage");
LOGGER.error("logMessage", ex);