public class MyServlet extends HttpServlet {
int globalVar; // shared by all threads
// executing the servlet
public void myMethod() {
int localVar;
}
}
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorldServlet extends HttpServlet {
public void doPost(HttpServletRequest req,
HttpServletResponse res) throws ServletException, IOException {
PrintWriter out;
res.setContentType("text/html");
out = res.getWriter();
out.println("<html><head></head>");
out.println("<body bgcolor=\"white\">");
out.println("<b>Hello World!</b>");
out.println("</body></html>");
out.close();
}
}
<html><head></head>
<body>
<form action="http://localhost:8080/examples/servlet/HelloWorldServlet"
method="POST">
<input type="submit" value="HelloWorld">
</form>
</body></html>
res.setContentType("text/html");
out = res.getWriter();
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class SurveyServlet extends HttpServlet {
private String choices[] =
{"Netscape Communicator", "Internet Explorer",
"Opera", "None of the above"};
}
public void doGet(HttpServletRequest req,
HttpServletResponse res)
throws ServletException, IOException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
out.println("<html><head>");
out.println("<title>Survey</title>");
out.println("</head><body>");
out.println("<form method=\"POST\">");
out.println("What is your favorite browser?");
out.println("<p>");
for (int i=0; i<choices.length; i++) {
out.println("<input type=\"radio\" name=\"survey\" " +
"value=\"" + i + "\">" + choices[i]);
out.println("<br>");
}
out.println("<p>");
out.println("<input type=\"submit\" value=\"Vote\">");
out.println("</form>");
out.println("</body></html>");
}
public void doPost(HttpServletRequest req,
HttpServletResponse res)
throws ServletException, IOException {
int survey[];
int total = 0;
// Determine number of survey response so far
survey = loadSurveyResults();
for(int i = 0; i < survey.length; i++)
total += survey[i];
// Get current survey response
String choice = req.getParameter("survey");
++total;
// Update survey results and save them to file
survey[Integer.parseInt(choice)]++;
saveSurveyResults(survey);
// Calculate resulting percentages
int result[] = new int[survey.length];
for (int i = 0; i < survey.length; i++) {
result[i] = Math.round(
100 * survey[i] / total);
}
// Send response to the client
res.setContentType("text/html");
PrintWriter out = res.getWriter();
showPage(out, result, survey, total);
}
private int[] loadSurveyResults() {
int[] survey = null;
File f = new File("data/survey.dat");
if(f.exists()) {
try {
ObjectInputStream is = new ObjectInputStream(
new FileInputStream(f));
survey = (int[]) is.readObject();
is.close();
} catch(IOException e) {
e.printStackTrace(System.out);
}
} else {
survey = new int[choices.length];
}
return survey;
}
private void saveSurveyResults(int survey[]) {
File f = new File("data/survey.dat");
try {
ObjectOutputStream output = new ObjectOutputStream(
new FileOutputStream(f));
output.writeObject(survey);
output.close();
} catch (IOException e) {
e.printStackTrace();
}
}
private void showPage(PrintWriter out,
int result[], int survey[], int total) {
out.println("<html><head><title>");
out.print("Survey Results");
out.println("</title><body>");
out.println("Thank you for participating in the survey!");
out.println("<p>");
out.println("Results:");
out.println("<p>");
out.println("<table>");
for (int i = 0; i<result.length; i++){
out.println("<tr>");
out.println("<td>" + choices[i]);
out.println("<td>" + result[i] + "%");
out.println("<td>" + survey[i]);
}
out.println("</table>");
out.println("<p>");
out.print("Total number of responses: ");
out.print(total);
out.println("</body></html>");
out.close();
}
<html><head> <title>Survey</title> </head><body> <form method="POST"> What is your favorite browser? <p> <input type="radio" name="survey" value="0">Netscape Communicator <br> <input type="radio" name="survey" value="1">Internet Explorer <br> <input type="radio" name="survey" value="2">Opera <br> <input type="radio" name="survey" value="3">None of the above <br> <p> <input type="submit" value="Vote"> </form> </body></html>
<html><head><title> Survey Results</title><body> Thank you for participating in the survey! <p> Results: <p> <table> <tr> <td>Netscape Communicator <td>40% <td>4 <tr> <td>Internet Explorer <td>10% <td>1 <tr> <td>Opera <td>30% <td>3 <tr> <td>None of the above <td>20% <td>2 </table> <p> Total number of responses: 10</body></html>
Cookie cookie = new Cookie(name, value);
cookie.setDomain(domain); cookie.setMaxAge(maxAge); cookie.setPath(path); cookie.setSecure(secure);
Cookie[] cookies = req.getCookies();
<html><head></head>
<body>
<form action="http://localhost:8080/examples/servlet/SetCookieServlet"
method="POST">
First name<br>
<input type="text" name="firstName"><p>
Last name<br>
<input type="text" name="lastName"></p>
<input type="submit" value="OK">
</form>
</body></html>
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SetCookieServlet extends HttpServlet {
public void doGet(HttpServletRequest req,
HttpServletResponse res) {
doPost(req, res);
}
public void doPost(HttpServletRequest req,
HttpServletResponse res) {
try {
String firstName =
req.getParameter("firstName");
String lastName =
req.getParameter("lastName");
String value =
firstName + ":" + lastName;
Cookie cookie = new Cookie("user", value);
cookie.setMaxAge(3600);
res.addCookie(cookie);
res.sendRedirect("/examples/servlet/GetCookieServlet");
} catch (Exception e) { }
}
}
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class GetCookieServlet extends HttpServlet {
public void doGet(HttpServletRequest req,
HttpServletResponse res) {
doPost(req, res);
}
public void doPost(HttpServletRequest req,
HttpServletResponse res) {
res.setContentType("text/html");
try {
PrintWriter out = res.getWriter();
out.println("<h2>Cookies</h2>");
Cookie[] cookies = req.getCookies();
for (int i=0; i<cookies.length; i++) {
Cookie c = cookies[i];
String name = c.getName();
String value = c.getValue();
out.println("Cookie name: " + name);
out.println("<p>");
if (name.equals("user")) {
int index = value.indexOf(":");
String firstName =
value.substring(0, index);
String lastName =
value.substring(index+1);
out.println("Values retrieved from cookie:");
out.println("<br>");
out.println("First name: " + firstName);
out.println("<br>");
out.println("Last name: " + lastName);
}
}
out.close();
} catch (Exception e) { }
}
}
<h2>Cookies</h2> Cookie name: user <p> Values retrieved from cookie: <br> First name: joe <br> Last name: cool
HttpSession session = req.getSession(true);
Integer counter = new Integer(100);
session.putValue("counter", counter);
Integer counter = (Integer)
session.getValue("counter");
session.invalidate();