2015-11-15 4 views

ответ

2

Это не поддерживается в текущей версии, но находится в дорожной карте.

+0

Просто интересно, была ли обновленная информация? :) –

+2

Да, поддерживается в OGM 2.0.5 http://neo4j.com/docs/ogm-manual/current/tutorial/#runtime-managed-labels – Luanne

0

Добавить некоторые зависимости

<dependency> 
     <groupId>org.neo4j</groupId> 
     <artifactId>neo4j-ogm-core</artifactId> 
     <version>3.0.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.data</groupId> 
     <artifactId>spring-data-neo4j</artifactId> 
     <version>5.0.2.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.projectlombok</groupId> 
     <artifactId>lombok</artifactId> 
    </dependency> 

Создание Enitity с Ломбок методы доступа

@NodeEntity 
@Data 
public class Content{ 
    @Id 
    @GeneratedValue 
    private Long id; //Internal Neo4j Identifier. DONT TOUCH 

    // Your Bns Logic identifier 
    private Long myId 

    @Properties 
    private Map<String, String> properties = new HashMap<>(); 

    @Labels 
    private List<String> labels = new ArrayList<>(); 
} 

хранилище для вашего лица

public interface ContentRepository extends Neo4jRepository<Content, Long> { 
} 

Простой контроллер для добавления этикетки и свойства в Узел

@RestController 
@RequestMapping(produces = MediaType.APPLICATION_JSON_VALUE) 
public class ContentController { 
    @Autowired 
    ContentRepository contentRepository; 

    @ApiOperation(value = "Create a Node", notes = "create a node", response = String.class) 
    @ApiResponses({ 
      @ApiResponse(code = 201, message = "Success", response = String.class) 
    }) 
    @PostMapping("/api/content") 
    public ResponseEntity<MyDTO> createNode(@RequestBody MyDTO requestWrapper) { 

     //Create Database Entity from DTO 
     Content content = new Content(); 

     //Add Labels 
     content.getLabels().addAll(requestWrapper.getLabelList()); 
     //Add properties 
     requestWrapper.getHmap().forEach((k,v)->content.getProperties().put(k,v)); 

     try { 
      contentRepository.save(content); 
      requestWrapper.setId(content.getId()); 
     } catch (Exception e){ 
      //e.printStackTrace(); 
     } 
     return new ResponseEntity<MyDTO>(requestWrapper, HttpStatus.CREATED); 
    } 
Смежные вопросы