[[oktatas:programozás:java_ee|< Java EE]]
====== Java EE Servlet ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2014, 2015
* Licenc: GNU Free Documentation License 1.3
* Web: http://szit.hu
===== A Java EE használata =====
Servletet készíthetünk javaee.jar vagy a servlet-api.jar segítségével.
Ha Glassfish használjuk, annak telepített helye a /usr/local/glassfish4/
akkor a javaee.jar útvonala:
/usr/local/glassfish4/glassfish/lib/javaee.jar
Ha csomagkezelő saját csomagjaiból telepítettük a tomcat szervert:
/usr/share/tomcat7/lib/servlet-api.jar
Dokumentáció:
* https://docs.oracle.com/javaee/7/api/
===== Egyszerű példa =====
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class Servlet1 extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException {
//~ request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
java.util.Date today = new java.util.Date();
out.println("\n\n\n" +
"\n\n" +
"\n" +
"Első servlet
\n"
+ today + "\n" + "\n");
}
}
Serv1
Servlet1
Serv1
/Serv1
SERVAPI=/usr/share/tomcat7/lib/servlet-api.jar
all:
javac -classpath $(SERVAPI) -d classes -encoding utf8 src/Servlet1.java
clean:
rm classes/*.class
install:
cp classes/Servlet1.class /var/lib/tomcat7/webapps/elso/WEB-INF/classes/
===== Átriányítás =====
response.sendRedirect("http://szit.hu");
===== Protokoll lekérdezése =====
request.getProtocol()
===== IP cím host lekérdezése =====
request.getRemoteAddr()
request.getRemoteHost()
===== Paraméterek átvétele =====
Az alábbi példában egy nagyon egyszerű azonosítást mutatok be, ahol
a felhasználó név és a jelszó egy HTML oldal űrlapjáról jön.
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class Login extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException {
PrintWriter out = response.getWriter();
String user = request.getParameter("user");
String pass = request.getParameter("pass");
if(user.equals("joska") && pass.equals("titok")) {
out.println("Sikeres bejelentkezés");
}else {
out.println("Hiba! A bejelentkezés sikertelen!");
}
}
}
===== Több servlet telepítője =====
Servlet
Servlet
Servlet
/Servlet
Login
Login
Login
/Login
===== Naplózás =====
log("test");
tail -f /var/log/tomcat7/localhost.2015-03-29.log
...
márc. 29, 2015 7:54:16 DU org.apache.catalina.core.ApplicationContext log
INFO: Count: test