Junior
Servletтерде cookies менен иштөө үчүн кандай ыкмалар каралган?
sobes.tech AI
AIден жооп
Сервлеттерде cookie менен иштөө үчүн HttpServletRequest объектусунун ыкмалары (cookie алуу үчүн) жана HttpServletResponse (cookie жөнөтүү үчүн) колдонулат.
Суроо аркылуу cookie алуу:
Cookie[] getCookies(): Суроо аркылуу алынганCookieобъекттеринин массивин кайтарат. Эгер cookie жок болсо,nullкайтарат.
Жоопто cookie жөнөтүү:
void addCookie(Cookie cookie): белгилүүCookieобъектин жоопко кошот.
Cookie классы төмөнкү негизги ыкмаларды камтыйт:
String getName(): cookie атын кайтарат.String getValue(): cookie маанисин кайтарат.void setValue(String newValue): cookie жаңы маанисин орнотот.String getPath(): cookie жеткиликтүү болгон жолду кайтарат.void setPath(String uri): cookie үчүн жолду орнотот.String getDomain(): cookie иштеген доменди кайтарат.void setDomain(String pattern): cookie үчүн доменди орнотот.int getMaxAge(): cookieнин максималдуу жашоо убактысын (секундада) кайтарат. Терс мааниси cookie браузер жабылгандан кийин гана сакталат дегенди билдирет. 0 — cookie өчүрүү.void setMaxAge(int expiry): cookieнин максималдуу жашоо убактысын орнотот.boolean getSecure():trueболсо, cookie тек корголгон (HTTPS) байланышка жөнөтүлөт.void setSecure(boolean flag): cookie үчүн коопсуз байланыш белгисин орнотот.int getVersion(): cookie протоколунун версиясын кайтарат.void setVersion(int v): cookie протоколунун версиясын орнотот.boolean isHttpOnly():trueболсо, cookie тек HTTP суроолор аркылуу жеткиликтүү (JavaScript аркылуу эмес).void setHttpOnly(boolean isHttpOnly): cookie үчүн HttpOnly белгисин орнотот.
Cookie алуу жана орнотуу мисалы:
// Суроо аркылуу cookie алуу
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
if ("userName".equals(cookie.getName())) {
String userName = cookie.getValue();
// Маанисин колдонуу
break;
}
}
}
// Жаңы cookie түзүү жана жоопко кошуу
Cookie newCookie = new Cookie("language", "en");
newCookie.setMaxAge(60 * 60 * 24 * 30); // 30 күн
response.addCookie(newCookie);