is JTDS driver outdated?
Asked Answered
D

2

9

I'm now trying to decide which driver to use to create a DataSource from my JavaEE application to MS SqlServer.

A couple of years ago I had good experience with JTDS, and SO answers suggest that JTDS was a preference back then.

But now I can see that its latest version 1.2.5 is two years old (2009-12-30).

Is it a good enough reason to choose MS proprietary driver, or is JTDS so good that it doesn't require any development anymore? :)

Davisdavison answered 27/12, 2011 at 8:59 Comment(1)
(Just as a general comment, it's JTDS, not JDTS. I've edited your question throughout.)Lapham
T
7

Microsoft JDBC driver is JDBC 4.0 compliant while jTDS is JDBC 3.0.

Here are some new features and improvements introduced in version 4.0 of JDBC.

Tan answered 27/12, 2011 at 9:6 Comment(7)
I'm not sure that I need JDBC 4.0 features because I'm doing the same old stuff that I was doing when 4.0 was not available, but looking further I found that proprietary driver might be even faster. Will accept your answer if no one proves the contrary.Davisdavison
I have never used MS driver either :). jTDS had never let me down and I heard it outperforms MS driver.Tan
JTDS has better features (eg Windows Auth from Windows etc). Older MS JDBC didn't support SSL eitherYen
JTDS is more convenient to use because it is available from Maven repo. So I'm hoping someone will persuade me that being old doesn't mean being outdated.Davisdavison
Eeek, I didn't know this. I'll have to review jOOQ for some Blob.free() and Clob.free() usage, and similar things!Cardiganshire
"JTDS is more convenient to use because it is available from Maven repo." - As of November 2016, Microsoft's JDBC Driver for SQL Server is open source and available from Maven.Dudleyduds
Microsoft's JDBC Driver for SQL Server is in maven and it's actively being maintained. jTDS seems dead since Jun 08, 2013Coextensive
F
0

Even with jTDS not being actively maintained, there are still reasons one might prefer the JTDS driver over the Microsoft driver.

The main one that I've experienced is the jTDS driver permits Windows and SQL Server authentication for the user, but the Microsoft driver requires the addition of a DLL file to the system path for that particular functionality. Without that DLL file, only SQL Server authentication is permitted with the Microsoft driver.

"To use integrated authentication, copy the mssql-jdbc_auth--.dll file to a directory on the Windows system path on the computer where the JDBC driver is installed." (https://learn.microsoft.com/en-us/sql/connect/jdbc/building-the-connection-url?view=sql-server-ver16)

I haven't seen documentation on what you're supposed to do if you're not on a Windows system.

Fredricfredrick answered 31/7, 2024 at 3:28 Comment(0)

© 2022 - 2025 — McMap. All rights reserved.