Java – Eclipse上的类路径问题

我正在尝试重新编译我一直在处理的项目,并在尝试加载属性文件时不断收到错误消息: 该系统找不到指定的路径。 我想这与类路径有关。 但是我在Properties-> Java build path-> Libraries(external class)中添加了文件的路径。 我还检查了eclipse生成的.classpath文件,路径确实存在! Eclipse为什么不看正确的路径?

使用JDBC for Oracle迭代ResultSet需要花费大量时间大约16秒?

while( result_set.next() ) { … } 我使用System.nanoTime()并计算时间,每次迭代所用的时间以毫秒为单位,但整个循环大约需要16秒。 我正在考虑条件测试花费大量时间的可能原因,即next()函数。 仅供参考我正在连接到远程数据库服务器,并且我使用上述方法再次计算完成的选择查询(以毫秒为单位)。 有关为什么会发生这种情况的原因以及如何将结果集迭代到最多一秒的时间? 编辑: 我正在处理大约4000条记录,每条记录包含大约10列,每列大约有10个字符 EDIT2谢谢setFetchsize()做了神奇,真棒,真棒

我可以知道调用JNI C方法的类的名称吗?

有什么方法可以知道在JNI C代码中调用方法的类的名称吗? 我可以使用以下语句获取对类的引用: jclass cls = (*env)->GetObjectClass(env,obj); 但有什么办法可以知道class级的名字吗? 。

如何将application.properties中的值赋给静态变量?

我正在使用Spring MVC。 我有一个用@Service注释的UserService类,它有很多静态变量。 我想用application.properties文件中的值来实例化它们。 例如,在application.properties中我有: SVN_URL = http://some.url/repositories 然后在类中有: @Value(“${SVN_URL}”) private static String SVN_URL 我得到Instantiation of bean failed; nested exception is java.lang.ExceptionInInitializerError的Instantiation of bean failed; nested exception is java.lang.ExceptionInInitializerError Instantiation of bean failed; nested exception is java.lang.ExceptionInInitializerError 我也试过@Autowired private static Environment env; 然后: private static String SVN_URL=env.getProperty(“SVN_URL”); 它给出了同样的错误。

将字符串转换为float?

正如标题所说。 我不相信这是可能的,但如果它让我知道。 这是我正在编写的bukkit(minecraft服务器)插件所需要的。 我想接受一个命令:tnt [power]。 power是返回的字符串,我想转换为float。 谢谢

如何从Java中的’double’类型的值中删除十进制值

我正在调用一个名为“calculateStampDuty”的方法,该方法将返回要在房产上支付的印花税金额。 百分比计算正常,并返回正确的值“15000.0”。 但是,我想将前端用户的值显示为“15000”,因此只想删除小数和之后的任何值。 如何才能做到这一点? 我的代码如下: float HouseValue = 150000; double percentageValue; percentageValue = calculateStampDuty(10, HouseValue); private double calculateStampDuty(int PercentageIn, double HouseValueIn){ double test = PercentageIn * HouseValueIn / 100; return test; } 我尝试过以下方法: 创建一个新的字符串,将double值转换为字符串,如下所示: String newValue = percentageValue.toString(); 我尝试在String对象上使用’valueOf’方法,如下所示: String total2 = String.valueOf(percentageValue); 但是,我只是无法获得没有小数位的值。 在这个例子中有没有人知道如何获得“15000”而不是“15000.0”? 谢谢

从另一个异步方法调用的Spring异步方法

我正在使用Spring 4并且我注意到一个奇怪的行为……如果我从普通实例方法多次调用异步方法,那么它们都会在不同的线程中调用并随机完成。 但是,如果我从另一个异步方法多次调用异步方法,那么它们按顺序完成。 我有这样的事情: @Async public void nonAsyncMethod() { for (int i = 0; i < 30; i++) { asyncMethod(); } } @Async public void asyncMethod() { … something here } 我正在使用默认的异步执行程序。 我应该使用另一个吗? 但是,这个执行程序不会重用任何线程并且每次都启动另一个线程所以它应该没问题……这可能只是一个巧合吗? 但是我尝试了10次以上,如果我恢复到第一种方法的非异步,那么它们会随机完成

