Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将贴图复制到其他贴图时丢失对象信息_Java_Grails - Fatal编程技术网

Java 将贴图复制到其他贴图时丢失对象信息

Java 将贴图复制到其他贴图时丢失对象信息,java,grails,Java,Grails,我有许多具有属性描述的对象,其中如下所示: description: "This is <strong>my description<strong>" description: "This is my description" 我不知道地图或列表上是否有一个属性在相互传输时丢失HTML内容 有人能帮我吗 代码: 在打印“1”和“2”时,对象描述和标题具有正确的html内容属性。 在prin“3”中,没有html内容。在Groovy或Java中传递列表时,不会传递列表及

我有许多具有属性描述的对象,其中如下所示:

description: "This is <strong>my description<strong>"
description: "This is my description"
我不知道地图或列表上是否有一个属性在相互传输时丢失HTML内容

有人能帮我吗

代码:

在打印“1”和“2”时,对象描述和标题具有正确的html内容属性。
在prin“3”中,没有html内容。

在Groovy或Java中传递列表时,不会传递列表及其所有内容的副本。您只需传递对同一列表及其内部相同项的引用

如果在方法中更改这些对象,则引用它们的任何其他位置都将看到这些更改。您需要显式地复制这些对象


(很抱歉,如果答案太模糊和笼统,但您没有提供足够的代码信息来制作适当的示例。)

如果它存储为字符串,则应该可以。我们有很多实例将HTML存储在数据库中或作为属性。你确定其中一个对象不仅仅是在修改引用吗?请显示你正在使用的代码。你能显示代码吗?简单副本或对同一对象的引用不能显示此行为。你是如何检查内容的?我发现代码很难推理;为了确保我理解,在第一个方法中创建的映射被第二个方法替换为单个元素列表?这段代码使用
defjson
作为提取函数的参数运行?
def bla {
    def mentions = [:]
    mentions = extractMentionsFromJSON(def json)
    println " 3 " + mentions[0].description
}

def extractMentionsFromJSON(def json){
    def result = []

    json.response.docs.each {
        try {
            Mention m = new Mention()
            m.title = json.highlighting[m.id].'title'.getAt(0)
            println "1 title --> " + m.title
            println "1 title  --> " + m.title.getClass()

            m.description = json.highlighting[m.id].'description'.getAt(0)
            println "1 description --> " + m.description
            println "1 description --> " + m.description.getClass()

            result.add(m)
        } catch (Exception e) {
            println "ERROR" 
        }
        println " 2 "
        result.each { println it.title}
        return result
    }
}