le téléchargement de fichiers public void (réponse HttpServletResponse) lève une exception {
Contexte ServletContext = this.getServletContext();
Chemin de chaîne = context.getRealPath("/download/awf.jpg");
String filename = path.substring(path.lastIndexOf("//") + 1);
// Si le fichier téléchargé est un fichier chinois, le nom du fichier doit être codé en URL ;
réponse.setHeader("Content-disposition", "attachment;filename="+ URLEncoder.encode(filename, "UTF-8"));
InputStream in = new FileInputStream(chemin);
int len = 0;
octet[] tampon = nouvel octet[1024];
OutputStream out = réponse.getOutputStream();
while ((len = in.read(buffer)) > 0) {
out.write(tampon, 0, len);
}
joindre();
out.close();
}
BeanUtils utilise :
BeanUtils.pupulate(bean,MapInstance);//Charger le bean avec la carte, qui contient la clé correspondant à l'attribut du bean et la valeur correspondant à la clé ;
BeanUtils.copyProperties(bean,MapInstance);//Copier la carte dans le bean ;
Le transfert est une demande, utilisant la même réponse et la même demande ;
Saut de page :
<1>String message = "<meta http-equiv='refresh' content='3;url=/webTwo/index.jsp'><a href='webTwo/index.jsp'>AAAA</a>";
this.getServletContext().setAttribute("message", message);
this.getServletContext().getRequestDispatcher("/message.jsp").forward(request, réponse);//Amène le message à la page de message pour l'afficher ;
<2>response.setHeader("refresh", "3;url='/webTwo/index.jsp'");
réponse.getWriter().write("Félicitations pour votre connexion réussie. S'il n'y a pas de transfert, veuillez cliquer sur le lien hypertexte <a href='webTwo/index.jsp'>AAAA</a>");
Code du programme :
//La table de codes que le programme utilise pour afficher doit contrôler la table de codes que le navigateur utilise pour ouvrir ;
// Utiliser la métatechnologie en HTML pour simuler les en-têtes de réponse http afin de contrôler le comportement du navigateur ;
// out.write("<meta http-equiv='content-type' content='text/html;charset=UTF-8'>".getBytes());
réponse.setCharacterEncoding("UTF-8");//Définir la table de codes utilisée par la réponse et contrôler la table de codes utilisée par la réponse pour écrire des données dans le navigateur ;
réponse.setHeader("Content-type", "text/html;charset=UTF-8");//Spécifiez la table de codes utilisée par le navigateur pour ouvrir les données ;
// Équivalent aux deux phrases ci-dessus :
// réponse.setContentType("text/html;charset=UTF-8");
Response.setDateHeader("expires",System.currentTimeMillis() + 1000*3600);//Définir la durée de validité de la session sur 10 minutes ;
Response.getWriter().write(data); Response.getWriter() --> return PrintWriter;
Response.setHeader("refresh","3");