La razón principal para usar jTDS es que usa la licencia GPL menor, donde el controlador de Microsoft usa su propia licencia que tiene muchas más restricciones. Una restricción de la nota es que es posible que no
- eludir las limitaciones técnicas del software
hay más restricciones en la licencia, tales como:
- transfiera el software o este acuerdo a un tercero
- utilizar el software para servicios comerciales de software de alojamiento
que podría interpretarse que no se puede utilizar en el código de producción, sin embargo los puntos anteriores en la licencia parecen permitirlo.
Habiendo dicho todo esto, no conozco las licencias dentro de SQL Server, que pueden o no restringir controladores de terceros como jTDS que se conectan a él.
Otro punto es que jTDS está disponible a través de maven, el controlador de Microsoft no lo está.
<dependency>
<groupId>net.sourceforge.jtds</groupId
<artifactId>jtds</artifactId>
<version>1.3.1</version>
</dependency>
Para mi elección, utilice jTDS, es más permisiva y con menos probabilidades de meterte en problemas, y; es un mejor conductor.
No me puedo imaginar elegir un componente de integración de Microsoft Java sobre algo así como jTDS. – Pointy
La documentación de Atlassian para Confluence recomienda usar JTDS sobre el jar de MS JDBC cuando se conecta a SQL Server ... –
Consulte esta pregunta: http://stackoverflow.com/questions/1186932/using-jtds-driver –