Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo personalizar la ruta de los archivos cargados en ueditor? ¿Cómo personalizar la ruta de los archivos cargados en ueditor?

¿Cómo personalizar la ruta de los archivos cargados en ueditor? ¿Cómo personalizar la ruta de los archivos cargados en ueditor?

ueditor es un editor de texto enriquecido de código abierto WYSIWYG desarrollado por el departamento de I + D de front-end WEB de Baidu. Es liviano, personalizable y tiene una excelente experiencia de usuario.

El código abierto se basa en la licencia BSD y todo el código fuente se puede modificar y utilizar libremente dentro del alcance de la licencia.

El lanzamiento de Baidu UEditor puede ayudar a muchos desarrolladores de sitios web a resolver los problemas encontrados al desarrollar editores de texto enriquecido, ahorrarles a los desarrolladores mucho tiempo necesario para desarrollar editores de texto enriquecidos y reducir efectivamente los costos de desarrollo de las empresas. . FireFox, Maxthon, Safari y Chrome

6. Mejor experiencia

7. Soporte continuo de un equipo de control de calidad profesional, que se ha aplicado a las principales líneas de productos de Baidu.

Pasos

1. Agregue la ubicación del paquete jar: jsp en la carpeta lib en el directorio raíz del archivo. Copie el paquete jar en web-inf en la carpeta lib en buildpath

2 Cambie la ruta URL en config.js a la ruta raíz correcta del complemento UEidtor en su proyecto

3. Introduzca el archivo de configuración config.js en el archivo jsp y luego introduzca el archivo de código fuente all.js. (Preste atención al orden)

4. Cargue el contenedor y cree una instancia del contenedor

1. Modifique la URL del archivo de configuración config.js al directorio raíz del complemento. generalmente una ruta absoluta.

2. Modifique el prefijo de la ruta de acceso en el elemento de configuración de carga de imagen de config.json al nombre del proyecto y modifique la ruta del archivo de carga y la ruta de acceso según corresponda.

Una vez que la configuración sea correcta, UEditor proporcionará una función de carga para ayudarnos a cargar imágenes.

Pero la ruta de carga estará en la carpeta temporal del proyecto implementado.

Después de que Tomcat cancele la implementación, los archivos cargados se eliminarán junto con los archivos de implementación del proyecto

3. Implemente la carga de imágenes en una ruta personalizada

Al procesar el nombre del archivo cargado, por favor. Tenga cuidado de no utilizar chino.

De lo contrario, aún necesitará realizar algún procesamiento para leer el archivo correctamente.

4. (1) Primero anule el método UEidtor para obtener la ruta en jsp

// anule el método UEditor para obtener la ruta

UE.Editor .prototype. _bkGetActionUrl = UE.Editor.prototype.prototype.getActionUrl = function(action) {

//La ruta determinada aquí es el nombre de la acción establecida en config.json para cargar

if (action == 'uploadimage') {

return 'mons.CommonsMultipartResolver">

Definir métodos para cargar y leer archivos en el controlador

/**

* SpringMVC usa MultipartFile para cargar archivos

* Aquí usamos @RequestParam() para especificar que el archivo cargado es MultipartFile

* @throws IOException

*/

@RequestMapping("uploadImage")

@ResponseBody // Aquí upfile es el nombre del formulario de envío de imágenes en la configuración.

public Map uploadImage(@RequestParam("upfile") CommonsMultipartFile upfile, solicitud HttpServletRequest) lanza IOException{

//Nombre original del archivo

String fileName=upfile.getOriginalFilename();

/// Para evitar procesos simples repetidos

String nowName=new Date().getTime()+"_" + fileName;

if(!upfile.isEmpty()){

//Subir ruta de ubicación

String path0 = "D:\\\ eclipseworkspace\\ \\maven-web\\src\\main\\\\webapp\\upload\\"+nowName;

/Nuevo archivo según ruta

Archivo newFile = nuevo archivo (ruta0);

/Copy

FileCopyUtils.copy(upimage.getBytes(), newFile);

}

Devolver resultados Información (requerida por UEditor)

Map map = new HashMap();

//Si la carga se realizó correctamente

mapa.

put("estado", "SUCCESS");

/now nombre de archivo

map.put("title", nowName);

//Archivo nombre original

map.put("original", fileName);

//Tipo de archivo .+ sufijo

map.put("type", fileName .substring(upfile.getOriginalFilename().lastIndexOf(".")) );

/Ruta del archivo

map.put("url", "...");

/File type.put("url", "/"+nowName+"/getImage.do");

//Tamaño del archivo en bytes

map.put("size", upfile.getSize()+"");

devolver mapa;

}

/**

* Leer archivo

**

@RequestMapping("{imgName}/getImage")

public void readImg(@ PathVariable("imgName " ) String imgName, respuesta HttpServletResponse)

throws Exception {

// Establece el tipo de retorno del archivo

response.setContentType("image/*")

/Ruta del archivo ((\\) en Windows, //(\\) en Linux, ambas deben ser rutas absolutas)

String imgPath=" D:+imgName;

/Clase de archivo en java para representar un archivo

Imagen de archivo = new File(imgPath);

/Prueba si esta ruta de archivo existe (es decir, si este archivo existe)

if (!image.exists()) {

return;

}

//FileUtils. readFileToByteArray(File file) Convierte el archivo en una matriz de bytes y lo devuelve

response.getOutputStream().write(FileUtils.readFileToByteArray(image));

/ / Cuando se usa Java una secuencia, tendrá un búfer y enviará datos de acuerdo con un método que crea que es más eficiente:

//Envía los datos al búfer y luego los envía todos a la vez cuando el búfer esté lleno. Cuando el búfer está lleno, envía los datos todos a la vez en lugar de enviarlos por separado.

// Flush() significa forzar el envío de los datos del búfer sin esperar hasta que el búfer esté lleno.

response.getOutputStream().flush();

response.getOutputStream().close()

}