public
inte***ce
loginservice
/** * 使用者登入處理
* title: loginserviceimpl
* description:
*@version 1.0
*/@service
public
class
loginserviceimpl
implements
loginservice
//取使用者資訊
tbuser user = list.get(0);
//判斷密碼是否正確
if (!digestutils.md5digestashex(password.getbytes()).equals(user.getpassword()))
// 3、如果正確生成token。
string token = uuid.randomuuid().tostring();
// 4、把使用者資訊寫入redis,key:token value:使用者資訊
user.setpassword(null);//密碼不帶回客戶端
jedisclient.set("session:" + token, jsonutils.objecttojson(user));
// 5、設定session的過期時間
jedisclient.expire("session:" + token, 1800);
// 6、把token返回
//返回結果
return e3result;
}}瀏覽器不允許跨域請求
在每個頁面獲取使用者資訊,解決跨域問題是要jsonp,每個頁面跨域引入這個js檔案來獲取使用者資訊還需要引入jquery.cookie.js和jquery-1.4
.2.min.js
var e3mall =
$.ajax(
}});
}}$(function());
/** * 根據token查詢使用者資訊controller
* title: tokencontroller
*/@controller
public
class
tokencontroller
return jsonutils.objecttojson(result);
}*/@responsebody
public object getuserbytoken(@pathvariable string token, string callback)
return result;
}}/**
* 根據token取使用者資訊
*/@service
public
class
tokenserviceimpl
implements
tokenservice ")
private integer session_expire;
@override
public e3result getuserbytoken(string token)
//取到使用者資訊更新token的過期時間
jedisclient.expire("session:" + token, session_expire);
//返回結果,e3result其中包含tbuser物件
tbuser user = jsonutils.jsontopojo(json, tbuser.class);
return e3result.ok(user);
}}
使用者登入操作
登入套路 1.dao 把查詢出來的登入語句封裝在 admin表中,其中可以使用外掛程式去儲存資料 select from admin where username and password queryrunner qr new queryrunner datasourceutils.getdatas...
使用者登入操作
測試使用者登入介面,首先從資料庫裡面獲取資料,進行遍歷,然後獲取使用者名稱密碼之後呼叫資料庫進行查詢,查詢是否有資料進行測試是否含有,最後進行資料的查詢,最後進行登入後台的使用者介面,當使用者登入註冊以後,需要你測試賬號的形式以及密碼的格式是否正確,以及是否為空,以及是否符合相應的格式。用js進行測...
使用者登入 單點登入
首先是為啥要用單點登入的問題,單點登入也就是sso sso是在多個應用系統中,使用者只需要登入一次就可以訪問所有相互信任的應用系統。1 任何系統都必須去登陸伺服器進行登入 2 伺服器就記住了登入狀態 3 其他系統訪問受保護資源,需要再次登入,跳轉到sso server登入的時候,伺服器告訴客戶端,已...