小编Mat*_*ann的帖子

我应该尽可能使用并行流吗?

使用Java 8和lambdas,可以很容易地将集合作为流进行迭代,并且易于使用并行流.来自docs的两个例子,第二个使用parallelStream:

myShapesCollection.stream()
    .filter(e -> e.getColor() == Color.RED)
    .forEach(e -> System.out.println(e.getName()));

myShapesCollection.parallelStream() // <-- This one uses parallel
    .filter(e -> e.getColor() == Color.RED)
    .forEach(e -> System.out.println(e.getName()));
Run Code Online (Sandbox Code Playgroud)

只要我不关心顺序,使用并行是否总是有益的?人们会认为将更多核心的工作划分得更快.

还有其他考虑因素吗?什么时候应该使用并行流?什么时候应该使用非并行?

(这个问题被要求引发关于如何以及何时使用并行流的讨论,而不是因为我认为总是使用它们是一个好主意.)

java parallel-processing java-8 java-stream

455
推荐指数
5
解决办法
14万
查看次数

如何从我的控制器中的Hibernate/JPA加载延迟获取的项目

我有一个Person类:

@Entity
public class Person {

    @Id
    @GeneratedValue
    private Long id;

    @ManyToMany(fetch = FetchType.LAZY)
    private List<Role> roles;
    // etc
}
Run Code Online (Sandbox Code Playgroud)

与多对多的关系是懒惰的.

在我的控制器中我有

@Controller
@RequestMapping("/person")
public class PersonController {
    @Autowired
    PersonRepository personRepository;

    @RequestMapping("/get")
    public @ResponseBody Person getPerson() {
        Person person = personRepository.findOne(1L);
        return person;
    }
}
Run Code Online (Sandbox Code Playgroud)

PersonRepository就是这个代码,根据本指南编写

public interface PersonRepository extends JpaRepository<Person, Long> {
}
Run Code Online (Sandbox Code Playgroud)

但是,在这个控制器中,我实际上需要惰性数据.如何触发加载?

试图访问它将失败

未能懒惰地初始化角色集合:no.dusken.momus.model.Person.roles,无法初始化代理 - 没有会话

或其他例外取决于我尝试的内容.

我的xml描述,如果需要的话.

谢谢.

java spring hibernate jpa spring-data

132
推荐指数
6
解决办法
18万
查看次数

如何在Zend Framework 2中访问路由,发布,获取等参数

如何在zf2中获取与页面请求相关的各种参数?与发布/获取参数一样,正在访问的路由,发送的标头和上载的文件.

php file-upload zend-route zend-framework2

97
推荐指数
1
解决办法
11万
查看次数

如何将项目符号列表添加到Android应用程序?

我搜索了我的问题,但没有提供有效的答案.如何在我的textview中添加项目符号列表.

android textview

87
推荐指数
7
解决办法
8万
查看次数

npm install给出错误"找不到package.json文件"

npm install/ npm install -g 命令在Windows 7中不起作用

Node.js安装正确,node.js版本为v0.10.28

无法读取依赖项
ENOENT,打开'"filepath"\ package.json'
这很可能不是npm本身的问题.
npm在当前目录中找不到package.json文件.

照片

node.js npm

68
推荐指数
5
解决办法
18万
查看次数

抽象类中的getClass()给出了Ambiguous方法调用

我有一个公共抽象类,我正在尝试使用该getClass()方法,因为我将需要来自扩展我的抽象类的类的信息.一个例子是:

public String getName() {
    return getClass().getSimpleName();
}
Run Code Online (Sandbox Code Playgroud)

但是,IntelliJ报告了这个:

Ambiguous method call. Both
getClass    ()    in Object and
getClass    ()    in Object match.
Run Code Online (Sandbox Code Playgroud)

代码运行正常,但在我的IDE中有几十个错误警告是我的方式.它以很多误报扰乱了我的工作流程.

为什么会显示这些错误,我怎么办才能看不到它们?

java android intellij-idea

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

如何在响应模式下显示鼠标指针?

我曾经是能够取消一个复选框,表示Emulate touch screenEmulation/Sensors-面板,使得使用自适应模式时,我可以看到一个鼠标指针.此面板现已消失,新的传感器面板没有此设置.

这使得无法使用响应模式,因为我没有指针,也没有控制我点击/点击的位置(谁设计了这个功能?!).当我在较新的Chrome中使用响应模式时,如何查看指针/鼠标?

google-chrome-devtools

53
推荐指数
6
解决办法
3万
查看次数

+!if语句中的运算符

我正在审查angularjs工厂的代码,以便更好地了解它的工作原理.该代码包含一个if我不完全理解的声明.

在一个plnkr演示中,作者写道:

if ((+!!config.template) + (+!!config.templateUrl) !== 1) {
  throw new Error('Expected modal to have exactly one of either `template` or `templateUrl`');
}
Run Code Online (Sandbox Code Playgroud)

它与github repo略有不同:

if (!(!config.template ^ !config.templateUrl)) {
  throw new Error('Expected modal to have exactly one of either `template` or `templateUrl`');
}
Run Code Online (Sandbox Code Playgroud)

显然,通过错误消息,它正在检查两者中是否存在其中一个.我只是不确定它是如何得出结论的.我无法找到任何关于^或的信息+!

我的问题是:这个if语句如何工作?(^+!+!!特异性)

javascript

42
推荐指数
5
解决办法
3102
查看次数

如何在Libgdx中创建一个按钮?

我想创建一个按钮,当用户将其悬停或单击时,该按钮会发生变化.我创建了以下变量

Button buttonPlay = new Button();
Run Code Online (Sandbox Code Playgroud)

我现在不知道该怎么办,如何加载图片?如何在按钮中写入文字?如何实现事件/效果(悬停,点击)?

如果有人可以为按钮编写一些示例代码,那将非常有用.

java libgdx scene2d

29
推荐指数
2
解决办法
6万
查看次数

如何在Libgdx中获得字符串宽度?

我想知道如何获得我的字符串的宽度(以像素为单位)

width libgdx

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