Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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 在hibernate中加载百万行_Java_Sql_Database_Hibernate_Optimization - Fatal编程技术网

Java 在hibernate中加载百万行

Java 在hibernate中加载百万行,java,sql,database,hibernate,optimization,Java,Sql,Database,Hibernate,Optimization,如果我想在hibernate中获取数百万行,它将如何工作?冬眠会崩溃吗?我如何优化它。如果你读一个/写一个,它可能会工作得很好。您确定要以这种方式读取1000000行吗?这可能需要一段时间 如果您希望所有对象同时在内存中,那么很可能会遇到挑战 你可以通过另一种方式来优化它。例如,使用数据库工具可以比使用hibernate读取更快地从数据库转储数据 您可以在数据库中选择总和、最大值和计数,而无需通过网络返回一百万行 你到底想做什么?只带上你需要的栏目。请在测试环境中试用。通常您不会为此使用hibe

如果我想在hibernate中获取数百万行,它将如何工作?冬眠会崩溃吗?我如何优化它。

如果你读一个/写一个,它可能会工作得很好。您确定要以这种方式读取1000000行吗?这可能需要一段时间

如果您希望所有对象同时在内存中,那么很可能会遇到挑战

你可以通过另一种方式来优化它。例如,使用数据库工具可以比使用hibernate读取更快地从数据库转储数据

您可以在数据库中选择总和、最大值和计数,而无需通过网络返回一百万行


你到底想做什么?

只带上你需要的栏目。请在测试环境中试用。

通常您不会为此使用hibernate。如果需要执行批处理操作,请使用sql或hibernate包装器进行批处理操作。加载数百万条记录对您的应用程序来说不会有好结果。当gc运行时,您的应用程序会出现抖动,或者可能会崩溃。必须有另一种选择。

为此,最好使用带有行处理程序的spring jdbc工具。它将运行查询,然后一次对一行执行一些操作。

您应该尝试查看无状态会话界面,其示例可在此处找到:


通过获取行,您到底想要实现什么?把他们搬到别的地方去?搜索他们?报道他们?详细信息会有帮助。可能重复的。有许多问题与相同的主题,请。1行一百万次?1米1次?