.


:




:

































 

 

 

 


SessionLogic.printToBrowser(resp, req);




}

}

package chapt21;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.Date;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

public class SessionLogic {

 

public static void printToBrowser(

HttpServletResponse resp, HttpServletRequest req) {

try {

/* ( , ) */

HttpSession session = req.getSession(true);

 

PrintWriter out = resp.getWriter();

 

StringBuffer url = req.getRequestURL();

session.setAttribute("URL", url);

 

out.write("My session counter: ");

/* , ( ) */

out.write(String.valueOf(prepareSessionCounter(session)));

out.write("<br> Creation Time: "

+ new Date(session.getCreationTime()));

out.write("<br> Time of last access: "

+ new Date(session.getLastAccessedTime()));

out.write("<br> session ID: "

+ session.getId());

out.write("<br> Your URL: " + url);

int timeLive = 60 * 30;

session.setMaxInactiveInterval(timeLive);

out.write("<br>Set max inactive interval: "

+ timeLive + "sec");

 

out.flush();

out.close();

} catch (IOException e) {

e.printStackTrace();

throw new RuntimeException("Failed: " + e);

}

}

/* */

private static int prepareSessionCounter(

HttpSession session) {

Integer counter =

(Integer)session.getAttribute("counter");

 

if (counter == null) {

session.setAttribute("counter", 1);

return 1;

} else {

counter++;

session.setAttribute("counter", counter);

return counter;

}

}

}

:

My session counter: 3
Creation Time: Sun Jan 29 16:02:30 EET 2006
Time of last access: Sun Jan 29 16:02:38 EET 2006
session ID: 314A546CD9270A840E0BDA3286636B20
Your URL: http://localhost:8080/FirstProject/SessionServlet
Set max inactive interval: 1800sec

: Integer URL , StringBuffer. SessionServlet HTML, , , () . session-config web.xml :

<session-config>

<session-timeout>30</session-timeout>

</session-config>

.

.

/* # 2: : TimeSessionServlet.java */

package chapt21;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

 

public class TimeSessionServlet extends HttpServlet {

boolean flag = true;

 

protected void doGet(HttpServletRequest req,

HttpServletResponse resp)

throws ServletException {

performTask(req, resp);

}

private void performTask(HttpServletRequest req,

HttpServletResponse resp) throws ServletException {

 

HttpSession session = null;

if (flag) {

//

session = req.getSession();

int timeLive = 10; // !

session.setMaxInactiveInterval(timeLive);

flag = false;

} else {

// ,

session = req.getSession(false);

}

TimeSession. go (resp, req, session);

}

}

package chapt21;

import java.io.IOException;

import java.io.PrintWriter;

import java.util.Date;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

 

public class TimeSession {

 

public static void go(HttpServletResponse resp, HttpServletRequest req, HttpSession session) {

PrintWriter out = null;

try {

out = resp.getWriter();

out.write("<br> Creation Time: "

+ new Date(session.getCreationTime()));

out.write("<br> Session alive! ");

 

out.flush();

out.close();

} catch (NullPointerException e) {

// ,

if (out!= null)

out.print("Session disabled!");

} catch (IOException e) {

e.printStackTrace();

throw new RuntimeException("i/o failed: " + e);

}

}

}

:

Creation Time: Tue Aug 14 17:54:23 EEST 2007
Session alive!

10 , . , , :

Session disabled!

Cookie

Cookie.

Cookie , cookies. cookies. HTTP, Web-. Cookies , . (Single Signon), (token) ookies.

Cookie Netscape , . cookie , . cookie cookie, Web-.

cookie , Cookie, , -response. , .

Cookie cookie = new Cookie( " myid ", " 007 " );





:


: 2016-04-03; !; : 406 |


:

:

: , .
==> ...

1976 - | 1604 -


© 2015-2024 lektsii.org - -

: 0.017 .