Von einer JSP-Seite den loginName aus einer SQL-DB auslesen.
Tomi
- java
Hallo
Ich habe folgendes Problem:
Ich logge mich auf einer jsp Seite mit Benutzername und Passwort ein und kontrolliere die Angaben in meiner Db. Wenn Sie korrekt sind leite ich das ganze weiter auf die Seite main.jsp. Nun möchte ich in der main.jsp den aktuellen eingeloggten Benutzer anzeigen.
Wie kann ich den Benutzernamen aus der Db auslesen und in der Main.jsp anzeigen??
Danke für eure Hilfe...
Hier der Source meines Servlets...
package ch.comconnect.ais.servlet;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;
import java.io.*;
import java.net.*;
import java.sql.*;
import java.util.Properties;
public class Login extends HttpServlet
{
private Connection con;
private Driver driver;
private String lastErr;
public void init() throws ServletException
{
try
{
driver = (Driver) Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}
catch (Exception e)
{
lastErr = "Cannot load the driver, reason:"+e.toString() +
"Probably the SQL-Driver is not in the servlet engine classpath";
return;
}
String sConnect = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=ais;user=****;password=****";
try
{
con = driver.connect(sConnect, new Properties());
}
catch (SQLException e)
{
lastErr = "Cannot connect to "+sConnect+", reason:"+e.toString();
}
}
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
doPost(req, res);
}
public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
String sLoginName = req.getParameter("LoginName");
String sLoginPassword = req.getParameter("LoginPassword");
int nRows = 0;
try
{
Statement s = con.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM tbl_user WHERE user_code LIKE '"+sLoginName+"' AND user_password LIKE '"+sLoginPassword+"'");
ResultSetMetaData dbMeta = rs.getMetaData();
while (rs.next())
{
nRows++;
}
if (nRows !=0)
{
gotoPage("/main.jsp", req, res);
}
else
{
gotoPage("/login.jsp", req, res);
}
}
catch (SQLException e)
{
}
}
public String getServletInfo()
{
return "Servlet for AIS login";
}
private void gotoPage(String forward_page, HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
try
{
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(forward_page);
dispatcher.forward(req, res);
}
catch (Exception ex)
{
ex.printStackTrace ();
}
}
public void destroy()
{
if (con != null)
{
try
{
con.close();
}
catch (SQLException e)
{
logMsg("Failed to close connection:"+e.toString());
}
}
}
private void logMsg(String s)
{
log(s);
System.out.println(s);
}
}
Greets Tomi
Hi,
Hallo
Ich habe folgendes Problem:
Ich logge mich auf einer jsp Seite mit Benutzername und Passwort ein und kontrolliere die Angaben in meiner Db. Wenn Sie korrekt sind
, dann hast Du doch die Informationen bereits.
"Hänge" sie z.B. an den Request, die Session etc. und greife dann in der JSP darauf zu.
Viele Grüße,
Martin Jung