- JDBC (Java DataBase Connectivity) 자바를 이용해서 DB를 다루기 위한 API. 각 DB 벤더들마다 JDBC 인터페이스를 구현한 드라이버를 제공한다. - JDBC 사용법: 안드로이드에서 SQLite 쓸 때나 PHP에서 MySQL 쓸 때 어떻게 했는지 떠올려보자. 비슷하다. 1) JDBC 드라이버 설치 및 Import Maven에 의존성을 추가해서 쉽게 드라이버 라이브러리를 다운로드받을 수 있다. mysql mysql-connector-java 5.1.45 다운로드 받았으면 .java (혹은 .jsp) 파일에서 -> import java.sql.* 2) 연결 (Connection) 드라이버를 로드하고, 드라이버 매니저를 이용해 Connection 인스턴스를 얻는다. 이때 DB의..
사진에 들어있는 텍스트를 컴퓨터로 인식하는 것 (OCR: Optical Character Recognition) 은 컴퓨터 비전의 한 분야로서 예전부터 꾸준히 연구되어왔던 분야인데, 요즘은 머신러닝 기술이 발전하면서 예전보다 훨씬 높은 인식률을 구현할 수 있게 된 것 같다. 특히 뉴럴 네트워크의 한 종류인 CNN (Convolutional Neural Network) 이 이미지 인식에 많이 사용되는 기술이라고 알고 있다. 하지만 이런 머신러닝 기술을 직접 로우레벨부터 구현하기엔 많은 노력이 필요하다. 뉴럴 네트워크를 구축하고 데이터를 모아서 학습을 시키고 파라미터를 조절하고... 이런걸 OCR을 이용한 서비스 하나 만들어보겠다고 다 배우는 것보다 편리한 방법은 클라우드 서비스를 이용하는 것이다. AWS나..
- Maven이란 무엇인가? Java 기반 프로젝트의 라이프사이클 관리를 위한 빌드 관리 도구. 아파치 재단에서 제작. > 컴파일과 빌드를 동시에 수행 > 서버 측 Deploy 자원을 관리할 수 있는 환경 제공 > 라이브러리 관리가 용이: 라이브러리를 사용할 때 jar 파일을 다운로드받아서 특정 폴더에 넣는 식이 아니라, 설정 파일에 라이브러리 이름/주소를 써주면 알아서 그걸 가져오는 기능이 있다. 전에도 얼핏 들어본 적은 있고 특히 3번째 특징을 보면 생각나는게 안드로이드 스튜디오의 Gradle이다. 안드로이드 스튜디오에서도 라이브러리를 쓰고 싶으면 build.gradle 파일에다가 dependency 어쩌구를 추가해주면 그걸 Gradle이 인식해서 import해주는 기능이 있었다. 실제로 Gradle..