java 单点_java实现单点登录的两种方式

1.如果两个网站域名的一级域名相同,可以使用cookie和filter实现单点登录,因为网站有可能(具体看cookie的设置)可以共享cookie。例如:www.bbs.aa.cnwww.news.aa.cn。

第一个网站在登录后,把用户信息写到cookie中,当访问第二个网站时,第二个网站先经过自己的filter,检查session,如果没有,查询cookie,取出用户信息,放在session中登录。

public void doFilter(ServletRequest req, ServletResponse resp,

FilterChain chain) throws IOException, ServletException {

HttpServletRequest request = (HttpServletRequest) req;

if(request.getSession().getAttribute("user")== null){

Cookie[] cs = request.getCookies();

if (cs != null && cs.length > 0) {

for (Cookie c : cs) {

String cName = c.getName();

if (cName.equals("sso")) {

String userName = c.getValue();

request.getSession().setAttribute("user", userName);

}

你可能感兴趣的:(java,单点)