>  기사  >  Java  >  Java는 쿠키를 사용하여 좋아요 수를 제한합니다.

Java는 쿠키를 사용하여 좋아요 수를 제한합니다.

高洛峰
高洛峰원래의
2017-01-18 14:22:241743검색

본 글은 단순히 쿠키 기술을 이용해 좋아요 수를 제한할 뿐 관광객들의 악의적인 좋아요를 막을 수는 없습니다.

자, 더 이상 고민하지 말고 먼저 기본 사항을 살펴보겠습니다.

ajax+springMVC+cookie

중간 프레임워크를 사용하면 원하는 것은 무엇이든 할 수 있습니다. 여기 springMVC를 사용한 포스터는 HttpServletRequest와 HttpServletResponse로 쿠키를 작동할 수 있습니다

쿠키란

쿠키는 방문자의 컴퓨터에 저장되는 변수입니다. 이 쿠키는 동일한 컴퓨터가 브라우저를 통해 페이지를 요청할 때마다 전송됩니다. JavaScript를 사용하여 쿠키 값을 생성하고 검색할 수 있습니다.

두 번째 읽기에서는 쿠키가 http 요청에 저장되어 Java에서 쿠키를 작동할 수 있다고 언급했습니다.

쿠키의 주요 목적은

서버는 쿠키에 포함된 정보의 임의적 특성을 활용하여 이 정보를 필터링하고 정기적으로 유지하여 HTTP 전송 상태를 확인할 수 있습니다. 쿠키의 가장 일반적인 적용은 등록된 사용자가 웹사이트에 로그인했는지 여부를 확인하는 것입니다. 사용자는 로그인 절차를 단순화하기 위해 다음번에 웹사이트에 접속할 때 사용자 정보를 유지할지 여부를 묻는 메시지를 받을 수 있습니다. 또 다른 중요한 응용 분야는 "장바구니" 처리입니다. 사용자는 일정 기간 내에 동일한 웹사이트의 다른 페이지에서 다른 제품을 선택할 수 있으며, 이 정보는 쿠키에 기록되어 최종 결제 시 해당 정보를 검색할 수 있습니다.

쿠키에 대한 기본 이해, Java가 쿠키를 어떻게 작동하는지 살펴보겠습니다

라이프사이클이 없는 쿠키, 즉 브라우저를 닫으면 사라지는 쿠키를 생성합니다.

HttpServletRequest request
HttpServletResponse response
Cookie cookie = new Cookie("cookiename","cookievalue");
response.addCookie(cookie);

라이프 사이클이 있는 쿠키를 생성하고 라이프 사이클을 설정할 수 있습니다

cookie = new Cookie("cookiename","cookievalue");
//此方法接收一个以秒为单位的整数,该整数表示cookie的最大生存期。负值表示当关闭浏览器时,该cookie将被清除,表示必须立即清除该cookie。
cookie.setMaxAge();
//设置路径,这个路径即该工程下都可以访问该cookie 如果不设置路径,那么只有设置该cookie路径及其子路径可以访问
cookie.setPath("/");
response.addCookie(cookie);

쿠키를 읽고, 쿠키 코드를 다음과 같이 읽으세요

Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组
for(Cookie cookie : cookies){
cookie.getName();// get the cookie name
cookie.getValue(); // get the cookie value
}

springMVC 특정 제한 작업

/**
* 点赞操作
*
* @param comment
* @param request
* @param response
* @return
*/
@RequestMapping(value = TalkingConst.PATH_LOVE, method = RequestMethod.POST)
public @ResponseBody Map<String, Object> love(Comment comment, HttpServletRequest request, HttpServletResponse response) {
Map<String, Object> map = new HashMap<String, Object>();
// 根据cookie的name取的cookie getCookieByName()方法可以参考代码块上的链接处的封装
Cookie cookie = getCookieByName(request, comment.getCommentId() + "");
// 判断cookie是否为空
if (cookie != null) {
// cookie不为空,提示已经赞过
// 前台传值
map.put(TalkingConst.ATTRIBUTE_MSG, "您已赞过,请休息一下~");
map.put(TalkingConst.ATTRIBUTE_NAME_RESULT, Boolean.FALSE);
} else {
// 数据库操作,点赞个数加
commentService.love(comment);
// 创建cookie addCookie()方法可以参考代码块上的链接处的封装
addCookie(response, comment.getCommentId() + "", "", );
map.put(TalkingConst.ATTRIBUTE_NAME_RESULT, Boolean.TRUE);
}
return map;
}

이 시점에서 좋아요 수에 대한 간단한 쿠키 제한이 기본적으로 완료됩니다. 좋아요마다 스타일이 다르기 때문에 프론트엔드 코드는 포함하지 않습니다.

위 내용은 Java에서 좋아요 수를 제한하기 위해 쿠키를 사용하는 방법에 대한 지식을 공유한 내용이 도움이 되기를 바랍니다.

Java에서 좋아요 수를 제한하기 위해 쿠키를 사용하는 것과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.