0

このユーザー ガイドによると、高度なマッピング モードを使用する場合、プロパティと関係へのアクセスは通常、データベースまで読み取られます。オブジェクト全体がフェッチされず、必要なプロパティのみが読み取られるということですか? 間違っている場合は修正してください。

私は高度なマッピング モードを使用しています。これが私の Maven 設定です (必要なコードのみが表示されます)。

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-neo4j-aspects</artifactId>
    <version>3.3.0.RELEASE</version>
</dependency>

<dependency>
    <groupId>org.aspectj</groupId>
    <artifactId>aspectjweaver</artifactId>
    <version>1.8.6</version>
</dependency>
    .........
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <excludes>
                <exclude>**/*.*</exclude>
            </excludes>
            <source>1.7</source>
            <target>1.7</target>
        </configuration>
</plugin>
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <version>1.7</version>
    <dependencies>
        <dependency>
                <groupId>org.aspectj</groupId>
                    <artifactId>aspectjrt</artifactId>
                    <version>1.8.6</version>
                </dependency>
                <dependency>
                    <groupId>org.aspectj</groupId>
                    <artifactId>aspectjtools</artifactId>
                    <version>1.8.6</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                        <goal>test-compile</goal>
                    </goals>
                </execution>
            </executions>
        <configuration>
        <outxml>true</outxml>
        <aspectLibraries>
            <aspectLibrary>
                <groupId>org.springframework</groupId>
                <artifactId>spring-aspects</artifactId>
            </aspectLibrary>
            <aspectLibrary>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-neo4j-aspects</artifactId>
            </aspectLibrary>
        </aspectLibraries>
        <source>1.7</source>
        <target>1.7</target>
    </configuration>
</plugin>

私のSpring構成はうまくいくので、スキップしていくつかの場所を保存します。

User オブジェクトの lover プロパティの name プロパティにアクセスすると、常に null が返されます。

@RelatedTo(type = "loves", direction = Direction.OUTGOING)
private User lover;

システムのprintln結果は次のとおりです。

{id=0, theme=null, name=Pamela, password=2663, lover={id=1, name=null}}

@Fetch が追加された場合:

@RelatedTo(type = "loves", direction = Direction.OUTGOING)
@Fetch
private User lover;

それは正しいことが判明しました:

{id=0, theme=null, name=Pamela, password=2663, lover={id=1, name=Bond}}

誰が何がうまくいかないのか知っていますか?どうも

4

0 に答える 0