Advertisement
Guest User

Untitled

a guest
Jun 16th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.69 KB | None | 0 0
  1. package login;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.ResultSet;
  6. import java.sql.SQLException;
  7. import java.sql.Statement;
  8.  
  9.  
  10. public class UserSession {
  11.    
  12.     private int userID;
  13.     private boolean loggedIn;
  14.     private Connection con;
  15.    
  16.     public UserSession(){
  17.         userID = 0;
  18.         loggedIn = false;
  19.         con = null;
  20.     }
  21.    
  22.     public boolean loginUser(int userID) {
  23.         if (this.userID == userID)  {
  24.             return loggedIn;
  25.         }
  26.         return false;
  27.     }
  28.    
  29.     public boolean isLoggedIn() {
  30.         return loggedIn;
  31.     }
  32.  
  33.     //get userID from Userdata - if user does not exist or connection
  34.     //isn't working - return <= 0, else return userID
  35.     public int getUserID(String userName, Connection con){
  36.  
  37.         String userIDquery = "SELECT userID FROM UserData WHERE userName = " + userName + ";";
  38.         int rv = -1;
  39.    
  40.         try{
  41.             Statement stmt = con.createStatement();
  42.             ResultSet rs = stmt.executeQuery(userIDquery);
  43.        
  44.             if (rs == null) {
  45.                 rv = 0;
  46.             }
  47.             else {
  48.                 rv = rs.getInt(1); 
  49.             }
  50.             rs.close();
  51.             stmt.close();  
  52.         }
  53.         catch(SQLException e){
  54.             System.out.println(e.getMessage());
  55.         }
  56.         return rv;
  57.     }
  58.    
  59.     public String getUserName() {
  60.        
  61.         String userNameQuery = "SELECT userName from UserData WHERE userID = " + userID + ";";
  62.         String rv = "";
  63.        
  64.         try {
  65.             Statement stmt = con.createStatement();
  66.             ResultSet rs = stmt.executeQuery(userNameQuery);
  67.            
  68.             if (rs == null){
  69.                 System.out.println("Error: Probably connection closed.");
  70.             }
  71.             else {
  72.                 rv = rs.getString(1);
  73.             }
  74.             rs.close();
  75.             stmt.close();
  76.         }
  77.         catch(SQLException e) {
  78.             System.out.println(e.getMessage());
  79.         }
  80.         return rv;
  81.        
  82.     }
  83.  
  84.     public void addNewUser(String username, String password, Connection con) {
  85.        
  86.         try {
  87.            
  88.             Statement stmt = con.createStatement();
  89.             ResultSet rs = stmt.executeQuery("SHOW TABLES LIKE 'UserData';");
  90.             if (rs == null) {
  91.                 stmt.executeQuery("CREATE TABLE UserData (userName VARCHAR(15), password VARCHAR(20), userID INT PRIMARY_KEY AUTO_INCREMENT);");
  92.             }
  93.        
  94.             String insertQuery = "INSERT INTO UserData VALUES (" + username + "," + password + ", NULL);";
  95.             stmt.executeQuery(insertQuery);
  96.         }
  97.    
  98.         catch(SQLException e){
  99.             System.out.println(e.getMessage());
  100.         }
  101.     }
  102.    
  103.     public void startConnection() {
  104.         try {
  105.             String url = "jdbc:mysql://dbserver.cs.uchicago.edu/laurenellsworth";
  106.             Class.forName("com.mysql.jdbc.Driver");
  107.             con = DriverManager.getConnection(url, "laurenellsworth", "tenletters");
  108.         }
  109.         catch(SQLException e) {
  110.             System.out.println(e.getMessage());
  111.         }
  112.         catch(ClassNotFoundException e){
  113.             System.out.println(e.getMessage());
  114.         }
  115.     }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement