Java BFILE是否可以与JPA一起用于在Oracle和Spring之间共享图像?
我正在开发一个由数据库支持的web应用程序,该数据库将包含数百万张图像作为其主要内容。我用Java编写SpringMVC,并使用JPA(EclipseLink)连接到Oracle11g(11.2.0.1.0)数据库。web服务器(运行Tomcat)和数据库服务器是不同的机器 我的对象模型中当前有以下代码: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; 这将导致我的
@Lob @Basic(fetch=FetchType.LAZY)
@Column (name = "data_file")
private byte[] dataArray;
这将导致我的表中出现BLOB列。我可以方便地使用Oracle SQL developer直接从数据库查看图像
问题是,为了在web应用程序中显示图像,我需要一个实际的文件,除此之外,我的理解是Spring要求该文件位于web应用程序目录中,或者至少位于我专门配置为允许访问的其他位置。这意味着我需要创建图像的临时副本,以便向用户显示它们。我希望这些图像只存在于一个数据库和web应用都可以访问的位置,如果可能的话,我希望允许其他程序或机器用户进行读取访问
我认为BFILE类型的设计允许外部文件甚至远程文件由数据库管理。我能用JPA的BFILE吗?它能满足我的需要吗?如果是这样,我将如何创建到BFILE列的映射
我的目标是:
迟来的评论,但你找到了暗示吗?