1

Tinkerpop 프레임 및 청사진 (버전 2.6)을 사용하여 새 버텍스를 지속 할 수 없습니다. 내가 뭘 잘못하고 있니? 이것은 내 코드입니다 .. 유용하지 않은 부분은 약간 청소했습니다. OrientDb를 부적절한 그래프 데이터베이스 엔진으로 사용하고 있습니다.Tinkerpop 프레임 : 새 버텍스 생성 방법

나는 예외는 없지만 데이터베이스를 보면 비어 있습니다. 이유를 알 수 있습니까? 감사합니다.

프레임 엔티티 :

public interface User extends VertexFrame{ 

@Property("id") 
public String getId(); 
@Property("id") 
public void getId(String Id); 

@Property("email") 
public String getEmail(); 
@Property("email") 
public void setEmail(String email); 

@Property("password") 
public String getPassword(); 
@Property("password") 
public void getPassword(String providerId); 

@Property("firstName") 
public String getFirstName(); 
@Property("firstName") 
public void setFirstName(String firstName); 
} 

사용자 관리자 클래스 :

public class UserManager implements Serializable { 
    FramedGraphFactory framedFactory = new FramedGraphFactory(); 
    OrientGraphFactory graphFactory = new OrientGraphFactory("remote:192.168.50.10:2424/database", "user", "pass"); 
    OrientGraph instance = graphFactory.getTx(); 
    FramedGraph<OrientGraph> framedGraph = framedFactory.create(instance); 


    User user = framedGraph.addVertex(UUID.randomUUID(), User.class); 
    user.setFirstName(profile.getFirstName()); 
    user.setLastName(profile.getLastName()); 


    OrientVertex u = (OrientVertex) user.asVertex(); 
    u.save(); 
} 

답변

1

난 당신이 트랜잭션을 커밋 할 필요가 확신 해요.

FramedTransactionalGraph를 사용해 볼 수 있습니까?

FramedTransactionalGraph<OrientGraph> framedGraph = framedFactory.create(instance); 

....Code.... 

framedGraph.commit(); 
+0

녹색 필드 프로젝트 인 경우 [Totorom] (https://github.com/BrynCooke/totorom)을 살펴보십시오. 프레임의 영적 후계자입니다. (면책 조항 저는 Totorom의 개발자입니다) – Bryn

+0

수정. 고맙습니다! :) 이제 프레임에서 엔티티로 변환 된 Vertexes를 업데이트하지만 db에서 분리되었습니다. 모범 사례에 대한 제안이 있습니까? http://stackoverflow.com/questions/26187415/what-is-the-best-practice-to-update-a-vertex-after-is-detached-from-db-with-tink –