2013-11-01 76 views
1

我有一个域名组织,它有一个名为logo的属性。徽标的类型是MultipartFile。但问题是我想将文件保存在WEB-INF /资源的目录中,并只将原始文件名保存到数据库中。我的域类如下:使用Spring MultipartFile保存文件名(基于注释)

public class Organization { 

    @Id 
    @GeneratedValue 
    private Integer id; 
    @Column 
    private MultipartFile logo; 
    @Column 
    private String title; 

    //getters & setters 

} 

我的JSP的形式是像波纹管:

<f:form method="post" commandName="organization" action="${ requestScope.requestURI }" enctype="multipart/form-data"> 
    <f:hidden path="id"/> 

     <dt><f:label path="logo">Logo</f:label></dt> 
     <dd><input type="file" name="logo" class="form-control input-sm"/></dd> 

     <dt><f:label path="title">Title</f:label></dt> 
     <dd><f:input path="title" class="form-control input-sm"/></dd> 

     <dd> 
      <f:button type="submit" name="submit" class="btn btn-success btn-sm">Submit</f:button> 
      <f:button type="reset" class="btn btn-warning btn-sm">Reset</f:button> 
     </dd> 
    </dl> 
</f:form> 

在我的数据库我用VARCHAR类型标识列。所以现在我想将文件上传为MultipartFile并将文件保存在WEB-INF的目录中。但请记住,我只想将originalFileName保留到我的数据库徽标字段中。你能帮我显示控制器的实现和其他过程吗?我使用基于Spring注解的配置。所以我的配置文件如下:

public class WebAppConfig extends WebMvcConfigurerAdapter { 
    /... 
    @Bean 
    public CommonsMultipartResolver getMultipartResolver() { 
     CommonsMultipartResolver cmr = new CommonsMultipartResolver(); 
     cmr.setMaxUploadSize(1*1024*1024); 
     return cmr; 
    } 
    //... 
} 

你能帮我详细一点吗?由于

+0

控制器代码你检查Multipartfile的文档? –

+0

@ShoaibChikate nope!你有文档链接? – jRoadie

回答