스프링부트 프로젝트가 준비가 되었으니 이제 본격적인 테스트를 위해 간단한 컨트롤러를 하나 만들어 보도록 한다. 컨트롤러의 리턴타입이 문자열이라면 문자열에 맞는 뷰페이지가 있어야 하지만 RestController는 뷰페이지가 따로 필요없이 결과를 반환해준다. 그럼 프로젝트에 controller 패키지를 하나 만들고 컨트롤러 클래스를 하나 만들어야 한다. 컨트롤러 패키지와 컨틀로러 클래스 파일을 하나 만들었으면 생성한 클래스파일을 열어 컨트롤러를 작성해 보자. 제일 먼저 @RestController 라고 어노테이션을 추가하고 /test 라는 URL로 접근했을 때 이를 처리하는 메소드를 생성한다. 그리고 이 메소드와 /test 라는 요청이 매핑된다는 어노테이션도 추가한다. 1 2 3 4 5 6 7 8 9 10..
템플릿 엔진으로 타임리프를 사용하기 위해서는 html 태그에 xmlns로 타임리프를 설정해줘야 하는데 매번 html을 만들 때 마다 수작업으로 붙이려면 귀찮다. 그래서 이클립스에 타임리프 형식의 html 템플릿을 추가해 보자. 우선 이클립스 메뉴 에서 Window > Preferences 를 선택하고 Web > HTML Files > Editor > Templates를 선택한다. 템플릿을 추가하기 위해 New 버튼을 누르고 다음의 화면에서 이름과 패턴을 입력한다. OK를 눌러 완료를 하였으면 실제 HTML을 만들어보자. 스프링부트에서 HTML 파일은 src/main/resources/templates 폴더에 생성하면 된다. 생성이 완료되면 아래와 같이 하나의 html이 생성된다. 1 2 3 4 5 6 7..
웹 개발을 하기 위해 다양한 도구를 사용할 수 있겠지만, 그 중에 스프링부트로 웹 개발을 시작하면 빠르고 쉽게 개발이 가능하다고 생각되어 진다. 스프링부트에 대한 설명과 자세한 내용은 조금만 검색해도 찾을 수 있다. 여기서는 스프링부트와 타임리프를 활용하여 웹 개발을 진행하는 내용을 적어보고자 한다. 우선 이클립스에 STS(Spring Tool Suite)가 설치되어 있다면 프로젝트를 하나 생성한다. 프로젝트 종류는 Spring Boot 폴더에 있는 Spring Starter Project를 선택하고 Next를 누른 후 Name과 같은 입력 부분에 원하는 정보를 입력한다. Type은 라이브러리 관리 도구를 설정하는 부분으로 개인적으로 Maven 보다는 Gradle를 더 선호하기 때문에 선택하였다. 메이븐..
애플리케이션 상에서 데이터를 주고 받는 형식으로 json이 많이 사용되고 있다. RDF 형식의 데이터도 JSON 형식으로 변환이 가능하며, SPARQL을 통해 생성한 결과 또한 JSON으로 변환이 가능하다. 여기에서는 Jena에서 제공하는 포맷터를 통해 JSON형식으로 결과를 만들어 내는 것에 대해 이야기하고자 한다. 예제에서 사용하는 SPARQL은 Jena TDB에 적재되어 있는 트리플 데이터에 질의하여 결과를 생성한다. 그럼 Jena에서 제공하는 ResultSetFormatter 라는 클래스는 SPARQL 질의 결과를 JSON, XML, CSV, TSV 등의 형식 뿐만 아니라 RDF데이터셋의 다양한 형식으로 변환을 하게 해주는 클래스이다. 따라서 SPARQL 질의 결과를 JSON으로 변환하고 반환받고..
대용량의 데이터를 Jena TDB에 적재하기 위해서는 TDB에서 제공하는 벌크로딩 기능을 사용하는 것이 성능면에서나 효율면에서 좋다. 벌크로딩을 사용하는 방법은 그리 어렵지가 않은데 두가지 방법에 대해서 설명해 보고자 한다. 먼저는 RDF 형식에 상관없이 벌크로딩을 하는 방법에 대해서 보겠다. 기본적으로 n-triples, ttl, rdf/xml 형식 이외에 trig, n-quads 형식의 파일에서도 잘 동작한다. trig와 n-quads 는 그래프를 포함하는 RDF 문법을 정의하기 위해서 사용하는 형식이며 trig는 ttl을 확장한 것이기에 ttl의 문법과 유사하다. n-quads는 라인 기반 형식인 n-triples와 유사하지만 끝에 그래프명이 붙는 것이 다른 점이다. 위 형식에 대한 보다 자세한 설..
- Total
- Today
- Yesterday
- 트리플
- Ontology
- networkx
- 그래프 데이터베이스
- sparql
- TDB
- 지식 그래프
- 스프링부트
- cypher
- Linked Data
- pyvis
- RDF 변환
- django
- TBC
- 트리플 변환
- Neo4j
- LOD
- TopBraid Composer
- property graph
- 지식그래프
- Thymeleaf
- RDF
- 장고
- Knowledge Graph
- 타임리프
- stardog
- neosemantics
- rdfox
- 온톨로지
- 사이퍼
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |