寻找有用的 Eclipse Java 代码模板 [已关闭]

2022-08-31 04:23:35

您可以在 Eclipse 中创建各种 Java 代码模板,方法是:

>窗口首选项> Java >编辑器>模板

例如:

sysout扩展为:

System.out.println(${word_selection}${});${cursor}

您可以通过键入后跟sysoutCTRL+SPACE

您目前使用哪些有用的 Java 代码模板?包括它的名称和描述,以及为什么它很棒。

我正在寻找模板的原始/新颖用途,而不是内置的现有功能。

  • 创建Log4J记录器
  • 从显示屏获取 swt 颜色
  • Syncexec - Eclipse Framework
  • 单例模式/枚举单例生成
  • 读取文件
  • 常量
  • 追踪
  • 格式字符串
  • 注释代码审查
  • 字符串格式
  • 尝试最终锁定
  • 消息格式 i18n 和日志
  • Equalsbuilder
  • 哈希码构建器
  • 弹簧物体注射
  • 创建文件输出流

答案 1

如果需要,以下代码模板将创建记录器并创建正确的导入。

断续器

${:import(org.slf4j.Logger,org.slf4j.LoggerFactory)}
private static final Logger LOG = LoggerFactory.getLogger(${enclosing_type}.class);

日志4J 2

${:import(org.apache.logging.log4j.LogManager,org.apache.logging.log4j.Logger)} 
private static final Logger LOG = LogManager.getLogger(${enclosing_type}.class); 

日志4J

${:import(org.apache.log4j.Logger)}
private static final Logger LOG = Logger.getLogger(${enclosing_type}.class);

来源

七月

${:import(java.util.logging.Logger)}
private static final Logger LOG = Logger.getLogger(${enclosing_type}.class.getName());

答案 2

此处的一些附加模板:链接 I - 链接 II

我喜欢这个:

读取文件

 ${:import(java.io.BufferedReader,  
           java.io.FileNotFoundException,  
           java.io.FileReader,  
           java.io.IOException)}  
 BufferedReader in = null;  
 try {  
    in = new BufferedReader(new FileReader(${fileName}));  
    String line;  
    while ((line = in.readLine()) != null) {  
       ${process}  
    }  
 }  
 catch (FileNotFoundException e) {  
    logger.error(e) ;  
 }  
 catch (IOException e) {  
    logger.error(e) ;  
 } finally {  
    if(in != null) in.close();  
 }  
 ${cursor} 

更新:此模板的 Java 7 版本是:

${:import(java.nio.file.Files,
          java.nio.file.Paths,
          java.nio.charset.Charset,
          java.io.IOException,
          java.io.BufferedReader)}
try (BufferedReader in = Files.newBufferedReader(Paths.get(${fileName:var(String)}),
                                                 Charset.forName("UTF-8"))) {
    String line = null;
    while ((line = in.readLine()) != null) {
        ${cursor}
    }
} catch (IOException e) {
    // ${todo}: handle exception
}