java调用php session_php读取memcahed java session
情景:
1:現在有兩個系統,一個是Java做的系統,一個是PHP的系統,現在要把兩個系統弄成一個單點登錄。
2:兩個系統兩個庫,兩個庫的表結構完全不同,現在要解決的就是session共享問題和用戶信息的同步。
方法:::
1:java系統為主系統,php那邊的登錄,退出,注冊都跳到java那邊系統去登錄。
2:java系統那邊可以創建一個“session表“存的是每個用戶對應session信息。php那邊就要根據用戶ID去‘session表’,存在取出相關信息,做登錄。因為要維護兩個庫,所以php那邊要查詢自己庫中是否存在這個用戶,不存在需要添加。(沒用這種方式,需要維護session的生命周期太麻煩)
3?**:創建”一個sesison表“對兩邊的系統都要付出比較大的代價,而且每次都要查數據庫,session有效期維護那邊程序也很復雜。所以借組于“memcache",tomat?于memcache整合(http://bbhaiidreamer.blog.51cto.com/3398980/841814)。這樣的話,session信息就交memcache管理了。(項目采用這種方法)。
4:JAVA?與?PHP?是一、二級域名,可以實現cookie共享。這樣在php那邊通過得到session_id?到memcache里面去取用戶的信息。由于java跟php的memcache存的格式不一樣。java存的時xml格式的,所以php還要做一些處理,通過session_id,取到對應的xml,再解析xml里面的內容。完后再做登錄操作。存在,直接登錄,不存在,入庫再登錄操作。
java代碼不用做什么處理,php這邊的代碼如下:
ps:?由于php系統比較特殊,用戶表中只需要維護幾個關鍵字段而已。在這里講的是正對于我目前的系統,只供參考,具體問題具體分析。如有說錯的地方,望指正。
總結
以上是生活随笔為你收集整理的java调用php session_php读取memcahed java session的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux samba配置(linux
- 下一篇: 怎么把java程序放进php_如何在ph