package Servleti;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.SingleThreadModel;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet implements SingleThreadModel
{
String Upit="";
String Greska="";
String KorisnickoIme="";
String Lozinka="";
Connection con= null;
Statement stmt= null;
ResultSet RS= null;
boolean Prazno = false;
ServletContext sc= null;
RequestDispatcher rd= null;
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
doPost(req, res); // poziva metodu doPost
}
public void doPost (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
HttpSession session= null;
session= req.getSession(true);
sc= getServletContext();
if (!req.getParameter("KorisnickoIme").equals("")) // da li je upisano korisnicko ime ?
{
KorisnickoIme= req.getParameter("KorisnickoIme");
} else
{
Prazno= true;
Greska+= "Korisnicko ime nije upisano
";
}
if (!req.getParameter("Lozinka").equals("")) // da li je upisana lozinka ?
{
Lozinka= req.getParameter("Lozinka");
} else
{
Prazno= true;
Greska+= "Lozinka nije upisana
";
}
try
{
session.setAttribute("KorisnickoIme",KorisnickoIme);
session.setAttribute("Lozinka", Lozinka);
konektujSe(req, res);
zatvoriKonekciju();
pozoviJSP(req, res);
} catch (Exception e)
{
Greska= "Greska! Pokusajte Ponovo";
proslediGresku(Greska, req, res);
Greska= "";
}
}// kraj doPost Metode
public void konektujSe(HttpServletRequest req, HttpServletResponse res)
{
try
{
Class.forName("sun.oracle.JdbcOdbcDriver").newInstance();
String url= "oracle.jdbc:thin:@localhost:1521:XE";
con = DriverManager.getConnection(url,"KorisnickoIme","Lozinka");
stmt=con.createStatement();
String Upit = "select * from Korisnici where (Korisnicko_Ime='"+KorisnickoIme+"' and Lozinka='"+Lozinka+"')";
RS=stmt.executeQuery(Upit);
if(!RS.next())
{
Greska="Ne postoji korisnik sa unetim korisnickim imenom i sifrom!";
proslediGresku(Greska,req,res);
}
} catch (Exception e)
{
//e.printStackTrase();
Greska= "Konekcija sa bazom nije uspostavljena";
proslediGresku(Greska, req, res);
Greska= "";
}
}
public void zatvoriKonekciju ()
{
if (con!=null)
{
try
{
con.close();
} catch (SQLException e)
{
Greska= "Greska prilikom zatvaranja veze sa bazom podataka";
Greska= "";
}
} // kraj metode zatvoriKonekciju
}
public void proslediGresku(String g, HttpServletRequest req, HttpServletResponse res)
{
HttpSession session=null;
session= req.getSession(true);
session.setAttribute("Greska", Greska);
rd = sc.getRequestDispatcher("/Greska.jsp");
try
{
rd.forward(req, res);
Greska= "";
} catch (Exception e)
{
}
} // kraj metode proslediGresku
public void pozoviJSP (HttpServletRequest req, HttpServletResponse res)
{
try
{
rd = sc.getRequestDispatcher("/FizickaL.jsp");
rd.forward(req, res);
} catch (Exception e)
{
Greska = "Nije Uspelo "+e;
proslediGresku(Greska, req, res);
Greska= "";
}
} //kraj metode pozoviJSP
}