JSP
Les
JSP (Java Server Pages) sont une technologie Java qui permettent la génération de pages web dynamiques, en utilisant du Java qui est compilé sur le serveur, de la même façon que le
PHP.
Extension des fichiers JSP : .jsp
Il faut un serveur capable de compiler le code JSP, comme
TomCat
<%@ page import="java.util.*" %>
<%! int i = 0; %> //déclaration globale
<%! dateDuJour = new java.util.Date(); %> //utilisation des librairies Java
//fonction :
<%!
int minimum(int v1, int v2) {
if (v1 < v2)
return v1;
else
return v2;
}
%>
<%= expression %>
<%-- Commentaires de la page JSP --%>
Ecrire du code HTML : out.print("<div>toto</div>");
Après, tout le code JSP est du code Java classique.
Redirection :
<html>
<body>
<p>Page initiale appelée</p>
<jsp:forward page="forward.htm"/>
</body>
Inclusion de page :
<include file="toto.jsp" %> //inclut le fichier toto.jsp dans le source JSP et l'ensemble est compilé ensuite
<jsp:include page="stat.jsp"/> //inclut le fichier stat.jsp au moment où la JSP est exécutée
Récupération d'un paramètre POST :
request.getParameter("param1")
Mettre et récupérer des valeurs en session :
session.setAttribute("var","0");
session.getAttribute("message")
//vaut null si la variable n'existe pas
Exemple de fichier de connexion à inclure
|
<%@page import="java.sql.*"%>
<%@page import="oracle.jdbc.*"%>
<%@page import="oracle.sql.*"%>
<%
Connection conn=null;
try
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn = DriverManager.getConnection("jdbc:oracle:thin:@basededonnees:port:instancedelaBD",
"login", "mdp");
}
catch(SQLException e)
{
//si on veut afficher un message d'erreur
session.setAttribute("err", "La connexion à la base de données est impossible. Merci de recommencer ultérieurement.<br/><br/>Nous sommes désolés pour ce désagrément.");
//message d'erreur qui sera affiché dans la page affichée ensuite
%><jsp:forward page="/pageredirection.jsp"/><%
}
%>
|
Envoyer, uploader des fichiers sur le serveur
|
Le serveur doit posséder ces librairies (à télécharger, et à placer dans le bon répertoire) :
- cos.jar et commons-fileupload-1.1.jar (FileUpload) : Ces librairies permettent
de transférer un fichier du client jusqu'à un répertoire du serveur.
- commons-io-1.1.jar : Participe à la récupération des données d'un formulaire
contenant un fichier.
Le formulaire d'envoi doit être de type
enctype="multipart/form-data"
Soit la zone de saisie du fichier et le bouton Parcourir :
<input name="champfichier" type="file" size="15">
boolean isMultipart = FileUpload.isMultipartContent(request);
MultipartRequest upload = null;//pour lire les parametres, dont le fichier
if(isMultipart)
{
//on récupère les données si on peut
try{
upload = new MultipartRequest(request,getServletContext().getRealPath("/")+"/fichiers/",null);}
catch(Exception e){e.printStackTrace();}
Le fichier est écrit sur le serveur.
On peut aussi récupérer le nom du fichier écrit :
String nomFichier = (String)upload.getParameter("champ_fichier");