当前位置: 首页>>代码示例>>Java>>正文


Java Cookie类代码示例

本文整理汇总了Java中org.apache.shiro.web.servlet.Cookie的典型用法代码示例。如果您正苦于以下问题:Java Cookie类的具体用法?Java Cookie怎么用?Java Cookie使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Cookie类属于org.apache.shiro.web.servlet包,在下文中一共展示了Cookie类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: defaultWebSessionManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
/**
 * @see DefaultWebSessionManager
 */
@Bean(name = "sessionManager")
public DefaultWebSessionManager defaultWebSessionManager() {
    DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
    //sessionManager.setSessionDAO(new CustomSessionDAO());
    sessionManager.setCacheManager(ehCacheManager());
    //单位为毫秒(1秒=1000毫秒) 3600000毫秒为1个小时
    sessionManager.setSessionValidationInterval(3600000 * 12);
    //3600000 milliseconds = 1 hour
    sessionManager.setGlobalSessionTimeout(3600000 * 12);
    sessionManager.setDeleteInvalidSessions(true);
    sessionManager.setSessionValidationSchedulerEnabled(true);
    Cookie cookie = new SimpleCookie(ShiroHttpSession.DEFAULT_SESSION_ID_NAME);
    cookie.setName("WEBID");
    cookie.setHttpOnly(true);
    sessionManager.setSessionIdCookie(cookie);
    return sessionManager;
}
 
开发者ID:wu05281,项目名称:admin-shiro,代码行数:21,代码来源:ShiroConfig.java

示例2: getSessionId

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Override
protected Serializable getSessionId(ServletRequest request, ServletResponse response) {
	// 如果参数中包含“__sid”参数,则使用此sid会话。 例如:http://localhost/project?__sid=xxx&__cookie=true
	String sid = request.getParameter("__sid");
	if (StringUtils.isNotBlank(sid)) {
		// 是否将sid保存到cookie,浏览器模式下使用此参数。
		if (WebUtils.isTrue(request, "__cookie")) {
			HttpServletRequest rq = (HttpServletRequest) request;
			HttpServletResponse rs = (HttpServletResponse) response;
			Cookie template = getSessionIdCookie();
			Cookie cookie = new SimpleCookie(template);
			cookie.setValue(sid);
			cookie.saveTo(rq, rs);
		}
		// 设置当前session状态
		request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_SOURCE, ShiroHttpServletRequest.URL_SESSION_ID_SOURCE); // session来源与url
		request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID, sid);
		request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_IS_VALID, Boolean.TRUE);
		return sid;
	} else {
		return super.getSessionId(request, response);
	}
}
 
开发者ID:funtl,项目名称:framework,代码行数:24,代码来源:SessionManager.java

示例3: getSessionId

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Override
protected Serializable getSessionId(ServletRequest request, ServletResponse response) {
    // 如果参数中包含“__sid”参数,则使用此sid会话。
    // 例如:http://localhost/project?__sid=xxx&__cookie=true
    String sid = request.getParameter("__sid");
    if (StringUtils.isNotBlank(sid)) {
        // 是否将sid保存到cookie,浏览器模式下使用此参数。
        if (WebUtils.isTrue(request, "__cookie")) {
            HttpServletRequest rq = (HttpServletRequest) request;
            HttpServletResponse rs = (HttpServletResponse) response;
            Cookie template = getSessionIdCookie();
            Cookie cookie = new SimpleCookie(template);
            cookie.setValue(sid);
            cookie.saveTo(rq, rs);
        }
        // 设置当前session状态
        request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_SOURCE,
                ShiroHttpServletRequest.URL_SESSION_ID_SOURCE); // session来源与url
        request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID, sid);
        request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_IS_VALID, Boolean.TRUE);
        return sid;
    } else {
        return super.getSessionId(request, response);
    }
}
 
开发者ID:ansafari,项目名称:melon,代码行数:26,代码来源:SessionManager.java

示例4: rememberMeManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Bean
@ConditionalOnMissingBean(RememberMeManager.class)
public RememberMeManager rememberMeManager(Cookie cookie) {
    CookieRememberMeManager cookieRememberMeManager = new CookieRememberMeManager();
    cookieRememberMeManager.setCookie(cookie);
    cookieRememberMeManager.setCipherService(cipherService);
    if (shiroCookieProperties.getCipherKey() != null) {
        cookieRememberMeManager.setCipherKey(shiroCookieProperties.getCipherKey().getBytes());
    } else {
        if (shiroCookieProperties.getEncryptionCipherKey() != null) {
            cookieRememberMeManager.setEncryptionCipherKey(shiroCookieProperties.getEncryptionCipherKey().getBytes());
        }
        if (shiroCookieProperties.getDecryptionCipherKey() != null) {
            cookieRememberMeManager.setDecryptionCipherKey(shiroCookieProperties.getDecryptionCipherKey().getBytes());
        }
    }
    cookieRememberMeManager.setSerializer(serializer);
    return cookieRememberMeManager;
}
 
