资源简介
这个DEMO是我手写,亲测能运行的项目,适合没有接触过单点登陆的新手,不足之处还请多多指教

代码片段和文件信息
package servlet;
import java.io.IOException;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import javax.servlet.ServletConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns=“/jsp/login.page“loadonstartup=1name=“authServlet“)
public class AuthServlet extends HttpServlet{
private static final long serialVersionUID = 1L;
static private ConcurrentMap accounts;
String CookName;
String DomainName;
/**
* 无参构造函数
*/
public AuthServlet(){
super();
}
public void destory(){
super.destroy();
}
public void doGet(HttpServletRequest requestHttpServletResponse response) throws IOException{
doPost(request response);
}
public void doPost(HttpServletRequest requestHttpServletResponse response) throws IOException{
DomainName = request.getSession().getServletContext().getInitParameter(“DomainName“);
CookName = request.getSession().getServletContext().getInitParameter(“CookieName“);
//验证码
String location = request.getContextPath()+“/login.jsp“;
String ccdoe = (String) request.getSession().getAttribute(“ccode“);
String checkcode = request.getParameter(“checkcode“);
if(!checkcode.equals(ccdoe)){
response.sendRedirect(location);
}else {
String username = request.getParameter(“username“);
String userpassword = request.getParameter(“userpassword“);
String key = accounts.get(username);
if(key == null){
response.sendRedirect(location);
}else {
if(key.equals(userpassword)){
String gotoURL = request.getParameter(“goto“);
String sessionId = request.getSession().getId();
Cookie cookie = new Cookie(CookName sessionId);
cookie.setMaxAge(100);
// cookie.setValue(sessionId);
cookie.setPath(“/“);
response.addCookie(cookie);
if(gotoURL != null){
response.sendRedirect(gotoURL);
}else {
response.sendRedirect(location);
}
}else {
response.sendRedirect(location);
}
}
}
}
public void init(ServletConfig config){
accounts = new ConcurrentHashMap();
accounts.put(“admin“ “wds!@#123“);
accounts.put(“宋燕青“ “123456“);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 841 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.classpath
文件 1038 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.project
文件 503 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\.jsdtscope
文件 364 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\org.eclipse.jdt.core.prefs
文件 467 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\org.eclipse.wst.common.component
文件 345 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 1399 2015-07-31 11:16 JAVA-WEB单点登录实例\Demo1\WebContent\index.jsp
文件 39 2015-07-31 11:14 JAVA-WEB单点登录实例\Demo1\WebContent\me
文件 1018 2015-07-31 11:29 JAVA-WEB单点登录实例\Demo1\WebContent\WEB-INF\web.xm
文件 841 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.classpath
文件 1038 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.project
文件 503 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\.jsdtscope
文件 364 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\org.eclipse.jdt.core.prefs
文件 467 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\org.eclipse.wst.common.component
文件 345 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 1399 2015-07-31 11:35 JAVA-WEB单点登录实例\Demo2\WebContent\index.jsp
文件 39 2015-07-31 11:33 JAVA-WEB单点登录实例\Demo2\WebContent\me
文件 1018 2015-07-31 11:36 JAVA-WEB单点登录实例\Demo2\WebContent\WEB-INF\web.xm
文件 841 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.classpath
文件 1044 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.project
文件 503 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\.jsdtscope
文件 364 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\org.eclipse.jdt.core.prefs
文件 485 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\org.eclipse.wst.common.component
文件 345 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2015-07-31 10:29 JAVA-WEB单点登录实例\wds-SSOAuth\.settings\org.eclipse.wst.jsdt.ui.superType.name
............此处省略43个文件信息
相关资源
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
评论
共有 条评论