Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    83

    JDBC collegamento ad access

    Ciao a tutti,
    sto realizzando un piccolo progetto web, in cui include il servizio di registrazione e login tutto questo realizzato mediante inserimento dei dati all' interno di un db(access) tramite una classe java invocata da un Bean , ed attraverso un ' ulteriore classe (anch' essa collegata tramite Bean) che verifica l' username e la password inserita dall' utente nella sessione di login.
    Quest' ultima classe non fa altro che verificare che l'username inserito sia presente nel db creato in precedenza e che la password coincida con il record dell' username inserito (altri servizi script verificheranno poi che lo stesso username non sia registarto da 2 o piu utenti , argomenti cmq non affini a questa discussione).
    Il mio problema è il seguente :

    vorrei realizzare un metodo (getUsername) all' interno della classe Login che della sessione l' username al' interno della sessione corrente.
    Chiedevo appunto da Voi esperti di programmazione qualche consiglio.

    Questa è la classe realizzata fino a questo momento (notate che alcuni metodi non sono altro che prove affini ad alcuni servizi):

    codice:
    package jspbeans;
    import java.sql.*;
    
    public class LoginBean {
    	private boolean ret ;
    	private Statement s;
    	
    	
    	public LoginBean(){
    		try{
         			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    				String dbUrl = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Program Files/Apache Software Foundation/Tomcat 5.5/webapps/Progetto/db.mdb";
    				Connection c = DriverManager.getConnection(dbUrl,"","");
        			s=c.createStatement();
    			
    		}catch(Exception e){e.printStackTrace();}
    	}	
    
    
    	
    	public boolean verifica (String username, String password){
    		ret=false ;
        	try{
        			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    				String dbUrl = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Program Files/Apache Software Foundation/Tomcat 5.5/webapps/Progetto/db.mdb";
    				Connection c = DriverManager.getConnection(dbUrl,"","");
        			s=c.createStatement();
         			String query = "select * from utenti"; 
         			ResultSet r=s.executeQuery(query);
          			while(r.next()) {
       					String un = r.getString("username");
       					String pw = r.getString("password");
       					if(un.equals(username) && pw.equals(password)){
       					ret = true;}
      				}  // end while
      			
    			//c.close();
            	//s.close();  
    	   } catch (Exception e){e.printStackTrace();}
    	   return ret;
    	}
    	
    	
    	
      	public boolean getRet() {
       		return ret;
      	}
      
      
       	public boolean logout(){
          	ret=false;
          	return ret;
        }
          
          
        public boolean Votato(){
        	return true;
         }
          
            
        public static void main (String[]args){
    		LoginBean lb= new LoginBean();
    		
    		if (lb.verifica("alessio","140186")== true)
    		{System.out.println ("Sei stato riconosciuto");
    			//lb.logout();
    		System.out.println (lb.getRet());
    		
    		}
    		else 
    		{System.out.println("Username o password errati!");
    			System.out.println (lb.getRet());}
    			
    		//lb.verifica("alessio","140186");
    		//lb.logout();
    		//System.out.println(lb.getRet());
    		
    	}
    
    }

  2. #2
    vorrei realizzare un metodo (getUsername) all' interno della classe Login che della sessione l' username al' interno della sessione corrente.
    E' vero che un forum di programmatori e che alcuni di questi riescono a leggere anche il codice binario! ma un pò di italiano non guasterebbe.
    Cmq non so se ho capito, ma vorresti un metodo che ti restituisca l'username che hai al momento in sessione o cosa ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    83
    hai colto perfettamente il problema mi serve questa funzione getUsename che restituisca l'username della sessione che ho al momento.
    Scusami per la dicitura incomprensibile mi sono reso conto solo ora di quello che ho scritto...
    Sono un po di fretta....

  4. #4
    Allora l'unico modo che hai per farlo è attraverso l'oggetto request della servlet o direttamente da httpSession della jsp, ma non puoi farlo direttamente sul bean almeno se non passi uno di questi. Es:
    Servlet:
    codice:
    public void doGet(HttpRequest request,HttpResponse response)
    {
      //Recupero dalla sessione l'username che prima avevo inserito
      //con session.put("username","questo è il mio username");
      String username = request.getSession(false).getAttribute("username");
    }
    jsp:
    codice:
    <% 
     //Recupero dalla sessione l'username che prima avevo inserito
      //con session.put("username","questo è il mio username");
      String username = session.getAttribute("username");
    %>
    jsp + Bean:
    codice:
    <% 
     //Recupero dalla sessione l'username che prima avevo inserito
      //con session.put("username","questo è il mio username");
      bean.getUsername(session);
      
      public class Bean{
      public getUsername(HttpSession session)
     {
       return  session.getAttribute("username");
     }
    }
    %>
    Spero di essere stato chiaro.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    83
    Molto chiaro, ti ringrazio per il consiglio e l' attenzione.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.