bboss mvc大文件上传及or mapping存储大文件机制详解

简介: 继续上两篇文章: bboss mvc文件上传下载实战演练-http://yin-bp.iteye.com/blog/1130035 bboss mvc文件上传下载实战进阶-http://yin-bp.
继续上两篇文章:
bboss mvc文件上传下载实战演练- http://yin-bp.iteye.com/blog/1130035
bboss mvc文件上传下载实战进阶- http://yin-bp.iteye.com/blog/1131637

本文着重介绍bboss mvc大文件上传和利用持久层的or mapping机制存储大文件功能介绍,切入正题

功能点说明:
1.jsp form附件上传表单
2.jquery easyui 表单提交
3.mvc控制附件处理方法
4.绑定附件值对象
5.利用or mapping技术持久化附件信息和附件内容

大致流程如下:
通过将表单提交的附件信息传递给控制方法,mvc将表单数据以及附件信息封装到DeskTopBackGround对象中,利用持久层组件将该附件信息存储到数据库中。

下面逐一说明:

首先介绍各个层面都要用到的附件值对象
public class DeskTopBackGround {	
	private String cn_name;
	private Timestamp creatdate;
         private String filename;
	@Column(type="blobfile")
	private MultipartFile picture;
         。。。//省略get/set方法
}


DeskTopBackGround 中的属性MultipartFile picture包含了附件信息和附件内容,需要注意的是,必须通过@Column(type="blobfile")注解说明附件类型,即是一个blob二进制附件还是一个clob文本附件,分别对应为:@Column(type="blobfile")和@Column(type="clobfile"),这样ormapping机制就能清楚地进行相应的处理。


jsp 附件上传表单
 <form action=""  method="POST" id="addbackground" enctype="multipart/form-data">
    <table>
    <tr>
       <td>
    	名称:<input type="text" name="cn_name" id="cn_name"/>
       </td>
    </tr>
     <tr>
     	<td>
   		 附件:<input type="file" name="picture" id="file" />
     	</td>
   	 </tr>
    <tr>
    	<td>
    <input type="button" class="button" value="添加背景图片" onclick="addBackGround(this)" />
	 	</td>
 	</tr>									
	</table>									
	</form>	


jquery-easyui form表单提交操作:

 $("#addbackground").form('submit', {
				    "url": "uploadBackGround.page",//控制器请求url
				    onSubmit:function(){			
						//显示遮罩							
						blockUI();	
				    },
				    success:function(responseText){	
				    	//去掉遮罩	
						unblockUI();
						if(responseText == "success"){
							$.messager.alert("提示对话框" , "附件上传成功!");
							queryList();
						}
						else
						$.messager.alert("提示对话框" , "附件上传失败:"+responseText);	
				    }
				});	


mvc控制附件处理方法
public  @ResponseBody String uploadBackGround( DeskTopBackGround bean)
	{
		try
		{
			bean.setFilename(bean.getPicture().getOriginalFilename());//设置附件名称到filename属性
bean.setCreatdate(new Timestamp(new Date().getTime()));//设置创建时间
			String sql = "insert into td_sm_desktopstylecustom(filename,creatdate,cn_name,picture) values(#[filename],#[creatdate],#[cn_name],#[picture])";
			SQLExecutor.insertBean(sql, bean);
			return "success";
		}
		catch (Exception e)
		{
			return "fail:"+e.getMessage();
		}
		
	}


控制方法包含一个DeskTopBackGround bean参数,mvc框架根据表单的信息生成DeskTopBackGround 对象实例,uploadBackGround方法对该实例进行相应的处理后,通过持久层的or mapping接口存储到数据库表中:
SQLExecutor.insertBean(sql, bean);

然后将处理结果信息相应到客户端,客户端进行相应的提示:
$.messager.alert("提示对话框" , "附件上传成功!");


后记
到此本文的正文内容就介绍完了,至于mvc配置文件和持久层数据源配置请参考博客中相关文章:
bboss mvc基础配置介绍- http://yin-bp.iteye.com/blog/1139608
bbossgroups 开发系列文章之-最佳实践- http://bbossgroups.group.iteye.com/group/wiki/3092-mvc-bboss-config
bboss persistent框架数据库连接池配置介- http://yin-bp.iteye.com/blog/352599














目录
相关文章
|
6月前
|
设计模式 前端开发 Java
了解 Spring MVC 架构、Dispatcher Servlet 和 JSP 文件的关键作用
Spring MVC 是 Spring 框架的一部分,是一个 Web 应用程序框架。它旨在使用 Model-View-Controller(MVC) 设计模式轻松构建Web应用程序。
104 0
|
存储 前端开发 API
30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)
30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)
30分钟玩转Net MVC 基于WebUploader的大文件分片上传、断网续传、秒传(文末附带demo下载)
|
6月前
|
前端开发 JavaScript Java
springboot 出现 Cannot resolve MVC View ‘index‘ 问题解决办法,前后端不分离项目前端文件存放位置,已经如何访问
springboot 出现 Cannot resolve MVC View ‘index‘ 问题解决办法,前后端不分离项目前端文件存放位置,已经如何访问
743 1
|
前端开发 C#
C# Net MVC 大文件下载几种方式、支持速度限制、资源占用小
C# Net MVC 大文件下载几种方式、支持速度限制、资源占用小
|
JavaScript 前端开发 BI
mvc+js实现自动生成.doc文件
mvc+js实现自动生成.doc文件
140 0
mvc+js实现自动生成.doc文件
|
前端开发 Java Spring
解决Spring MVC整合Shiro出现无法访问静态资源文件的问题
解决Spring MVC整合Shiro出现无法访问静态资源文件的问题
257 0
|
缓存 前端开发 Java
Spring MVC 实现文件的上传和下载
文件的上传和下载是项目开发中非常常见的功能,例如图片、邮件附件的上传与下载,下载与上传音频、视频等。
226 0
Spring MVC 实现文件的上传和下载
|
开发框架 移动开发 前端开发
ASP.NET MVC中使用jQuery Ajax通过FormData对象异步提交图片文件到服务端保存并返回保存的图片路径
ASP.NET MVC中使用jQuery Ajax通过FormData对象异步提交图片文件到服务端保存并返回保存的图片路径
290 0
|
前端开发 Java 数据处理
SpringMVC:认识MVC了解URL映射到页面文件全过程
SpringMVC:认识MVC了解URL映射到页面文件全过程
SpringMVC:认识MVC了解URL映射到页面文件全过程
|
前端开发 Java Spring
Spring MVC报错: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'XXXController' method
Spring MVC报错: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'XXXController' method
257 0
Spring MVC报错: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'XXXController' method