使用JavaCompiler和ClassLoader编译和运行用户代码

我正在为java学习编写web应用程序。 使用哪些用户可以在我的服务器上编译他们的代码+运行该代码。 使用JavaCompiler进行编译很容易: JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); DiagnosticCollector diagnostics = new DiagnosticCollector(); CompilationTask task = compiler.getTask(null, null, diagnostics, null, null, prepareFile(nazwa, content)); task.call(); List returnErrors = new ArrayList(); String tmp = new String(); for (Diagnostic diagnostic : diagnostics.getDiagnostics()) { tmp = String.valueOf(diagnostic.getLineNumber()); tmp += ” msg: ” + diagnostic.getMessage(null); returnErrors.add(tmp.replaceAll(“\n”, ” “)); } 我设法用代码加载类: JavaCompiler […]

Spring MVC @RequestMapping注释的不区分大小写映射

可能重复: 如何在带有注释映射的Spring MVC中使用不区分大小写的URL 我有控制器在其中有多个@RequestMapping注释。 @Controller public class SignUpController { @RequestMapping(“signup”) public String showSignUp() throws Exception { return “somejsp”; } @RequestMapping(“fullSignup”) public String showFullSignUp() throws Exception { return “anotherjsp”; } @RequestMapping(“signup/createAccount”) public String createAccount() throws Exception { return “anyjsp”; } } 如何将这些@RequestMapping映射到不区分大小写。 即如果我使用“/ fullsignup”或“/ fullSignup”,我应该得到“anotherjsp”。 但现在这种情况并没有发生。 只有“/ fullSignup”才能正常工作。 我试过扩展RequestMappingHandlerMapping但没有成功。 我也尝试过AntPathMatcher,就像在这个论坛上提到的另一个问题,但它也不适用于@RequestMapping注释。 调试控制台 服务器启动时的输出控制台。 我添加了两张显示问题的图片。 我已经尝试了下面提到的两种解决方案。 控制台说它映射了小写的URL,但是当我请求访问带有小写url的方法时,它表明存储值的原始映射包含MixCase URLS。

IllegalAnnotationsException:Class有两个同名的属性

我正在尝试使用RSA 7.5和Websphere 7服务器开发IBM JAX_WS Web服务。 由于我是初学者,因此我遵循Java级第一种方法,即我首先创建Java类,然后生成WSDL文件。 当我尝试创建wsdl文件时,我得到一个例外: java.security.PrivilegedActionException:com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException:IllegalAnnotationsException的1个计数Class有两个同名的属性“planId” 我的class级在这里看起来像这样: public class MemberDetails{ @XMLElement(required=true) private String planId; //public getters and setters for the planId; } 我不知道为什么会发生这种exception。 通过谷歌搜索,我尝试了一些替代方案来解决它,但没有一个为我工作:( 注意: 这是我在整个工作区中使用的唯一注释。 我不确定这是否依赖于其他一些注释。 但我尝试了一些诸如@XMLElement(name =“Plan”,required = true),@ XMLType等,但每次我都得到这个例外。 这个例外是在wsgen期间发生的。 ( java.lang.reflect.InvocationTargetException ) 编辑 基本上,当我们从java服务方法创建一个wsdl并在SOAP UI中打开该WSDL时,我们在每个元素的顶部都得到 。 我想删除这个选项标签标签,因此我尝试使用@XMLElement(required = true)方法,这样当我在SOAP UI中打开WSDL时, 不会似乎是强迫因素。 根据我的概念,@ XMLElement(required = true)将minOccurs设置为1,即大于零,因此当我在SOAP UI中打开它时,可选的注释将从WSDL中删除。 但不幸的是它不起作用因此我的概念不正确。 生成WSDL之后,我可以看到minOccurs仍为0。 请解释在SOAP […]