Maison >interface Web >js tutoriel >Comment puis-je accéder aux variables Java à partir de JavaScript dans JSP ?

Comment puis-je accéder aux variables Java à partir de JavaScript dans JSP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-08 18:40:11409parcourir

How Can I Access Java Variables from JavaScript in JSP?

Accès aux variables Java en JavaScript

Dans le développement Web, il est souvent nécessaire de remplir les formulaires HTML avec les données du serveur. Dans ce contexte, explorons comment accéder aux variables Java en JavaScript dans le contexte de JSP (Java Server Pages).

EL (Expression Language)

Le langage d'expression (EL) est un outil pratique outil qui vous permet d'accéder aux variables et objets Java directement depuis JSP. Voici comment utiliser EL pour imprimer une variable Java nommée "foo" dans une balise de script :

<script>var foo = '${foo}';</script>

Utiliser des scripts

Vous pouvez également utiliser JavaScriplets (<% et %>) pour écrire du code Java directement dans JSP. Cela vous permet d'attribuer des variables Java aux variables JavaScript :

<script>
  <%
    String foo = "bar";
    pageContext.setAttribute("foo", foo);
  %>
  var foo = '<%= pageContext.getAttribute("foo") %>';
</script>

Conversion JSON

Pour les objets Java plus complexes, vous pouvez choisir de les convertir en chaînes JSON à l'aide d'une bibliothèque comme Gson. Cela peut être fait comme suit :

String someObjectAsJson = new Gson().toJson(someObject);

Remarque : Si vous utilisez une saisie contrôlée par l'utilisateur, n'oubliez pas de nettoyer les données pour éviter les attaques XSS (Cross-Site Scripting).

Références

  • [Page Wiki JSP : JavaScript](https://wiki.apache.org/jsp/JavaScript)
  • [Échapper à JavaScript dans JSP](https://stackoverflow.com/questions/7057574/how-to-escape-javascript- in-jsp)
  • [Appelez le servlet et invoquez le code Java depuis JavaScript](https://www.tutorialspoint.com/jsp/jsp_calling_servlet_javascript.htm)
  • [Utiliser les servlets et Ajax](https://www.javatpoint.com/servlet-ajax)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
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