Maison interface Web tutoriel HTML JavaWeb如何将后台数据传递到前台页面HttpServletResponse和HttpServletRequest_html/css_WEB-ITnose

JavaWeb如何将后台数据传递到前台页面HttpServletResponse和HttpServletRequest_html/css_WEB-ITnose

Jun 24, 2016 am 11:50 AM

继续总结:Java经过Action后,怎么将action中返回的数据写到前台去

先了解下:HttpServletResponse对象

(1).Web服务器收到一个http请求,会针对每个请求创建一个HttpServletRequest和HttpServletResponse对象,向客户端发送数据找HttpServletResponse,从客户端取数据找HttpServletRequest;

(2).HttpServletResponse对象可以向客户端发送三种类型的数据:a.响应头b.状态码c.数据
(3).自己去看HttpServletResponse的API
(4).rsponse向前台返回数据:

a.使用OutputStream向客户端写入中文:

    response.setHeader("Content-type","text/html;charset=UTF-8");//向浏览器发送一个响应头,设置浏览器的解码方式为UTF-8    String data = "中国";    OutputStream stream = response.getOutputStream();    stream.write(data.getBytes("UTF-8"));
Copier après la connexion

b.使用Writer向客户端写入中文:

   response.setCharacterEncoding("UTF_8");//设置Response的编码方式为UTF-8    response.setHeader("Content-type","text/html;charset=UTF-8");//向浏览器发送一个响应头,设置浏览器的解码方式为UTF-8,其实设置了本句,也默认设置了Response的编码方式为UTF-8,但是开发中最好两句结合起来使用    //response.setContentType("text/html;charset=UTF-8");同上句代码作用一样    PrintWriter writer = response.getWriter();    writer.write("中国");
Copier après la connexion


看看企业一般怎么用:不管怎么用,无非就是封装成方法,向前台返回数据

Action:

public void searchModelIsUsed() {		<strong>HttpServletRequest req = ServletActionContext.getRequest();</strong>		boolean result1 = this.voucherTypeService.queryProductionMode();		if(result1==false){			//非生产模式则可修改模板			String result="is_PRODUCTION_MODE";			this.<strong>actionWrite</strong>("{success:'true',info:'" + result + "'}");		}else{			String vmId = req.getParameter("vmId");			boolean result = this.voucherTypeService.checkVoucherModelUsed(vmId);			this.actionWrite("{success:'true',info:'" + result + "'}");		}	}
Copier après la connexion
上面得到结果result,向前台返回显示数据用actionWrite

actionWrite如下:

	public void actionWrite(String result) {		if(result == null){			result = "";		}		HttpServletResponse resp = ServletActionContext.getResponse();		resp.setContentType("text/json;charset=UTF-8");		resp.setHeader("Cache-Control", "no-cache");		PrintWriter pw = null;		try {			pw = resp.getWriter();			pw.write(result);		} catch (IOException e) {			throw new EVoucherException("获取http写入流异常" + e.getMessage());		} finally {			if (pw != null) {				pw.close();			}		}	}
Copier après la connexion

可以看到actionWrite方法就是一个HttpServletResponse设置相关信息后利用PrintWriter向前台写数据

在前台JS中,就是响应response后台传递过来的数据就OK。

callback : function (options,success,response){	if(success){				checkSessionOverdue(response.responseText);		var msg = Ext.JSON.decode(response.responseText);	var msgInfo = msg.info;	if(msgInfo == 'true'){		Ext.Msg.alert("系统提示", "当前模板已存在历史数据,只能修改模板名称跟启用日期!");		isAddVoucherModel = false;		refreshAddVoucherModelForm(false);	}else if(msgInfo=='is_PRODUCTION_MODE'){		isAddVoucherModel = true;		refreshAddVoucherModelForm(false);	}else{		isAddVoucherModel = true;		refreshAddVoucherModelForm(false);	}			}}
Copier après la connexion





Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel est le but du & lt; Progress & gt; élément? Quel est le but du & lt; Progress & gt; élément? Mar 21, 2025 pm 12:34 PM

L'article traite du HTML & lt; Progress & GT; élément, son but, son style et ses différences par rapport au & lt; mètre & gt; élément. L'objectif principal est de l'utiliser & lt; Progress & gt; pour l'achèvement des tâches et & lt; mètre & gt; pour stati

Quel est le but du & lt; datalist & gt; élément? Quel est le but du & lt; datalist & gt; élément? Mar 21, 2025 pm 12:33 PM

L'article traite du HTML & lt; Datalist & GT; élément, qui améliore les formulaires en fournissant des suggestions de saisie semi-automatique, en améliorant l'expérience utilisateur et en réduisant les erreurs. COMMANDE COMPRES: 159

Quel est le but du & lt; mètre & gt; élément? Quel est le but du & lt; mètre & gt; élément? Mar 21, 2025 pm 12:35 PM

L'article traite du HTML & lt; mètre & gt; élément, utilisé pour afficher des valeurs scalaires ou fractionnaires dans une plage, et ses applications courantes dans le développement Web. Il différencie & lt; mètre & gt; De & lt; Progress & gt; et ex

Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Mar 17, 2025 pm 12:20 PM

L'article examine les meilleures pratiques pour assurer la compatibilité des navigateurs de HTML5, en se concentrant sur la détection des fonctionnalités, l'amélioration progressive et les méthodes de test.

Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Mar 17, 2025 pm 12:27 PM

L'article discute de l'utilisation des attributs de validation de formulaire HTML5 comme les limites requises, motifs, min, max et longueurs pour valider la saisie de l'utilisateur directement dans le navigateur.

Quelle est la balise Meta de la fenêtre? Pourquoi est-ce important pour une conception réactive? Quelle est la balise Meta de la fenêtre? Pourquoi est-ce important pour une conception réactive? Mar 20, 2025 pm 05:56 PM

L'article traite de la balise Meta de la fenêtre, essentielle pour la conception Web réactive sur les appareils mobiles. Il explique comment une utilisation appropriée garantit une mise à l'échelle optimale du contenu et une interaction utilisateur, tandis que la mauvaise utilisation peut entraîner des problèmes de conception et d'accessibilité.

Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Mar 20, 2025 pm 06:05 PM

L'article traite du & lt; iframe & gt; L'objectif de Tag dans l'intégration du contenu externe dans les pages Web, ses utilisations courantes, ses risques de sécurité et ses alternatives telles que les balises d'objet et les API.

Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Apr 04, 2025 pm 11:54 PM

GiteEpages STATIQUE Le déploiement du site Web a échoué: 404 Dépannage des erreurs et résolution lors de l'utilisation de Gitee ...

See all articles