*1. Dirección de descarga de Bootstrap-FileInput Plug-in Git Descargar
https://github.com/kartik-v/bootstrap-fileinput.git
2. Resuelva el uso de Bootstrap-FileInput para obtener el valor de retorno
Subir fotos
$ ("#file-0a"). FileInput ({ifoadUrl: "/upload_img", // cargó el UrlallowedFileExtensions para cargar la imagen: ['jpg', 'png', 'gif'], sobrewriteInitial: false, falso ,filesize: 1000, // subiendo el tamaño máximo del archivo maxfiles: 1, 1, 1,/upciled/uploged maxim. El número máximo de archivos inicialcaption: "Cargue el logotipo del comerciante", // El valor del cuadro de texto inicial // permitidofiletypes: ['imagen', 'video', 'flash'], slugcallback: function (filename) {return fileName.replace ('(', '_'). Reemplazar (']', '_');});Tenga en cuenta que después de cargar el evento de imagen, obtenga el método de escritura de valor de retorno
$ ('#file-0a'). on ('fileUploaded', function (event, data, priewID, index) {var form = data.form, files = data.files, extra = data.extra, respuesta = data.Response, lector = data.reader; console.log (respuesta);//imprime de la ruta de imprenta.página de JSP
<input id = "file-0a" type = "file" multipledata-min-file-cunt = "1" name = "upload_logo">
donde data-min-file-count = "1" se refiere al número mínimo de archivos cargados
3. Código del servidor
Usar el propio complemento de Spring para cargar, el marco es SpringMVC
Frijol
import java.util.list; imagen de clase pública {Lista privada <String> Paths; public List <String> getPaths () {return raths;} public void setPaths (list <string> rutas) {this.paths = raths;}}Controlador
@ResponseBody@requestMapping (value = "upload_img", método = requestmethod.post) Public Picture uploadIloadImage (@RequestParam multipartfile [] upload_logo) lanza IOException {log.info ("upload imagen"); imagen pic = nueva (); list <string> rutas = new arraylist <String> (); UploadUtil.getFolder (); for (multipartFile myFile: upload_logo) {if (myFile.isEmpty ()) {log.info ("archivo no cargado"); } else {log.info ("Longitud del archivo:" + myFile.getSize ()); log.info ("Tipo de archivo:" + myFile.getContentType ()); log.info ("Nombre del archivo:" + myFile.getName ()); log.info ("Nombre del archivo:" + myFile.getOriginalFileName ()); log.info("========================================================================================= ================================================================================================================================================================================= ¡ ================================================================================================================================================================================= ¡ ================================================================================================================================================================================================. UploadUtil.WriteFile (myFile.getOriginalFileName (), dir, myFile.getInputStream ()); log.info ("Path de archivo:"+ruta); raths.add (ruta);}} pic.setpaths (rutas); return pic;}subagua
Private static final logger log = loggerFactory.getLogger (uploadUtil.class); private uploadUtil () {} private static simpledateFormat fullsdf = new SimpleDateFormat ("yyyymmddhhmmsssss"); private static SimpleDateFormat folder = new SimpleDateFormat("yyyy" + File.separator + "MM" + File.separator + "dd");/*** Return to yyyy File.separator MM File.separator dd format string * * @return*/public static String getFolder() {return folder.format(new Date());}/*** File upload* * @param srcname* nombre de archivo original* @param dirname* nombre del directorio* @param entrada* transmisión de entrada para guardar* @return retrocede la ruta que se guardará en la base de datos*/public static string writeFile (string srcname, string direRname, inputStream input) lanza IOException {log.info (srcName); // uploaded directorioy, este directorio de directorio, este directorio de directorio, este directorio de virtual de virtual de virtual de virtual de virtual de virtual, es la virtual de la ventaja, es virtual, la virtual de virtual de la ventaja, es virtual, la virtual de la ventaja, es virtual, la virtual de la ventaja, el directorio de la ventaja, la virtual, la virtual, la virtual es la virtual de la ventaja. en el servidor.xml de Tomcat String uploadDir = contextUtil.getSysprop ("upload_dir"); // Establezca la ruta de carga // Retir la ruta de acceso del directorio virtual String virtualDir = contextUtil.getSysprop ("virtual_dir"); // Establecer la ruta de acceso de su directorio virtual // rename el archivo if (nenull! = srulry) {srcName) srcname.substring (srcname.indexof ("."));} else {srcname = ".jpg";} string filename = ""; // Obtener la ruta de archivo para cargar el nombre de archivo = uploadDir + file.separator + dirname + file.separator + fullsdf.format (nuevo date () + srcname a la cadena de datos SavePath = FileName.replace (uploadDir, ""); savePath = virtualDir + savePath.replace ("//", "/"); archivo de archivo = new File (fileName); if (! File.getParentFile (). Exists ()) {File.getParentfile (). FileOutputStream (archivo); // una vez 30kbbyte [] readBuff = new byte [1024 * 30]; int count = -1; while (count = input.read (readBuff, 0, readbuff.length))! = -1) {fos.write (readBuff, 0, count);} fos.flush (); fos.close ();4. Resuelva algunos problemas encontrados durante la carga
Si se encuentra con un clic para cargar, la barra de progreso se muestra como 100%, y la página JSP muestra [objeto, objct], luego preste atención a si el objeto JSON devuelto está en segundo plano.
Lo anterior es el método del complemento FileInput de Bootstrap para implementar múltiples cargas de archivos que el editor le ha presentado. Espero que te sea útil. Si tiene alguna pregunta, déjame un mensaje y el editor le responderá a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!