当向pstmt 设置int类型的参数时性能又正常了。 为什么设置string类型的时候会出现的?令我百思不得其解。 我查看sqlserver jdbc 驱动的文档 发现里面有这么一个参数: SendStringParameters AsUnicode SendStringParametersAsUnicode={true | false}. Determines whether string parameters are sent to the SQL Server database in Unicode or in the default character encoding of the database. True means that string parameters are sent to SQL Server in Unicode. False means that they are sent in the default encoding, which can improve performance because the server does not need to convert Unicode characters to the default encoding. You should, however, use default encoding only if the parameter string data that you specify is consistent with the default encoding of the database. The default is true