2016-02-05 5 views
0

Я извлекаю переменную String из Database и сохраняю в переменной.Как преобразовать строку в объект в JAVA

String name = "Peter"  ---- >(retrieved from the database) 

У меня уже есть класс под названием Peter. Мне нужно инициализировать класс, используя полученную переменную name.

Предположит, что, независимо от String извлекается из базы данных, у меня есть класс, определенный для него в моем пакете ...

Есть ли способ, чтобы создать Object для String я извлекаемый из Database?

+0

Если Петр строка приходит в формате JSON можно десериализации, что и «превратить» его в Питер Объект –

+0

Питер просто наступающем из таблицы SQL. он просто вызывается как String. (делая вызов select sql) –

+0

@ Gowtham Shankar: вы должны добавить фрагмент кода здесь – Perpetualcoder

ответ

0

Использование Class.forName() - java.lang.reflect Если мы знаем имя класса &, если он имеет конструктор по умолчанию, мы можем создать объект таким образом.

Class myClass = Class.forName("MyClass"); 

Class[] types = {Double.TYPE, this.getClass()}; 
Constructor constructor = myClass.getConstructor(types); 

Object[] parameters = {new Double(0), this}; 
Object instanceOfMyClass = constructor.newInstance(parameters); 

См Java how to instantiate a class from string

+0

Что делать, если мы не знаем имя класса? Это мой сценарий –

+0

@GowthamShankar: я обновил свой ответ .. –

5
Class.forName(name).newInstance() 
+0

Вы можете прокомментировать это также. –

Смежные вопросы