【Java开源代码栏目提醒】:网学会员为广大网友收集整理了,TicketAuthenticate.java,希望对大家有所帮助!
package flashRemoting.FMSAuthenticateTest;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import java.io.InputStream;
import java.rmi.server.UID;
import java.text.DateFormat;
import java.util.Map;
import java.util.HashMap;
public class TicketAuthenticate {
String sql = null;
Connection connection = null;
PreparedStatement stmt = null;
ResultSet rs = null;
Map ticket_Map;
Map ret_Map;
int Updated;
public Map checkUser(String userName, String userPassword) {
System.out.println(userName + "......" + userPassword);
sql = "select * from main WHERE name = ? AND password = ?";
System.out.println("开始查询数据库");
try {
doConnection();
stmt = connection.prepareStatement(sql);
stmt.setObject(1, userName);
stmt.setObject(2, userPassword);
rs = stmt.executeQuery();
ret_Map = new HashMap();
ret_Map.put("logined", "false");
ret_Map.put("userName", userName);
//System.out.println(rs.next());
System.out.println(ret_Map.get("logined"));
System.out.println(ret_Map.get("userName"));
while (rs.next()) {
//获取字段值
ret_Map.put("logined", "true");
setTicket(userName);
ret_Map.put("SessionID", ticket_Map.get("SessionID"));
ret_Map.put("expire_time", ticket_Map.get("expire_time"));
ret_Map.put("logined", "true");
System.out.println(ret_Map.get("logined"));
System.out.println(ret_Map.get("SessionID"));
System.out.println(ret_Map.get("expire_time"));
}
}
catch (Exception e) {
System.out.println(e);
}
finally {
try {
rs.close();
stmt.close();
connection.close();
}
catch (Exception e) {}
}
return ret_Map;
}
public Map setTicket(String userName) {
System.out.println(userName + "......");
//-----------------------------------------------------------------
java.util.Calendar nowDate = java.util.Calendar.getInstance();
System.out.println(nowDate.toString());
nowDate.add(nowDate.SECOND, 30);
//-----------------------------------------------------------------
Timestamp expire_Timestamp = new Timestamp(nowDate.getTimeInMillis());
String expire_time = expire_Timestamp.toString().substring(0,
expire_Timestamp.toString().indexOf("."));
System.out.println(expire_time.toString());
//-----------------------------------------------------------------
UID myUID = new UID();
String SessionID = myUID.toString();
System.out.println(SessionID);
sql = "INSERT INTO SessionTicket (name, SessionID, expire_time) VALUES('" +
userName + "','" + SessionID + "','" + expire_time + "')";
System.out.println("开始Update数据库");
try {
ticket_Map = new HashMap();
ticket_Map.put("SessionID", SessionID);
ticket_Map.put("expire_time", expire_time);
doConnection();
stmt = connection.prepareStatement(sql);
stmt.executeUpdate();
}
catch (Exception e) {
System.out.println(e);
}
finally {
ticket_Map.put("Updated", "true");
try {
rs.close();
stmt.close();
connection.close();
}
catch (Exception e) {}
}
return ticket_Map;
}
public String findTicket(String ticket_hash) {
System.out.println(ticket_hash + "......");
java.util.Calendar nowDate = java.util.Calendar.getInstance();
System.out.println(nowDate.toString());
Timestamp now_Timestamp = new Timestamp(nowDate.getTimeInMillis());
String now_time = now_Timestamp.toString().substring(0, now_Timestamp.toString().indexOf("."));
String isTicketOK = "false";
System.out.println(now_time);
//-----------------------------------------------------------------
sql = "SELECT main.name FROM main INNER JOIN SessionTicket ON main.name = SessionTicket.name WHERE SessionTicket.SessionID = '" +
ticket_hash + "' AND SessionTicket.