Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.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 如何从变量中指定Spring模型的列名_Java_Spring_Hibernate - Fatal编程技术网

Java 如何从变量中指定Spring模型的列名

Java 如何从变量中指定Spring模型的列名,java,spring,hibernate,Java,Spring,Hibernate,我有一个Sring hibernate模型,如下所示 @Entity @Table(name = "client") public class Category { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name = "id") private long id; private String type; ... ... ... 我有大约50个专栏。现在,在向该表中插入新行时,如何动态指定列名 Client cli

我有一个Sring hibernate模型,如下所示

@Entity
@Table(name = "client")
public class Category {

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name = "id")
private long id;

private String type;
...
...
...
我有大约50个专栏。现在,在向该表中插入新行时,如何动态指定列名

Client client = new Client();
String columnName = "type";

如何使用string columnName中给定的列名更新客户机模型?

要更新表,我们需要从category对象中获取字段并为此设置新值,最后调用save()方法。 但是,如果要动态设置字段值,则需要使用Java反射方法查找类别对象中存在的属性。使用java中的字段对象提供的方法并使用它们。然后,在获得该字段后,调用该字段的set方法并更新该值。
Category.class.getDeclaredFields()

如果要动态设置列的值,可以使用Java反射概念。 看看Java反射概念,下面的链接可能会有所帮助


你的问题是什么?请解释一下,它可能实际上不起作用。JPA在加载时构建绑定,若您在运行时设法处理字段注释,则不会重新扫描。