开发者ID:johntostring,项目名称:spring-boot-shiro,代码行数:20,代码来源:ShiroAutoConfiguration.java

示例5: rememberMeManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Bean
@ConditionalOnMissingBean(RememberMeManager.class)
public RememberMeManager rememberMeManager(Cookie cookie) {
    CookieRememberMeManager manager = new CookieRememberMeManager();
    manager.setCookie(cookie);
    manager.setCipherService(cipherService);
    if (null != shiroCookieProperties.getCipherKey()) {
        manager.setCipherKey(shiroCookieProperties.getCipherKey().getBytes());
    } else {
        if (null != shiroCookieProperties.getEncryptionCipherKey()) {
            manager.setEncryptionCipherKey(shiroCookieProperties.getEncryptionCipherKey().getBytes());
        }
        if (null != shiroCookieProperties.getDecryptionCipherKey()) {
            manager.setDecryptionCipherKey(shiroCookieProperties.getDecryptionCipherKey().getBytes());
        }
    }
    manager.setSerializer(serializer);

    return manager;
}
 
开发者ID:storezhang,项目名称:utils,代码行数:21,代码来源:ShiroAutoConfiguration.java

示例6: rememberSerializedIdentity

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
/**
 * Base64-encodes the specified serialized byte array and sets that base64-encoded String as the cookie value.
 * <p/>
 * The {@code subject} instance is expected to be a {@link WebSubject} instance with an HTTP Request/Response pair
 * so an HTTP cookie can be set on the outgoing response.  If it is not a {@code WebSubject} or that
 * {@code WebSubject} does not have an HTTP Request/Response pair, this implementation does nothing.
 *
 * @param subject    the Subject for which the identity is being serialized.
 * @param serialized the serialized bytes to be persisted.
 */
protected void rememberSerializedIdentity(Subject subject, byte[] serialized) {

    if (!WebUtils.isHttp(subject)) {
        if (log.isDebugEnabled()) {
            String msg = "Subject argument is not an HTTP-aware instance.  This is required to obtain a servlet " +
                    "request and response in order to set the rememberMe cookie. Returning immediately and " +
                    "ignoring rememberMe operation.";
            log.debug(msg);
        }
        return;
    }


    HttpServletRequest request = WebUtils.getHttpRequest(subject);
    HttpServletResponse response = WebUtils.getHttpResponse(subject);

    //base 64 encode it and store as a cookie:
    String base64 = Base64.encodeToString(serialized);

    Cookie template = getCookie(); //the class attribute is really a template for the outgoing cookies
    Cookie cookie = new SimpleCookie(template);
    cookie.setValue(base64);
    cookie.saveTo(request, response);
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:35,代码来源:CookieRememberMeManager.java

示例7: rememberSerializedIdentity

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Override
protected void rememberSerializedIdentity(Subject subject, byte[] serialized) {
    if (!WebUtils.isHttp(subject)) {
        if (LOGGER.isDebugEnabled()) {
            String msg = "Subject argument is not an HTTP-aware instance.  This is required to obtain a servlet " +
                    "request and response in order to set the rememberMe cookie. Returning immediately and " +
                    "ignoring rememberMe operation.";
            LOGGER.debug(msg);
        }
        
        return;
    }


    HttpServletRequest request = WebUtils.getHttpRequest(subject);
    HttpServletResponse response = WebUtils.getHttpResponse(subject);

    // base 64 encode it and store as a cookie:
    String base64 = Base64.encodeToString(serialized);

    // the class attribute is really a template for the outgoing cookies
    Cookie cookie = getCookie(); 
    cookie.setValue(base64);
    cookie.saveTo(request, response);
}
 
开发者ID:nano-projects,项目名称:nano-framework,代码行数:26,代码来源:CookieRememberMeManager.java

示例8: getSessionId

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Override
protected Serializable getSessionId(ServletRequest request, ServletResponse response) {
	// 如果参数中包含“__sid”参数,则使用此sid会话。 例如:http://localhost/project?__sid=xxx&__cookie=true
	String sid = request.getParameter("__sid");
	if (StringUtils.isNotBlank(sid)) {
		// 是否将sid保存到cookie,浏览器模式下使用此参数。
		if (WebUtils.isTrue(request, "__cookie")){
	        HttpServletRequest rq = (HttpServletRequest)request;
	        HttpServletResponse rs = (HttpServletResponse)response;
			Cookie template = getSessionIdCookie();
	        Cookie cookie = new SimpleCookie(template);
			cookie.setValue(sid); cookie.saveTo(rq, rs);
		}
		// 设置当前session状态
           request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_SOURCE,
                   ShiroHttpServletRequest.URL_SESSION_ID_SOURCE); // session来源与url
           request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID, sid);
           request.setAttribute(ShiroHttpServletRequest.REFERENCED_SESSION_ID_IS_VALID, Boolean.TRUE);
       	return sid;
	}else{
		return super.getSessionId(request, response);
	}
}
 
开发者ID:egojit8,项目名称:easyweb,代码行数:24,代码来源:SessionManager.java

