小编Jér*_*nge的帖子

JTable的setSelectedRow()在哪里?

Java Swing JTable有一个getSelectedRow()方法,但没有setSelectedRow()方法.

我需要在JTable中突出显示/选择一行.我该怎么办?

java swing row jtable selection

10
推荐指数
3
解决办法
2万
查看次数

java是否删除/优化不必要的同步语句?

让我们假设有人同步一个返回int的方法:

int whatever = 33;
...

public synchronized int getWathever() {
    return this.whatever;
}
Run Code Online (Sandbox Code Playgroud)

我们从Java规范中了解到,int是原子地修改的.因此,synchronized声明不是必要的.

编译器会删除/优化它吗?

java optimization synchronized

10
推荐指数
3
解决办法
1086
查看次数

为什么Java编译器会创建serialVersionUID合成字段?

作为调试应用程序的一部分,我注意到Field.getDeclaredFields()返回一些合成字段,包括serialVersionUID扩展接口的类中的字段,尽管没有扩展Serializable.

为什么编译器会添加这样的字段?

UPDATE

事实上,还有一个$VRc合成领域.

java field serialversionuid synthetic

10
推荐指数
1
解决办法
933
查看次数

Java 7独立应用程序中的依赖注入

我想在大型Java 7独立应用程序中使用依赖注入,但我不确定从哪里开始.

我写了一个小测试应用程序:

public class Main {

    @Inject
    MyInterface myInterface;

    public static void main( String[] args ) {

        Main m = new Main();
        System.out.println(m.myInterface.getMessage());

    }

}
Run Code Online (Sandbox Code Playgroud)

有一个界面:

public interface MyInterface {

    String getMessage();

}
Run Code Online (Sandbox Code Playgroud)

和接口实现:

@Singleton
public class MyInterfaceImpl implements MyInterface {

    public String getMessage() {
        return "Hello World!";
    }

}
Run Code Online (Sandbox Code Playgroud)

pom.xml包含一个依赖:

<dependencies>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>7.0</version>
        <scope>provided</scope>
    </dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

这个应用程序编译,但当然,它NPE在尝试打印消息时崩溃.注射没有发生.

所以,我的问题是:

  1. 可以在Java 7独立应用程序中实现依赖项注入吗?
  2. 我必须包含哪些其他依赖项才能使其工作?
  3. 有没有人有一个简单的操作示例来分享(我找不到)?

dependency-injection maven java-7

10
推荐指数
1
解决办法
8062
查看次数

Symfony2:您已请求不存在的参数

我在SO上检查了类似的问题,但他们没有解决我的问题.

我正在Openshift上部署Symfony2应用程序.它在我的Windows 10笔记本电脑上运行良好,但我在Openshift上收到以下错误消息:

Fatal error: Uncaught exception 'Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException'
with message 'You have requested a non-existent parameter "database_path".
Did you mean one of these: "database_host", "database_port", "database_name", "database_user"?'
in /var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php:106 Stack trace: #0 
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php(248):
Symfony\Component\DependencyInjection\ParameterBag\ParameterBag->get('database_path') #1 [internal function]:
Symfony\Component\DependencyInjection\ParameterBag\ParameterBag->Symfony\Component\DependencyInjection\ParameterBag\{closure}(Array) #2
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php in
/var/lib/openshift/55eed4837628e1199f0000bb/app-root/runtime/repo/vendor/symfony/symfony/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php on line 106
Run Code Online (Sandbox Code Playgroud)

config.yml是:

imports:
    - { resource: parameters.yml }
    - { resource: security.yml }
    - { resource: services.yml }
...

doctrine:
    dbal:
        driver:   pdo_sqlite
        charset:  UTF8
        path:     "%kernel.root_dir%/../%database_path%"
...
Run Code Online (Sandbox Code Playgroud)

parameters.yml是:

parameters: …
Run Code Online (Sandbox Code Playgroud)

php symfony openshift

10
推荐指数
1
解决办法
2万
查看次数

WeakHashMap的keySet条目永远不会为空吗?

