¿Alguien sabe cómo cambiar el formato de Word exportado cuando se utiliza Freemarker para exportar Word? El formato predeterminado es doc.

Guarde el Word para exportarlo como un archivo en formato xml, abra el xml, agregue la etiqueta freemarker y luego guárdelo como un archivo outChairDoc.ftl.

El El primer paso es agregar el paquete Freemarker.jar.

El código del servlet es el siguiente: coloque outChairDoc.ftl en el paquete cn.skyclass.jiaowu.freemarker.template

public void doGet (solicitud HttpServletRequest, respuesta HttpServletResponse)

lanza ServletException, IOException {

configuración = nueva Configuración();

configuración.setDefaultEncoding("utf-8");

p>

createDoc(response);

} catch (Exception e) {

// TODO Bloque catch generado automáticamente

e.printStackTrace( );

}

}

public void createDoc(respuesta HttpServletResponse) arroja una excepción {

// Para completar en la plantilla Archivo de datos

Mapa dataMap = new HashMap();

dataMap.put("docTitle", "fdfdfdfdfdfdf información de usuario"); ; ChairInfogt; lista = new ArrayListlt;ChairInfogt;();

ChairInfochairInfo = new ChairInfo();

chairInfo.setChairTitle("dfdfd");

sillaInfo. setTeacherName("té");

sillaInfo.setStartTime(nueva fecha());

sillaInfo.setPlace("dfdfd");

list.add (chairInfo);

dataMap.put("chairInfoList", list);

// Establece el método y la ruta del dispositivo de la plantilla. FreeMarker admite múltiples métodos de carga de plantillas.

Puede recargar servlet, classpath y base de datos.

// Aquí nuestra plantilla se coloca bajo el paquete com.havenliu.document.template

configuration.setClassForTemplateLoading(this.getClass() ,

"/cn/skyclass/jiaowu/freemarker/template");

Plantilla t = null;

prueba {

// test.ftl es la plantilla a cargar

t = configuración.getTemplate("outChairDoc.ftl");

t.setEncoding("utf-8");

p>

} catch (IOException e) {

e.printStackTrace();

}

// Ruta y nombre del documento de salida

String fileName="Lecture List.doc";

respuesta.setContentType("application/msword");

respuesta.addHeader("Contenido-Disposición ", " adjunto; filename=" java.net.URLEncoder.encode(fileName, "UTF-8")); //Evita que los archivos exportados sean confusos

response.setCharacterEncoding("utf-8" );

PrintWriter out = respuesta.getWriter();

t.process(dataMap, out);

out.close();

}