小编nic*_*mon的帖子

使用 xmstarlet 从 Maven pom.xml 查找特定的 groupId

我试图使用 xmlstarlet 从 Maven POM.XML 中查找特定的 groupId 和artifactId,但没有成功。这是我正在使用的命令:

xmlstarlet sel -N pom=http://maven.apache.org/POM/4.0.0 -t \
     -m "/pom:project/pom:dependencyManagement/pom:dependencies/pom:dependency[.//pom:groupId=com.mygroup.xxx]" \ 
     -v '.' pom.xml 
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏。

编辑:感谢 npostavs,对于其他有相同问题的人,也可以组合更多表达式并根据更多元素过滤结果:

  xmlstarlet sel -N pom=http://maven.apache.org/POM/4.0.0 -t -m "/pom:project/pom:dependencyManagement/pom:dependencies/dependency[.//pom:groupId='com.mygroup.xxx'][.//pom:artifactId='myartifact-xxx']" -v '.' pom.xml
Run Code Online (Sandbox Code Playgroud)

xmlstarlet

5
推荐指数
1
解决办法
1412
查看次数

以相同的形式显示来自Primeface的p:fileUpload的UploadedFile内容,无需刷新

我正在尝试使用DynamicImage实现ImageUpload并立即在同一页面上显示上传的Image.我的问题是,我无法强制刷新p:graphicImage内容并在上传后显示上传的图像.

@ManagedBean(name = "myformbean")
@Controller
@ViewScoped
@Data
public class MyFormBean implements Serializable {

    private StreamedContent listImage = null;

    public StreamedContent getListImage() {
        if (listImage == null) {
            try {
                listImage = new DefaultStreamedContent(new FileInputStream("E:/t.jpg"), "image/png"); // load a dummy image
            }
            catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }

        return listImage;
    }

    public void handleFileUpload(FileUploadEvent event) {
        final UploadedFile uploadedFile = event.getFile();

        listImage = new DefaultStreamedContent(new ByteArrayInputStream(uploadedFile.getContents()), "image/png");
    }
}
Run Code Online (Sandbox Code Playgroud)

在.xhtml文件中:

<p:graphicImage value="#{myformbean.listImage}" />
Run Code Online (Sandbox Code Playgroud)

jsf file-upload primefaces

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

检查两个字符串是否在JavaScript中共享一个公共子字符串

可能重复:
在Java中比较字符串的最佳方法?

JavaScript中有没有一种快速的方法来找出2个字符串是否包含相同的子字符串?例如,我有以下两个字符串:“ audi是一辆汽车”和“ audiA8”。

如您所见,两个字符串中都包含“ audi”一词,但indexOf由于两个字符串中都有其他字符,因此我们无法使用简单的或RegExp 来找到它。

javascript

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

Java 8 Stream:平均并立即计数

我有一个DoubleStream从非常耗时的函数计算出来的值,我想同时计算其元素的平均值和计数。

问题是我不想计算DoubleStream两次,因为提到了耗时的值计算。我想从一个lambda表达式中获得平均值和计数的值。

我已经试过各种与collectmap等,但没有成功。

    final long count = products.stream()
            .mapToDouble(this::timeConsumingCalculateRating)
            .filter(rating -> rating > 0.0D)
            .count();

    final double averageRating = products.stream()
            .mapToDouble(this::timeConsumingCalculateRating)
            .filter(rating -> rating > 0.0D)
            .average()
            .orElse(0.0D);
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助。

java java-8 java-stream

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