如果我遍历WeakHashMap的密钥集,我是否需要检查空值?

WeakHashMap<MyObject, WeakReference<MyObject>> hm
    = new WeakHashMap<MyObject, WeakReference<MyObject>>();

for ( MyObject item : hm.keySet() ) {
    if ( item != null ) { // <- Is this test necessary?
        // Do something...
    } 
}
Run Code Online (Sandbox Code Playgroud)

换句话说,当我迭代它们时,是否可以收集WeakHashMap的元素?

编辑

为了这个问题,可以假设null在哈希映射中没有添加任何条目.

java iteration null weakhashmap keyset

9
推荐指数
2
解决办法
2252
查看次数

是否可以检索使用AspectJ执行方法调用的对象实例?

让我们想象以下方面:

 aspect FaultHandler {

   pointcut services(Server s): target(s) && call(public * *(..));

   before(Server s): services(s) {
     // How to retrieve the calling object instance?
     if (s.disabled) ...;
   }

 }
Run Code Online (Sandbox Code Playgroud)

切入点捕获对公共方法的所有调用,Server并在调用before任何这些方法之前运行建议.

是否可以检索在通知中执行对公共Server方法的调用的对象实例before?如果有,怎么样?

java aspectj

9
推荐指数
1
解决办法
4822
查看次数

内联/阻止Javascript在文档就绪之前执行了吗?

假设一个HTML文档中的内联Javascript代码(例如正文),这个Javascript代码总是在JQuery文档就绪代码之前执行吗?

例如,以下安全吗?

...
<body>
    <script type="text/javascript">
        var myVar = 2;
   </script>
   ...
</body>

...
$(document).ready(function() {
    alert('My Var = ' + myVar);
}
Run Code Online (Sandbox Code Playgroud)

如果没有,我怎样才能确保安全知道myVar在内联/块代码中定义?

html javascript jquery document-ready

9
推荐指数
2
解决办法
8079
查看次数

在drop事件上是否真的需要调用preventDefault()?

我正在学习拖拽.我在JSFiddle中复制了一个W3Schools示例.

W3School示例调用preventDefault()drop事件:

function drop(ev) {
    ev.preventDefault();
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
}
Run Code Online (Sandbox Code Playgroud)

但是,我不理解阅读文档时的需要.当我删除此调用时,该示例仍然正常工作:

function drop(ev) {
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
}
Run Code Online (Sandbox Code Playgroud)

那么,这次通话的用途是preventDefault()什么?我真的需要它吗?如果是,为什么?

html javascript drag-and-drop preventdefault

9
推荐指数
2
解决办法
6228
查看次数

如何在文档的<head>部分创建Angular指令?

我是新来的angular.js.我正在尝试创建一个指令,在<head>html文档部分添加一些标题和元标记,但我遇到了一些麻烦.

我的index.html文件如下:

<!DOCTYPE html>
<html ng-app="myApp">
<head>
    <meta charset="UTF-8">
    <base href="/">
    <seo-title></seo-title>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.min.js"></script>
    <script src="https://code.angularjs.org/1.4.1/angular-route.min.js"></script>
    <script src="/incl/js/myApp.js"></script>
</head>
<body >
    <div ng-view></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的javascript是:

var app = angular.module ('myApp', ['ngRoute']);

app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {

    $routeProvider
        .when('/', { templateUrl: 'routes/home.html'})
        .when('/pageA', { templateUrl: 'routes/pageA.html'})
        .when('/pageB', { templateUrl: 'routes/pageB.html'})
        .otherwise({ redirectTo: '/' });

    $locationProvider.html5Mode({
        enabled: true
    });

}]);

app.directive('seoTitle', function() {
    return {
        restrict: 'E',
        template: '<title>{{seo.title}}</title>'
    };
});
Run Code Online (Sandbox Code Playgroud)

当我打开检查器时,指令已被移动到<body>并且未被模板替换:

在此输入图像描述

如何在标题中创建指令? …

html javascript html-head angularjs angularjs-directive

9
推荐指数
2
解决办法
5678
查看次数