Cookie is a text file stored on the client computer and retains a variety oftracking information. Java Servlet clearly supports HTTP Cookie.
Identifying the returned user consists of three steps:
The server script sends a set of Cookie to the browser. For example: name, age or identification number, etc.
Browsers store this information on the local computer for future use.
The next time the browser sends any request to the Web server, the browser sends this Cookie information to the server, which the server uses to identify the user.
This chapter shows you how to set or reset Cookie, how to access them, and how to delete them.
Servlet Cookie processing requires encoding and decoding of Chinese as follows:
String str = java.net.URLEncoder.encode("Chinese","UTF-8"); //code
String str = java.net.URLDecoder.decode("Encoded string","UTF-8"); // code
2.12.1. Cookie analysis ¶
Cookie is usually set in the HTTP header information (although JavaScript can also set a Cookie directly on the browser). Setting the Servlet of Cookie sends the following header information:
HTTP/1.1 200 OK
Date: Fri, 04 Feb 2000 21:03:38 GMT
Server: Apache/1.3.9 (UNIX) PHP/4.0b3
Set-Cookie: name=xyz; expires=Friday, 04-Feb-07 22:03:38 GMT;
path=/; domain=runoob.com
Connection: close
Content-Type: text/html
As you can see, the Set-Cookie header contains a name-value pair, a GMT date, a path, and a field. The name and value are encoded by URL. expires a field is an instruction that tells the browser to “forget” the Cookie after a given time and date.
If the browser is configured to store Cookie, it will retain this information until the expiration date. If the user’s browser points to any page that matches the path and domain of the Cookie, it resends the Cookie to the server. The header information for the browser may be as follows:
GET / HTTP/1.0
Connection: Keep-Alive
User-Agent: Mozilla/4.6 (X11; I; Linux 2.2.6-15apmac ppc)
Host: zink.demon.co.uk:1126
Accept: image/gif, */*
Accept-Encoding: gzip
Accept-Language: en
Accept-Charset: iso-8859-1,*,utf-8
Cookie: name=xyz
Servlet can then use the request method request.getCookies() access Cookie, which returns an array of Cookie objects.
2.12.2. Servlet Cookie method ¶
Serial number | Method & description |
|---|---|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
The following is a list of useful methods that can be used to manipulate Cookie in Servlet.
2.12.3. Set up Cookie through Servlet ¶
Setting up Cookie through Servlet involves three steps:
(1)create a Cookie object: you can call the Cookie constructor with the cookie name and cookie value, both of which are strings.
Cookie cookie = new Cookie("key","value");
Remember that neither the name nor the value should contain spaces or any ofthe following characters:
[ ] ( ) = , " / ? @ : ;
(2)set the maximum life cycle: you can use the setMaxAge method to specify cookie the time (in seconds) that can be kept valid. The following will set a maximum validity period of 24 hours cookie .
cookie.setMaxAge(60*60*24);
(3)send Cookie to HTTP response header: you can use the response.addCookie to add the Cookie in the HTTP response header, as follows:
response.addCookie(cookie);
2.12.4. Example ¶
Let’s modify our form data instance to set the Cookie for the first and lastname.
package com.runoob.test;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLEncoder;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class HelloServlet
*/
@WebServlet("/HelloForm")
public class HelloForm extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public HelloForm() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
// Create cookies for first and last names
Cookie name = new Cookie("name",
URLEncoder.encode(request.getParameter("name"), "UTF-8")); // Chinese transcoding
Cookie url = new Cookie("url",
request.getParameter("url"));
// Set the expiration date for two cookies to 24 hours later
name.setMaxAge(60*60*24);
url.setMaxAge(60*60*24);
// Add two cookies to the response header
response.addCookie( name );
response.addCookie( url );
// Set response content type
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String title = "Set Cookie Instance";
String docType = "\n";
out.println(docType +
"\n" +
"" + title + "\n" +
"\"#f0f0f0\">\n" +
"\"center\">" + title + "\n" +
"\n" +
" - site name::"
+ request.getParameter("name") + "\n" +
" - site URL::"
+ request.getParameter("url") + "\n" +
"\n" +
"");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
Compile the Servlet above HelloForm and in the web.xml create the appropriate entry in the file:
HelloForm
com.runoob.test.HelloForm
HelloForm
/TomcatTest/HelloForm
Finally, try the following HTML page to call Servlet.
Article link
:
2.12. Servlet Cookie processing
-
1. Geographical Information Systems in the World Wide Web Era
4
-
2. Basic technology of WebGIS
4
-
3. Geographic Web Services
5
-
4. aggregation of geographical information
4
-
5. mobile GIS
5
-
6. Geographic information portal
3
-
7. New generation national spatial data infrastructure and GIS
4
-
8. Application of WebGIS in E-Commerce
3
-
9. Application of WebGIS in E-government
3
-
10. Hotspots and frontiers of WebGIS
2
-
1. Angularjs2
8
-
1. SVG tutorial
19
-
1. Memcached
20
-
1. C# tutorial
61
-
1. Sqlite
47
-
2. Go
43
-
2. Docker
59
-
2. Vue3
19
-
2. Servlet
21
-
3. React
23
-
3. SOAP tutorial
10
-
3. Android
18
-
3. Mongodb
44
-
3. Kotlin
18
-
4. Lua
31
-
4. MySQL tutorial
34
-
4. Appml
12
-
5. Perl
45
-
5. Postgresql
41
-
web
15
-
5. Web Services tutorial
6
-
6. Ruby
41
-
6. Design-pattern
35
-
7. Django
18
-
7. Rust
22
-
6. WSDL tutorial
8
-
8. Foundation
39
-
9. Ios
43
-
8. Css3
26
-
9. Swift
43
-
11. HTML tutorial-(HTML5 Standard)
54
-
12. Http
6
-
13. Regex
6
-
14. Regexp
7
Principles, Technologies, and Methods of Geographic Information Systems
102
In recent years, Geographic Information Systems (GIS) have undergone rapid development in both theoretical and practical dimensions. GIS has been widely applied for modeling and decision-making support across various fields such as urban management, regional planning, and environmental remediation, establishing geographic information as a vital component of the information era. The introduction of the “Digital Earth” concept has further accelerated the advancement of GIS, which serves as its technical foundation. Concurrently, scholars have been dedicated to theoretical research in areas like spatial cognition, spatial data uncertainty, and the formalization of spatial relationships. This reflects the dual nature of GIS as both an applied technology and an academic discipline, with the two aspects forming a mutually reinforcing cycle of progress.
-
1. Introduction to Geographic Information Systems
6
-
2. From the Real World to the Bit World
3
-
3. Spatial Data Model
7
-
4. Spatial Reference Systems and Map Projections
5
-
5. Data in GIS
4
-
6. Spatial data acquisition
2
-
7. Spatial Data Management
6
-
8. Spatial analysis
8
-
9. Digital Terrain Model (DTM) and Terrain Analysis
5
-
10. Spatial modeling and spatial decision support
6
-
11. Spatial data representation and map making
6
-
12. 3S Integration Technology
5
-
13. Network Geographic Information System
4
-
14. Examples of Geographic Information System Application
8
-
15. Organization and Management of Geographic Information System Application Projects
10
-
16. Geographic Information system Software Engineering Technology
7
-
17. Geographic Information System Standards
3
-
18. Geographic Information System and Society
3
-
19. Earth Information Science and Digital Earth
4