Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java对象到域类对象的转换_Java_Spring Boot_Hibernate_Spring Data Jpa_Java Reflection - Fatal编程技术网

Java对象到域类对象的转换

Java对象到域类对象的转换,java,spring-boot,hibernate,spring-data-jpa,java-reflection,Java,Spring Boot,Hibernate,Spring Data Jpa,Java Reflection,我试图在运行时使用类名作为字符串创建实体对象。我尝试使用java反射查找并创建实例。但是,我无法将对象映射到相应的实体类类型 我的代码: public String update(String entityClassName) { Class<?> cls = Class.forName(entityName); Object obj = cls.newInstance(); } Class<?> cls = Class

我试图在运行时使用类名作为字符串创建实体对象。我尝试使用java反射查找并创建实例。但是,我无法将对象映射到相应的实体类类型

我的代码:

public String update(String entityClassName) {
            Class<?> cls = Class.forName(entityName);
            Object obj = cls.newInstance();

}
Class<?> cls = Class.forName(entityName);
<GivenEntityType> obj = cls.newInstance();
公共字符串更新(字符串entityClassName){
Class cls=Class.forName(entityName);
Object obj=cls.newInstance();
}
现在,我想将对象obj更改为动态的相应实体类型。因此,我可以访问对象中的公共字段

期望值:

public String update(String entityClassName) {
            Class<?> cls = Class.forName(entityName);
            Object obj = cls.newInstance();

}
Class<?> cls = Class.forName(entityName);
<GivenEntityType> obj = cls.newInstance();
Class cls=Class.forName(entityName);
obj=cls.newInstance();

你能告诉我吗?可能吗?

哪个公共字段?你怎么知道什么是
ClassType
?通过显示的代码,您可以确定它是一个
对象
。我在这里提到的类类型是我的实体类名@是的,但是如果可能的话,你会如何处理obj呢?事实上,我正在编写一个通用的restapi来进行更新。如果可能,则将使用entityManager.getTransaction().commit()更新obj。因此,这些更改将动态地影响受尊重的实体。这是不可能的。不过,您可以传入
类。然后您将拥有
tobj=cls.newInstance()。但是,如果您没有
t
的上限,它将擦除到
Object
,因此这可能对您没有多大帮助。