<%
String name=request.getParameter("name");
String password=request.getParameter("password");
String driver="oracle.jdbc.driver.OracleDriver";
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String dname="wen";
String dpassword="orcl";
Connection conn=null;
PreparedStatement pstat=null;
ResultSet rs=null;
boolean flag=false;
try{
String sql="select name from zhang where name=? and password=?";
Class.forName(driver);
conn=DriverManager.getConnection(url,dname,dpassword);
pstat=conn.prepareStatement(sql);
pstat.setString(1,name);
pstat.setString(2,password);
rs=pstat.executeQuery();
if(rs.next()){
flag=true;
session.setAttribute("uname",rs.getString(1));
}else{
request.setAttribute("err","错误的用户名或密码!!");
}
rs.close();
pstat.close();
conn.close();
}catch(Exception e){
System.out.println("数据库连接失败");
}
但是老是连不上 数据库驱动包我也加了
String name=request.getParameter("name");
String password=request.getParameter("password");
String driver="oracle.jdbc.driver.OracleDriver";
String url="jdbc:oracle:thin:@localhost:1521:orcl";
String dname="wen";
String dpassword="orcl";
Connection conn=null;
PreparedStatement pstat=null;
ResultSet rs=null;
boolean flag=false;
try{
String sql="select name from zhang where name=? and password=?";
Class.forName(driver);
conn=DriverManager.getConnection(url,dname,dpassword);
pstat=conn.prepareStatement(sql);
pstat.setString(1,name);
pstat.setString(2,password);
rs=pstat.executeQuery();
if(rs.next()){
flag=true;
session.setAttribute("uname",rs.getString(1));
}else{
request.setAttribute("err","错误的用户名或密码!!");
}
rs.close();
pstat.close();
conn.close();
}catch(Exception e){
System.out.println("数据库连接失败");
}
但是老是连不上 数据库驱动包我也加了
}catch(Exception e){
//System.out.println("数据库连接失败");
e.printStackTrace();//把错误的详细信息打印出来,在控制台查看错误的详细原因,try..catch时,抓到的错,打印到控制台上,有处于查找错误的原因。不要把它堵死了。
}
java.lang.NullPointerException
at daoimpl.PersonDaoImpl.islogin(PersonDaoImpl.java:18)
at org.apache.jsp.login_005fconfig_jsp._jspService(login_005fconfig_jsp.java:71)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
String url="jdbc:oracle:thin:localhost:1521:orcl";
错了,有localhost前边有“//”
你看tomcat目录下的\work\Catalina\localhost\目录,在里边找到你项目的目录。里找到 org.apache.jsp.login_005fconfig_jsp._jspService类。看类的第71行代码。错误就在那里。那里的空指针异常
oracle的jdbc thin连接url是:jdbc:oracle:thin:@主机IP:端口(默认是1521):数据库名
你用什么驱动jar?
看错误
java.lang.NullPointerException
at daoimpl.PersonDaoImpl.islogin(PersonDaoImpl.java:18)
也不是连接的问题
classes12.jar
ojdbc14.jar我单独用账户密码能进数据库 打扮通过jdbc就不行了
格式啦,权限怎么设置
出现空指针,仔细检查。有可能是你程序的错。