示例9: rememberMeCookie

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Bean
@ConditionalOnMissingBean(Cookie.class)
public Cookie rememberMeCookie() {
    SimpleCookie cookie = new SimpleCookie();

    cookie.setName(authFilterProperties.getRememberMeParamName());
    cookie.setMaxAge(shiroCookieProperties.getMaxAge());
    cookie.setValue(shiroCookieProperties.getValue());
    cookie.setVersion(shiroCookieProperties.getVersion());
    cookie.setHttpOnly(shiroCookieProperties.isHttpOnly());
    cookie.setSecure(shiroCookieProperties.isSecure());

    return cookie;
}
 
开发者ID:storezhang,项目名称:utils,代码行数:15,代码来源:ShiroAutoConfiguration.java

示例10: rememberMeCookie

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
@Bean
public Cookie rememberMeCookie() {
	SimpleCookie cookie = new SimpleCookie("rememberMe");
	cookie.setHttpOnly(true);
	cookie.setMaxAge(31536000);
	return cookie;
}
 
开发者ID:xiangxik,项目名称:java-platform,代码行数:8,代码来源:SecurityConfiguration.java

示例11: DefaultWebSessionManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
public DefaultWebSessionManager() {
    Cookie cookie = new SimpleCookie(ShiroHttpSession.DEFAULT_SESSION_ID_NAME);
    cookie.setHttpOnly(true); //more secure, protects against XSS attacks
    this.sessionIdCookie = cookie;
    this.sessionIdCookieEnabled = true;
    this.sessionIdUrlRewritingEnabled = true;
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:8,代码来源:DefaultWebSessionManager.java

示例12: storeSessionId

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
private void storeSessionId(Serializable currentId, HttpServletRequest request, HttpServletResponse response) {
    if (currentId == null) {
        String msg = "sessionId cannot be null when persisting for subsequent requests.";
        throw new IllegalArgumentException(msg);
    }
    Cookie template = getSessionIdCookie();
    Cookie cookie = new SimpleCookie(template);
    String idString = currentId.toString();
    cookie.setValue(idString);
    cookie.saveTo(request, response);
    log.trace("Set session ID cookie for session with id {}", idString);
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:13,代码来源:DefaultWebSessionManager.java

示例13: CookieRememberMeManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
/**
 * Constructs a new {@code CookieRememberMeManager} with a default {@code rememberMe} cookie template.
 */
public CookieRememberMeManager() {
    Cookie cookie = new SimpleCookie(DEFAULT_REMEMBER_ME_COOKIE_NAME);
    cookie.setHttpOnly(true);
    //One year should be long enough - most sites won't object to requiring a user to log in if they haven't visited
    //in a year:
    cookie.setMaxAge(Cookie.ONE_YEAR);
    this.cookie = cookie;
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:12,代码来源:CookieRememberMeManager.java

示例14: SimpleWebSessionManager

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
public SimpleWebSessionManager() {
	Cookie cookie = new SimpleCookie(ShiroHttpSession.DEFAULT_SESSION_ID_NAME);
	cookie.setHttpOnly(true);
	this.sessionIdCookie = cookie;
	this.sessionIdCookieEnabled = true;
	setSessionValidationSchedulerEnabled(false);
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:8,代码来源:SimpleWebSessionManager.java

示例15: getSessionIdCookie

import org.apache.shiro.web.servlet.Cookie; //导入依赖的package包/类
/**
 * 创建session
 */
// @Override
// protected Session doCreateSession(SessionContext context) {
// Session session = newSessionInstance(context);
// if (log.isTraceEnabled()) {
// log.trace("Creating session for host {}", session.getHost());
// }
// // 去掉重复生成sessionId
//// if (session.getId() == null && session instanceof SimpleSession) {
//// HttpServletRequest httpRequest = WebUtils.getHttpRequest(context);
//// String currUrl =
// WebUtils.getPathWithinApplication(WebUtils.toHttp(httpRequest));
//// boolean isLoginSubmission = WebUtils.toHttp(httpRequest).getMethod()
//// .equalsIgnoreCase(AccessControlFilter.POST_METHOD);
//// if (postLoginUrl != null && postLoginUrl.equals(currUrl) &&
// isLoginSubmission) {
//// // ignore
//// } else {
//// WebSessionKey webSessionKey = new WebSessionKey(httpRequest,
// WebUtils.getHttpResponse(context));
//// Serializable id = super.getSessionId(webSessionKey);
//// if (id == null && WebUtils.isWeb(webSessionKey)) {
//// ServletRequest request = WebUtils.getRequest(webSessionKey);
//// ServletResponse response = WebUtils.getResponse(webSessionKey);
//// id = getReferencedSessionId(request, response);
//// if (id != null) {
//// ((SimpleSession) session).setId(id);
//// }
//// }
//// }
//// }
// create(session);
// return session;
// }

public Cookie getSessionIdCookie() {
	return sessionIdCookie;
}
 
开发者ID:xuegongzi,项目名称:rabbitframework,代码行数:41,代码来源:SimpleWebSessionManager.java


注:本文中的org.apache.shiro.web.servlet.Cookie类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。