Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.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_Oracle_Jsf_Triggers - Fatal编程技术网

Java 与数据映射器模式的数据一致性

Java 与数据映射器模式的数据一致性,java,oracle,jsf,triggers,Java,Oracle,Jsf,Triggers,我正在开发一个用于安排物流配送的web应用程序。我使用Java、JSF2.0和OracleXE作为数据库。 在OracleXe中,我已经实现了序列和触发器来自动增加某些属性的ID。 我的问题是,如果我执行应用程序来添加一个新客户,那么我需要从数据库中检索递增的ID,然后将其保存在我的客户对象中。有没有其他方法可以直接从数据库中获取递增的ID?我不喜欢从数据库中选择ID的解决方案 谢谢如果您通过JDBC直接对数据库发出SQL(如果您使用的是对象关系映射层,API可能支持类似的功能),那么您可以在插

我正在开发一个用于安排物流配送的web应用程序。我使用Java、JSF2.0和OracleXE作为数据库。 在OracleXe中,我已经实现了序列和触发器来自动增加某些属性的ID。 我的问题是,如果我执行应用程序来添加一个新客户,那么我需要从数据库中检索递增的ID,然后将其保存在我的客户对象中。有没有其他方法可以直接从数据库中获取递增的ID?我不喜欢从数据库中选择ID的解决方案


谢谢

如果您通过JDBC直接对数据库发出SQL(如果您使用的是对象关系映射层,API可能支持类似的功能),那么您可以在插入过程中使用RETURNING子句。差不多

INSERT INTO table_name( column1, column2, ... , columnN )
  VALUES( :1, :2, ... , :N )
  RETURNING key_column INTO :new_key

这将返回触发器为
KEY\u列
填充到
:new\u KEY
绑定变量中的值。

是否可以将返回的键分配到变量中,例如整数?