我想用SQL server 2012连接Java类文件。我已经使用SQL Server身份validationlogin。 但是我正在接收连接错误。 错误:与主机127.0.0.1,端口1433的TCP / IP连接失败。 错误:“Connection refused:connect。validation连接属性确保主机上正在运行SQL Server实例并接受端口上的TCP / IP连接请确保与端口的TCP连接没有被防火墙阻止“。 我的代码— Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //1. Register your driver //2. get the connection object //Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=aysha","sa","admin"); Connection con = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1;databaseName=aysha","user=sa","password=admin"); //"jdbc:sqlserver://127.0.0.1:1433; Instance=SQL2008;" + "databaseName=MB;user=sa;password=123;"; //Connection con = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=aysha","sa" , "password"); //3. Prepare a statement Statement stmt = con.createStatement(); //4. Write the query` String […]
在Java中使用this关键字的最佳做法是什么? 例如,我有以下类: class Foo { Bar bar; public Foo(Bar bar) { this.bar = bar; } } 这很好,但是Java是足够聪明的,知道发生了什么,如果我改变构造函数中的语句 bar = bar; 那么为什么使用this关键字? (我认识到在某些情况下,完全有必要使用它,我只是要求这样的情况)。 实际上,我倾向于纯粹为了可读性而使用关键字,但常见的做法是什么? 例如,在整个商店中使用它使我的代码看起来有点乱 boolean baz; int someIndex = 5; this.baz = this.bar.getSomeNumber() == this.someBarArray[this.someIndex].getSomeNumber(); 很明显,代码很less,但它说明了我的例子。 在这些情况下是否只是个人偏好?
我有一个原始的浮动,我需要作为一个原始的双。 简单地将浮点数转换为double值给我奇怪的额外精度。 例如: float temp = 14009.35F; System.out.println(Float.toString(temp)); // Prints 14009.35 System.out.println(Double.toString((double)temp)); // Prints 14009.349609375 然而,如果不是投射,我输出一个string的浮动,并parsingstring为双,我得到我想要的: System.out.println(Double.toString(Double.parseDouble(Float.toString(temp)))); // Prints 14009.35 有没有更好的方法比去串和回?
我正在寻找一些关于Java Cloneable教程,但没有得到任何好的链接,Stack Overflow越来越明显。 我想知道以下几点: 可复制意味着我们可以通过实现Cloneable接口来拥有一个克隆或一个对象副本。 做这件事有什么好处和坏处? 如果对象是复合对象,recursion克隆是如何发生的? 谢谢。
我有一个通用的Java方法,具有以下方法签名: private static ResultSet runSQLResultSet(String sql, Object… queryParams) 它打开一个连接,使用sql语句和queryParams可变长度数组中的参数构buildPreparedStatement ,运行它,cachingResultSet (在CachedRowSetImpl ),closures连接并返回caching的结果集。 我在logging错误的方法中有exception处理。 我将sql语句logging为日志的一部分,因为它对debugging非常有帮助。 我的问题是,日志logging的stringvariablessql日志的模板语句?而不是实际值。 我想logging执行(或试图执行)的实际语句。 所以…有什么办法来获得将由PreparedStatement运行的实际SQL语句? (如果我自己没有构build它,如果我找不到一个访问PreparedStatement's SQL的方法,那么我可能最终会自己去构build它。)
我需要分割一个string基于分隔符-和. 。 以下是我所需的输出。 AA.BB-CC-DD.zip – > AA BB CC DD zip 但我的下面的代码不起作用。 private void getId(String pdfName){ String[]tokens = pdfName.split("-\\."); }
如何使用java.util.jar.JarOutputStream编程方式创buildJAR文件? 由我的程序产生的JAR文件看起来是正确的(它提取罚款),但是当我尝试从它加载一个库Java抱怨,它找不到明确存储在其中的文件。 如果我解压缩JAR文件并使用Sun的jar命令行工具重新压缩它,则生成的库工作正常。 总之,我的JAR文件有些问题。 请解释如何以编程方式创buildJAR文件,并使用清单文件完成。
我想为log4j和log4net appender设置日志文件名以获得当前date。 我们正在做每日滚动,但当前的日志文件没有date。 日志文件名称格式是 logname.2008-10-10.log 任何人都知道我这样做的最好方法? 编辑:我忘了提及,我们也想在log4net中做到这一点。 另外任何解决scheme都需要在JBoss中可用。
我想出了一个机制来调用一个从Java的EXE和传递特定的参数。 我能怎么做? Process process = new ProcessBuilder("C:\\PathToExe\\MyExe.exe").start(); InputStream is = process.getInputStream(); InputStreamReader isr = new InputStreamReader(is); BufferedReader br = new BufferedReader(isr); String line; System.out.printf("Output of running %s is:", Arrays.toString(args)); while ((line = br.readLine()) != null) { System.out.println(line); } 以前的代码工作。 但是我无法传入参数 。 MyExe.exe接受参数。 另一个问题是当PathToExe有空格时。 ProcessBuilder似乎不工作。 例如: C:\\User\\My applications\\MyExe.exe 谢谢。
两年之后,这个function似乎有了一个原型 实现 , MLVM已经把function列为“原型80%”了一段时间了。 Sun和Oracle在支持尾部呼叫方面没有积极的兴趣,或者只是尾部呼叫“ 在每个function优先级列表中被排在第二位 ”,正如JVM语言峰会 ? 如果有人testing了MLVM构build,并且可以分享一些它的工作效果(如果有的话),我会非常感兴趣。 更新: 请注意,像Avian这样的虚拟机支持正确的tail-calls,没有任何问题。