package com.example.dao.DaoImpl;
import com.example.dao.DaoInterface.Dao_UserLoginInterface;
import com.example.pojo.Users;
import com.example.utils.JdbcUtils;
import java.sql.*;
public class Dao_UserLoginImplClass implements Dao_UserLoginInterface {
/**
* 用户登录数据库查询
* @param username
* @param userpwd
* @return
*/
@Override
public Users SelectUserByUserNameAndUserPwd(String username, String userpwd) {
Users user = null;
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try{
System.out.println(1);//用于定位
conn = JdbcUtils.JDBC_Connection();
System.out.println(2);//用于定位
ps = conn.prepareStatement("select * from oneselfproject.user where user.UserID = ? and user.UserName = ?");
System.out.println(3);//用于定位
ps.setString(1,username);
ps.setString(2,userpwd);
System.out.println(4);//用于定位
rs= ps.executeQuery();
System.out.println(5);//用于定位
while (rs.next()){
user = new Users();
user.setUserID(rs.getString("UserID"));
user.setUserName(rs.getString("UserName"));
user.setUserEmial(rs.getString("UserEmial"));
}
}catch (Exception e){
e.printStackTrace();
}finally {
JdbcUtils.JDBC_Release_Resources(conn,ps,rs);
}
return user;
}
}
老师,dao层的代码,我现在连接数据库有问题。我对他进行定位,发现现在在这里出现了问题,导致返回的对象都是null;
ps = conn.prepareStatement("select * from oneselfproject.user where user.UserID = ? and user.UserName = ?");
报错的结果:
[2021-08-03 11:54:10,892] Artifact OneSelfProject_Test:war exploded: Artifact is deployed successfully
[2021-08-03 11:54:10,892] Artifact OneSelfProject_Test:war exploded: Deploy took 23,134 milliseconds
1
2
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1364)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1187)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.example.utils.JdbcUtils.<clinit>(JdbcUtils.java:29)
at com.example.dao.DaoImpl.Dao_UserLoginImplClass.SelectUserByUserNameAndUserPwd(Dao_UserLoginImplClass.java:27)
at com.example.service.ServiceImpl.Service_UserLoginImplClass.ServiceUserLoginClass(Service_UserLoginImplClass.java:13)
at com.example.servlet.Login.UserLoginServlet.doPost(UserLoginServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/oneselfproject?useUnicode=true&characterEncoding=utf8
at java.sql.DriverManager.getConnection(DriverManager.java:689)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at com.example.utils.JdbcUtils.JDBC_Connection(JdbcUtils.java:42)
at com.example.dao.DaoImpl.Dao_UserLoginImplClass.SelectUserByUserNameAndUserPwd(Dao_UserLoginImplClass.java:27)
at com.example.service.ServiceImpl.Service_UserLoginImplClass.ServiceUserLoginClass(Service_UserLoginImplClass.java:13)
at com.example.servlet.Login.UserLoginServlet.doPost(UserLoginServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
java.lang.NullPointerException
at com.example.dao.DaoImpl.Dao_UserLoginImplClass.SelectUserByUserNameAndUserPwd(Dao_UserLoginImplClass.java:29)
at com.example.service.ServiceImpl.Service_UserLoginImplClass.ServiceUserLoginClass(Service_UserLoginImplClass.java:13)
at com.example.servlet.Login.UserLoginServlet.doPost(UserLoginServlet.java:37)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:887)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1684)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
为什么在这里会出现这种问题???