как создать Java Pojo - PullRequest
       4

как создать Java Pojo

3 голосов
/ 07 марта 2012

Я хочу прочитать файл свойств и создать из него pojo. где ключ свойства - это переменная экземпляра с геттерами и сеттерами. а значение свойства - это тип данных переменной экземпляра. вход будет что-то вроде этого

className=Temp
packageName=com.temp
name=java.lang.String

вывод будет

package com.temp;
import java.lang.String;
class Temp{
  private String name

  //getters and setters
}

какой самый простой способ сделать это. Должен ли я создать файл и записать в него. Или есть лучший способ.

Ответы [ 4 ]

2 голосов
/ 07 марта 2012

Я однажды сгенерировал Java-файл, используя Apache Velocity , вы можете взглянуть на него.

Короче говоря, вы шаблонируете файл, а затем используете его для генерации того, что вы хотите.

1 голос
/ 07 марта 2012

отметьте http://codemodel.java.net/, если вы хотите создать более сложные классы.

1 голос
/ 07 марта 2012
Properties properties = new Properties();
try  
{
    FileWriter outFile = new FileWriter("filename.java");
    properties.load(new FileInputStream("filename.properties"));

    outFile.print("package ");
    outFile.println(properties.getProperty("packageName"));

    outFile.print("import ");
    outFile.println(properties.getProperty("name"));

    outFile.print("public class ");
    outFile.println(properties.getProperty("className"));
    outFile.println("{");
    // ... 
    outFile.println("}");

    outFile.close();
}  
catch (IOException e)  
{
    // handle the error 
}
1 голос
/ 07 марта 2012

Java Reflection специально для создания экземпляров объектов на лету. Будьте внимательны к удару производительности, который вы принимаете.

Отражение обычно используется программами, которым требуется возможность проверять или изменять поведение во время выполнения приложений, работающих на виртуальной машине Java. Это относительно продвинутая функция и должна использоваться только разработчиками, которые хорошо разбираются в основах языка. С учетом этого предостережения рефлексия является мощной техникой и может позволить приложениям выполнять операции, которые в противном случае были бы невозможны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...