首页

jsp单点登录实例(入门级)

java

2020-6-20

package com.sso.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class MainServlet
 */
public class MainServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	private static final String _COOKIENAME = "SSO" ;
    private ConcurrentMap SSOMap;
    public MainServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		execute(request,response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		execute(request,response);
	}

	private void execute(HttpServletRequest request,
			HttpServletResponse response) {
		// TODO Auto-generated method stub
		HttpSession session = request.getSession();
		String rs = "";
		try {
			String method = request.getParameter("method");
			String tourl = request.getParameter("tourl");
			if("login".equals(method)){
				session.setAttribute("tourl", tourl);
				response.sendRedirect("login.jsp");
			}else if("getFlag".equals(method)){
				String cookiename = request.getParameter("cookiename");
				System.out.println("---------cookiename:" cookiename);
				System.out.println("---------SSOMap.size():" SSOMap.size());
				if(cookiename!=null&&SSOMap!=null&&SSOMap.size()>0){
					String value = SSOMap.get(cookiename).toString();
					if(value != null){
						rs = value;
					}else{
						rs = "nologin";
					}
				}else{
					rs = "nologin";
				}
			}else if("logincheck".equals(method)){
				String username = request.getParameter("username");
				String password = request.getParameter("password");
				tourl = session.getAttribute("tourl").toString();
				if("t".equals(username)&&"123".equals(password)){
//					Cookie cookie = new Cookie("cookiename","cookievalue");
					SSOMap.put(_COOKIENAME, "t");
					System.out.println("--------tourl:" tourl);
					response.sendRedirect(tourl);
				}
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			PrintWriter pw = response.getWriter();
			pw.write(rs);
			pw.flush();
			pw.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}


	@Override
	public void init() throws ServletException {
		// TODO Auto-generated method stub
		SSOMap = new ConcurrentHashMap<String,Object>();
	}
}

资源下载此资源下载价格为3D币(VIP免费),请先
资源文件列表
╝≥╡ÑSSO╩╡└² For java web/SSO/.classpath , 838
╝≥╡ÑSSO╩╡└² For java web/SSO/.project , 1036
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/.jsdtscope , 454
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/org.eclipse.jdt.core.prefs , 330
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/org.eclipse.wst.common.component , 439
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/org.eclipse.wst.common.project.facet.core.xml , 320
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/org.eclipse.wst.jsdt.ui.superType.container , 49
╝≥╡ÑSSO╩╡└² For java web/SSO/.settings/org.eclipse.wst.jsdt.ui.superType.name , 6
╝≥╡ÑSSO╩╡└² For java web/SSO/WebContent/META-INF/MANIFEST.MF , 39
╝≥╡ÑSSO╩╡└² For java web/SSO/WebContent/WEB-INF/web.xml , 1771
╝≥╡ÑSSO╩╡└² For java web/SSO/WebContent/login.jsp , 549
╝≥╡ÑSSO╩╡└² For java web/SSO/build/classes/com/sso/servlet/LoginServlet.class , 1876
╝≥╡ÑSSO╩╡└² For java web/SSO/build/classes/com/sso/servlet/MainServlet.class , 3500
╝≥╡ÑSSO╩╡└² For java web/SSO/src/com/sso/servlet/LoginServlet.java , 1609
╝≥╡ÑSSO╩╡└² For java web/SSO/src/com/sso/servlet/MainServlet.java , 2907
╝≥╡ÑSSO╩╡└² For java web/SSO1/.classpath , 838
╝≥╡ÑSSO╩╡└² For java web/SSO1/.project , 1037
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/.jsdtscope , 454
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/org.eclipse.jdt.core.prefs , 330
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/org.eclipse.wst.common.component , 442
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/org.eclipse.wst.common.project.facet.core.xml , 320
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/org.eclipse.wst.jsdt.ui.superType.container , 49
╝≥╡ÑSSO╩╡└² For java web/SSO1/.settings/org.eclipse.wst.jsdt.ui.superType.name , 6
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/META-INF/MANIFEST.MF , 39
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/WEB-INF/lib/commons-codec-1.4.jar , 58160
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/WEB-INF/lib/commons-httpclient-3.0.1.jar , 279781
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/WEB-INF/lib/commons-logging-1.1.1.jar , 60841
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/WEB-INF/web.xml , 1005
╝≥╡ÑSSO╩╡└² For java web/SSO1/WebContent/index.jsp , 392
╝≥╡ÑSSO╩╡└² For java web/SSO1/build/classes/com/sso/filter/LoginFilter.class , 3367
╝≥╡ÑSSO╩╡└² For java web/SSO1/src/com/sso/filter/LoginFilter.java , 2676
╝≥╡ÑSSO╩╡└² For java web/SSO2/.classpath , 838
╝≥╡ÑSSO╩╡└² For java web/SSO2/.project , 1037
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/.jsdtscope , 454
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/org.eclipse.jdt.core.prefs , 330
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/org.eclipse.wst.common.component , 442
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/org.eclipse.wst.common.project.facet.core.xml , 320
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/org.eclipse.wst.jsdt.ui.superType.container , 49
╝≥╡ÑSSO╩╡└² For java web/SSO2/.settings/org.eclipse.wst.jsdt.ui.superType.name , 6
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/META-INF/MANIFEST.MF , 39
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/WEB-INF/lib/commons-codec-1.4.jar , 58160
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/WEB-INF/lib/commons-httpclient-3.0.1.jar , 279781
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/WEB-INF/lib/commons-logging-1.1.1.jar , 60841
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/WEB-INF/web.xml , 1009
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/index.jsp , 392
╝≥╡ÑSSO╩╡└² For java web/SSO2/WebContent/main.jsp , 392
╝≥╡ÑSSO╩╡└² For java web/SSO2/build/classes/com/sso/filter/LoginFilter.class , 3367
╝≥╡ÑSSO╩╡└² For java web/SSO2/src/com/sso/filter/LoginFilter.java , 2676
没有账号? 忘记密码?

社交账号快速登录