java连接数据库sql server_将SQL Server数据库连接到Java
我的項(xiàng)目沒有使用任何IDE。
整個(gè)編碼使用Textpad完成。
所以我需要幫助連接sql server數(shù)據(jù)庫和我的項(xiàng)目。
這是bean類,其中編寫了用于數(shù)據(jù)庫連接的業(yè)務(wù)邏輯。
我已經(jīng)安裝了SQL服務(wù)器并使用Windows身份驗(yàn)證創(chuàng)建了一個(gè)名為“vt”的數(shù)據(jù)庫。
我甚至為數(shù)據(jù)庫創(chuàng)建了dsn,即vtdsn。但仍然沒有找到課程的例外。
請幫忙。
M卡在這里。
之前它在我使用MS Access進(jìn)行數(shù)據(jù)庫時(shí)工作正常。
但是在使用SQL服務(wù)器進(jìn)行數(shù)據(jù)庫連接時(shí)我需要做些什么改變
package ankit;
import java.sql.*;
public class RegisterBean {
private Connection con;
private PreparedStatement pst;
private ResultSet rs;
private String myfirstname, mylastname, myemail, mypassword, dateofbirth, gender, college, address;
//code for setter and getter method. removed to shorten the code//
public RegisterBean() {
System.out.println("Default constructor of RegisterBean is called");
}
public void makeConnection() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:odbc:vtdsn");
} catch (Exception e) {
System.out.println("Error in making connection ");
e.printStackTrace();
}
}
public boolean checkRegistration(String fN, String lN, String email, String pwd, String dob, String gender, String coll, String addr) {
boolean flag;
makeConnection();
try {
pst = con.prepareStatement("insert into studentdetail values(?,?,?,?,?,?,?,?)");
pst.setString(1, fN);
pst.setString(2, lN);
pst.setString(3, email);
pst.setString(4, pwd);
pst.setString(5, dob);
pst.setString(6, gender);
pst.setString(7, coll);
pst.setString(8, addr);
int i = pst.executeUpdate();
System.out.println(i);
if (i >= 1) {
flag = true;
} else {
flag = false;
}
} catch (Exception e) {
flag = false;
e.printStackTrace();
}
return flag;
}
}
將驅(qū)動程序添加到我的java bean類文件所在的Tomcat的classes文件夾中
并將驅(qū)動程序添加到j(luò)re / lib和jre / lib / ext文件夾中。
現(xiàn)在收到此錯誤
Error in making connection
java.sql.SQLException: No suitable driver found for jdbc:sqlserver://localhost/S
QLEXPRESS/Databases/vt:1433;
at java.sql.DriverManager.getConnection(DriverManager.java:604)
at java.sql.DriverManager.getConnection(DriverManager.java:243)
at ankit.RegisterBean.makeConnection(RegisterBean.java:113)
at ankit.RegisterBean.checkRegistration(RegisterBean.java:124)
at org.apache.jsp.components.jsp.RegisterDataBase_jsp._jspService(Regist
erDataBase_jsp.java:117)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:432)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
90)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:123)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:589)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoin
t.java:1852)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:603)
at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
at ankit.RegisterBean.checkRegistration(RegisterBean.java:127)
at org.apache.jsp.components.jsp.RegisterDataBase_jsp._jspService(Regist
erDataBase_jsp.java:117)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:432)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
90)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:123)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:589)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoin
t.java:1852)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:603)
at java.lang.Thread.run(Thread.java:722)
false
解決:
解決我的問題。
我所做的只是下載sqljdbc4驅(qū)動程序并將驅(qū)動程序粘貼到TOMCAT lib文件夾中。 (注意:下載驅(qū)動程序后將其解壓縮到某處,然后你會在該解壓縮文件夾中找到原始驅(qū)動程序。將該文件粘貼到tomcat lib文件夾中。這就是我做錯了,我只是粘貼了下載的rar文件互聯(lián)網(wǎng),這就是為什么tomcat無法找到驅(qū)動程序)。
粘貼lib文件夾中的驅(qū)動程序后,只需將類路徑設(shè)置為該驅(qū)動程序即可完成。
總結(jié)
以上是生活随笔為你收集整理的java连接数据库sql server_将SQL Server数据库连接到Java的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5G基站设备安装
- 下一篇: 【Java】synchronized关键