Struts2 图片上传、缩放、剪切处理 第一节
Struts2 图片上传、缩放、剪切处理 第二节
?
?
Struts2 图片上传、缩放、剪切处理 第一节
1、技术目标:
?
为项目"影片管理"加入图片上传功能使用struts2完成图片上传将上传的图片重命名并保存到web服务器?
注意:本文所用项目为"影片管理",参看
http://hotstrong.iteye.com/blog/1156785
提示:本文示例项目已提供下载
2、MySQL数据表film(影片表)加入列imgurl(影片海报图片链接),执行如下SQL:
?
?
??
?
Film(影片类),
?
?
?
5、在WebRoot(页面路径)下创建文件夹images,放一张提示图片error.gif(示例项目中提供),在影片无海报图片时显示
6、在添加、修改影片页面(insertFilm.jsp、updateFilm.jsp)中
加入文件选择对话框并设置表单属性enctype,如下:
?
添加影片页面效果图:
?
?
insertFilm.jsp代码,
?
?
?
?
修改页面效果图:
?
?
updateFilm.jsp代码,
?
?
??
?
?
7、struts.xml中添加、修改影片Action的配置中加入的Struts2的文件处理拦截器,配置如下:
?
?
??
fileUploadStack拦截器的参数allowedTypes为限制上传文件的类型,文件类型与限制方式的对应关系如下:
文件类型?? 限制方式
==================================
.a ? ? ? application/octet-stream
.ai ? ? ?application/postscript ? ?
.aif ? ? audio/x-aiff ? ?
.aifc ? ?audio/x-aiff ? ?
.aiff ? ?audio/x-aiff ? ?
.au ? ? ?audio/basic ? ?
.avi ? ?video/x-msvideo ? ?
.bat ? ?text/plain ? ?
.bcpio application/x-bcpio ? ?
.bin ? ?application/octet-stream ? ?
.bmp ? ? image/x-ms-bmp ? ?
.c ? ? ? text/plain ??
.cdf ? ? application/x-cdf ? ?
.cdf ? ? application/x-netcdf ? ?
.cpio ? ?application/x-cpio ? ?
.csh ? ? application/x-csh ? ?
.css ? ? text/css ? ?
.dll ? ? application/octet-stream ? ?
.doc ? ? application/msword ? ?
.dot ? ? application/msword ? ?
.dvi ? ? application/x-dvi ? ?
.eml ? ? message/rfc822 ? ?
.eps ? ? application/postscript ? ?
.etx ? ? text/x-setext ? ?
.exe ? ? application/octet-stream ? ?
.gif ? ? image/gif ? ?
.gtar ? ?application/x-gtar ? ?
.h ? ? ? text/plain ? ?
.hdf ? ? application/x-hdf ? ?
.htm ? ? text/html ? ?
.html ? ?text/html ? ?
.ief ? ? image/ief ? ?
.jpe ? ? image/jpeg ? ?
.jpeg ? ?image/jpeg ? ?
.jpg ? ? image/jpeg ? ?
.js ? ? ?application/x-javascript ? ?
.ksh ? ? text/plain ? ?
.latex ?application/x-latex ? ?
.m1v ? ? video/mpeg ? ?
.man ? ? application/x-troff-man ? ?
.me ? ? ?application/x-troff-me ? ?
.mht ? ? message/rfc822 ? ?
.mhtml ?message/rfc822 ? ?
.mif ? ? application/x-mif ? ?
.mov ? ? video/quicktime ? ?
.movie ?video/x-sgi-movie ? ?
.mp2 ? ? audio/mpeg ? ?
.mp3 ? ? audio/mpeg ? ?
.mpa ? ? video/mpeg ? ?
.mpe ? ? video/mpeg ? ?
.mpeg ? ?video/mpeg ? ?
.mpg ? ? video/mpeg ? ?
.ms ? ? ?application/x-troff-ms ? ?
.nc ? ? ?application/x-netcdf ? ?
.nws ? ? message/rfc822 ? ?
.o ? ? ? application/octet-stream ? ?
.obj ? ? application/octet-stream ? ?
.oda ? ? application/oda ? ?
.p12 ? ? application/x-pkcs12 ? ?
.p7c ? ? application/pkcs7-mime ? ?
.pbm ? ? image/x-portable-bitmap ? ?
.pdf ? ? application/pdf ? ?
.pfx ? ? application/x-pkcs12 ? ?
.pgm ? ? image/x-portable-graymap ? ?
.pl ? ? ?text/plain ? ?
.png ? ? image/png ? ?
.pnm ? ? image/x-portable-anymap ? ?
.pot ? ? application/vnd.ms-powerpoint ? ?
.ppa ? ? application/vnd.ms-powerpoint ? ?
.ppm ? ?image/x-portable-pixmap ? ?
.pps ? ? application/vnd.ms-powerpoint ? ?
.ppt ? ? application/vnd.ms-powerpoint ? ?
.ps ? ? ?application/postscript ? ?
.pwz ? ? application/vnd.ms-powerpoint ? ?
.py ? ? ?text/x-python ? ?
.pyc ? ? application/x-python-code ? ?
.pyo ? ? application/x-python-code ? ?
.qt ? ? ?video/quicktime ? ?
.ra ? ? ?audio/x-pn-realaudio ? ?
.ram ? ? application/x-pn-realaudio ? ?
.ras ? ? image/x-cmu-raster ? ?
.rdf ? ? application/xml ? ?
.rgb ? ? image/x-rgb ? ?
.roff ? ?application/x-troff ? ?
.rtx ? ? text/richtext ? ?
.sgm ? ? text/x-sgml ? ?
.sgml ? ?text/x-sgml ? ?
.sh ? ? ?application/x-sh ? ?
.shar ? ?application/x-shar ? ?
.snd ? ? audio/basic ? ?
.so ? ? ?application/octet-stream ? ?
.src ? ? application/x-wais-source ? ?
.sv4cpio application/x-sv4cpio ? ?
.sv4crc ?application/x-sv4crc ? ?
.swf ? ? application/x-shockwave-flash ? ?
.t ? ? ? application/x-troff ? ?
.tar ? ? application/x-tar ? ?
.tcl ? ? application/x-tcl ? ?
? ?
.tex ? ? application/x-tex ? ?
.texi ? ?application/x-texinfo ? ?
.texinfo application/x-texinfo ? ?
.tif ? ? image/tiff ? ?
.tiff ? ?image/tiff ? ?
.tr ? ? ?application/x-troff ? ?
.tsv ? ? text/tab-separated-values ? ?
.txt ? ? text/plain ? ?
.ustar ?application/x-ustar ? ?
.vcf ? ? text/x-vcard ? ?
.wav ? ? audio/x-wav ? ?
.wiz ? ? application/msword ? ?
.wsdl ? ?application/xml ? ?
.xbm ? ? image/x-xbitmap ? ?
.xlb ? ? application/vnd.ms-excel ? ?
.xls ? ? application/excel ? ?
.xls ? ? application/vnd.ms-excel ? ?
.xml ? ? text/xml ? ?
.xpdl ? ?application/xml ? ?
.xpm ? ? image/x-xpixmap ? ?
.xsl ? ? application/xml ? ?
.xwd ? ? image/x-xwindowdump ? ?
.zip ? ? application/zip
8、在FilmAction中加入一组与文件上传相关的属性,加入uploadFile方法,在添加、修改操作前调用uploadFile方法处理图片,代码如下:
?
?
??
?
9、在films.jsp页面的影片列表中呈现出图片,如下:
?
影片列表页面效果图:
?
?
?
films.jsp代码:
?
?
?
Struts2 图片上传、缩放、剪切处理 第二节
?
?