Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.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/2/linux/24.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 BFILE是否可以与JPA一起用于在Oracle和Spring之间共享图像?_Java_Oracle_Spring Mvc_Jpa_Eclipselink - Fatal编程技术网

Java BFILE是否可以与JPA一起用于在Oracle和Spring之间共享图像?

Java BFILE是否可以与JPA一起用于在Oracle和Spring之间共享图像?,java,oracle,spring-mvc,jpa,eclipselink,Java,Oracle,Spring Mvc,Jpa,Eclipselink,我正在开发一个由数据库支持的web应用程序,该数据库将包含数百万张图像作为其主要内容。我用Java编写SpringMVC,并使用JPA(EclipseLink)连接到Oracle11g(11.2.0.1.0)数据库。web服务器(运行Tomcat)和数据库服务器是不同的机器 我的对象模型中当前有以下代码: @Lob @Basic(fetch=FetchType.LAZY) @Column (name = "data_file") private byte[] dataArray; 这将导致我的

我正在开发一个由数据库支持的web应用程序,该数据库将包含数百万张图像作为其主要内容。我用Java编写SpringMVC,并使用JPA(EclipseLink)连接到Oracle11g(11.2.0.1.0)数据库。web服务器(运行Tomcat)和数据库服务器是不同的机器

我的对象模型中当前有以下代码:

@Lob @Basic(fetch=FetchType.LAZY)
@Column (name = "data_file")
private byte[] dataArray;
这将导致我的表中出现BLOB列。我可以方便地使用Oracle SQL developer直接从数据库查看图像

问题是,为了在web应用程序中显示图像,我需要一个实际的文件,除此之外,我的理解是Spring要求该文件位于web应用程序目录中,或者至少位于我专门配置为允许访问的其他位置。这意味着我需要创建图像的临时副本,以便向用户显示它们。我希望这些图像只存在于一个数据库和web应用都可以访问的位置,如果可能的话,我希望允许其他程序或机器用户进行读取访问

我认为BFILE类型的设计允许外部文件甚至远程文件由数据库管理。我能用JPA的BFILE吗?它能满足我的需要吗?如果是这样,我将如何创建到BFILE列的映射

我的目标是:

  • 图像无需复制即可显示
  • 在Oracle中,文件作为文件(而不是字符串路径)进行管理
  • 我可以用JPA
  • 文件位于允许读取访问的普通磁盘位置
  • 我可以在Oracle SQL Developer中查看图像

  • 迟来的评论,但你找到了暗示吗?