win10连接sqlserver,在用hibernate反向工程的时候报错驱动程序无去使用安全套接字层(SSL)加密与SQL Server 建立安全连接

穆雄雄
人工智能领域优质创作者
博客专家认证
2017-11-17 03:35:43
如题所示,win10连接sqlserver,在用hibernate反向工程的时候报错 驱动程序无去使用安全套接字层(SSL)加密与SQL Server 建立安全连接,我用的jdk是1.7的,网上说换成1.8的,但是还是报错,是在纳闷,不知道咋回事,麻烦打什么帮忙看看,谢谢!
...全文
343 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianfang 2017-11-21
  • 打赏
  • 举报
回复
你用的JDBC是什么版本?sqlserver是什么版本?怎么设置的?不设置SSL连接行不行(本机连接不需要高安全性) 你用了什么版本的JDK?最后的错误信息是什么?
穆雄雄 2017-11-21
  • 打赏
  • 举报
回复
引用 4 楼 tianfang 的回复:
你的JDK8的小版本号是多少?不是8都可以解决的,6u171Fixed 7u131Fixed 8 b56Fixed 是解决问题的版本号 安装Java Cryptography Extension (JCE) 目前的解决只是到2048位,超过2048位,需要jdk9了 https://docs.oracle.com/cd/E19830-01/819-4712/ablsc/index.html 是安装其他JCE软件,特别是使用org.bouncycastle.jce
我试了还是不行
tianfang 2017-11-21
  • 打赏
  • 举报
回复
https://www.microsoft.com/en-us/download/details.aspx?id=11774 ,Microsoft JDBC Driver 6.0 for SQL Server, 这个是sqlserver的jdbc,版本6 jdk总是最新的错误最少,为什么用了7u51这么一个早期版本? 你抄个slserver jdbc的demo,测试一下jdbc连接是否正常

import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * This program demonstrates how to establish database connection to Microsoft
 * SQL Server.
 * @author www.codejava.net
 *
 */
public class JdbcSQLServerConnection {

	public static void main(String[] args) {

		Connection conn = null;

		try {

			String dbURL = "jdbc:sqlserver://localhost\\sqlexpress";
			String user = "sa";
			String pass = "secret";
			conn = DriverManager.getConnection(dbURL, user, pass);
			if (conn != null) {
				DatabaseMetaData dm = (DatabaseMetaData) conn.getMetaData();
				System.out.println("Driver name: " + dm.getDriverName());
				System.out.println("Driver version: " + dm.getDriverVersion());
				System.out.println("Product name: " + dm.getDatabaseProductName());
				System.out.println("Product version: " + dm.getDatabaseProductVersion());
			}

		} catch (SQLException ex) {
			ex.printStackTrace();
		} finally {
			try {
				if (conn != null && !conn.isClosed()) {
					conn.close();
				}
			} catch (SQLException ex) {
				ex.printStackTrace();
			}
		}
	}
}
穆雄雄 2017-11-21
  • 打赏
  • 举报
回复
引用 6 楼 tianfang 的回复:
你用的JDBC是什么版本?sqlserver是什么版本?怎么设置的?不设置SSL连接行不行(本机连接不需要高安全性) 你用了什么版本的JDK?最后的错误信息是什么?
jdbc版本?myeclipse是10.5的,sqlserver2012,啥都没设置,直接默认反向生成,在哪取消SSL?,jdk按照你说的整了一遍不行我就换成7u51的了,错误信息就是截图的那个,下不去 了
tianfang 2017-11-20
  • 打赏
  • 举报
回复
你的JDK8的小版本号是多少?不是8都可以解决的,6u171Fixed 7u131Fixed 8 b56Fixed 是解决问题的版本号 安装Java Cryptography Extension (JCE) 目前的解决只是到2048位,超过2048位,需要jdk9了 https://docs.oracle.com/cd/E19830-01/819-4712/ablsc/index.html 是安装其他JCE软件,特别是使用org.bouncycastle.jce
穆雄雄 2017-11-19
  • 打赏
  • 举报
回复
引用 2 楼 tianfang 的回复:
https://bugs.openjdk.java.net/browse/JDK-8072452 openjdk的bug,有解决的版本号
我把jdk都更新成了1.8的了,还是不行,一样的错误。然后我也看你链接里面的那个解决方案,没看懂,还请你帮我解释一下,谢谢
tianfang 2017-11-19
  • 打赏
  • 举报
回复
https://bugs.openjdk.java.net/browse/JDK-8072452 openjdk的bug,有解决的版本号
tianfang 2017-11-19
  • 打赏
  • 举报
回复
java自身问题,DH的质数位数限制 https://stackoverflow.com/questions/6851461/java-why-does-ssl-handshake-give-could-not-generate-dh-keypair-exception 最初bug : http://bugs.java.com/bugdatabase/view_bug.do?bug_id=6521495 后续bug: http://bugs.java.com/bugdatabase/view_bug.do?bug_id=7044060,这里说明了修复的java版本号: 6u171Fixed 7u131Fixed 8 b56Fixed 你更新jdk版本吧

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