본문 바로가기

분류 전체보기

(104)
<자바 Java> DB 연동하기 (2) - DB 연동 준비하기 3. 커넥션(Connection) 객체 구해오기 2번까지 JDBC를 자바에서 이용 가능한 객체로 구현하였다면, 이제 JDBC를 통해 DB를 사용하기 위해 DB와 연결된되어있는 커넥션 객체를 구해야 한다. 그러니까 JDBC만으로 DB와 연결할 수 있는 것은 아닌 셈... 커넥션 객체는 java.sql.connection 클래스 타입이며, java.sql.DriverManger 클래스가 제공하는 getConnection() 메서드를 통해 구해올 수 있다. Connection con = null; conn = DriverManager.getConnection(url, id, pw); 이 때, 연결할 DB와 관련된 정보를 getConnection() 메서드에 매개변수로 함께 전달해주면, ..
<트러블 슈팅> 자바 JUnit 테스트 에러 - 에러 발생 자바에서 JUnit 테스트를 하던 중 에러가 발생했다. 회원가입 기능 구현을 위해 관련 클래스명들을 Member로 설정하고 뒤에는 각각 해당되는 역할로 네이밍을 하여 클래스 생성 및 코드 작성을 완료한 상태였다. - 에러 내용 이 중, DB와 연결하여 관련 기능을 수행하는 Repository의 경우 MemberRepository로 이름짓고, 코드는 아래와 같이 작성하였다. import org.apache.ibatis.annotations.Mapper; @Mapper public interface MemberRepository { //회원가입 public int setInsert(MemberVO memberVO) throws Exception; } 보시다시피 setInsert 메서드가 잘 구..
<자바 Java> 생성자 - 생성자란? 객체는 클래스를 필요로 한다. 어떠한 사물이 만들어지기 전에 설계도가 먼저 존재하고, 이 설계도를 바탕으로 사물이 만들어지듯, 객체도 설계도의 역할을 하는 클래스가 필요한 것이다. 그리고 클래스에는 객체의 성격과 기능을 정의하는 필드와 메서드가 존재한다. 여기서 필드는 보통 변수로 칭해지곤 하는데, 변수와 필드는 엄연히 다른 것이므로 이 둘을 구별해야 한다(같은 뜻의 명칭으로 사용하면 개념의 혼동이 올 수 있다). 그리고 필드와 메서드에 더해 추가로 또 주어지는 것이 바로 생성자인데, 생성자는 객체를 만들 때 꼭 필요한 것이다. 이름도 그 역할 그대로 그래서 '생성'자, 라고 이해하면 더 쉬울 것 같다. 객체를 만들 때에는 객체의 초기화가 꼭 필요한데, 여기서 초기화란 객체의 속성이나 상태..
<국비지원 개발자 과정> 중간 프로젝트 - 소회 2, 그리고 마무리 벌써 수업의 60% 이상을 수강하였다. 끝까지 하리라는 것에 대한 의심은 거의 없었지만, 아무래도 난이도가 난이도다보니(?) 정말로 몇 번 포기해야되나 생각하기도 했지만 이렇게 중간 프로젝트까지 훌륭히 마쳤으며, 드디어 개발 공부방법과 방향을 찾게 되어 방황도 멈출 수 있었다. - 중간 프로젝트에서 만난 어려움들 1. 크롬 왜그러냐. 라인이 계속 안맞았다. 이것 때문에 또 한 번 포기할 뻔했다. STS 내부 웹에서는 라인이 한 줄에 3개씩 나란히 간격 맞춰서 잘 떨어지는데, 내 컴퓨터의 크롬 웹 화면에서만 중간에 라인이 하나 틀어져서 그 밑의 앨범 커버들이 다 붙어버렸다. 찾아보니 크롬 버그라고도 하던데, 정확하지는 않았던 것이 이게 무슨 오류인지도 몰랐기 때문. 그래서 더 막막하고 어려워서 한참을 머리..
<자바 Java> 서블릿(Servlet) 개발 환경 설정 - 서블릿이란? 웹의 등장으로 나타난 html이 정적 데이터 전달 도구로서의 형식이었다면, 서블릿은 자바 클래스의 일종으로서, 동적으로 서비스를 제공한다. 즉, 정적 데이터처럼 미리 만들어진 데이터를 일방적으로 요청한 사용자에게 전달하는 것이 아닌, 실시간 그리고 유동적으로 사용자의 요청에 따라 데이터를 전달하는 것을 동적 서비스를 제공한다고 말한다. 참고로 서블릿이란 단어는 Server와 Applet의 합성으로, '클라이언트에게 서비스를 제공하는 작은 단위의 서버 프로그램'을 뜻한다. 서블릿은 자바 속에서 태어났으므로 자바의 특징을 함께 공유한다. 서블릿은 다만 홀로 실행되지 못하기 때문에 톰캣과 같은 컨테이너를 필요로 한다(톰캣 컨테이너 안에서만 실행이 가능). - 서블릿 개발 환경 설정 과정 서블릿..
<자바 Java> I/O 스트림과 서블릿 - 스트림(Stream)이란? 스트림의 어원은 강의 물줄기를 뜻하는데, 즉 단일 방향으로 연속적으로 흘러가는 것을 말한다. 자바에서는 입력과 출력이라는 일련의 흐름이 이와 비슷하여 I(InputStream)/O(OutputStream) 스트림으로 이름을 붙인 듯 하다. 컴퓨터공학의 관점에서 데이터가 출발지에서 나와 도착지로 들어가는 형태가 이 물줄기와 비슷하기 때문이다. - I/O 스트림이란? 스트림의 종류는 두 가지다. 입력스트림(InputStream)과 출력스트림(OutputStream)이 그것이다. 프로그램이 데이터를 입력받을 때에는 입력스트림인 것이고, 데이터를 보낼 때에는 출력스트림인 것이다(일종의 동작 상태를 뜻한다). 우리가 가장 흔하게 접하는 예로는, 컴퓨터에 정보를 입력할 때 쓰는 키보드..
도서 <나는 아마존에서 미래를 다녔다> 中 - 책 소개 단순히 세계를 이끄는 일류 기업의 문화란 어떤 것일까, 궁금해서 택해 읽고 있던 책인데 저자의 직업이 우연히도 또 개발자라 놀랐다. 이 책의 저자 박정준님은 책에 따르면, "평균 근속 연수가 1년 남짓밖에 되지 않는 아마존의 시애틀 본사에서 2004년부터 2015년까지 무려 12년을 근무하며 근속 연수 상위 2퍼센트의 사원이자 아마존에서 가장 오래 일한 한인이 되었다. 그 덕분에 아마존이 하나의 스타트업에서 세계 1위의 기업으로 마법같이 성장하는 과정을 가장 가까이서 목격하고 경험했다." 와 같은 경험을 한 분이다. 따라서 책의 내용은 비교적 읽기 평이한 에세이 형태고, 그래서 옆에서 누가 친근하게 자신의 이야기를 들려주는 느낌이라 보다 전해지는 느낌이 더 생생하달까. - 인상깊었던 부분 그..
<자바 Java> 자바 기초 개념 (1) - 객체 지향, 변수, 메서드 - 객체 지향 언어(OOP : Object Oriented Programming) 자바는 객체 지향 언어다. 객체 지향이란? 현실 세계를 '객체' 중심으로 사고하고 파악하는 것이다. 객체(Object)란, 우리 주변에 있는 물질적이고 추상적인 그 무엇도 다 해당되는데, 하나의 사물을 뜻한다. 지금 내가 타이핑을 치고 있는 이 컴퓨터도 객체이며, 타이핑을 하고 있는 내 손도 하나의 객체가 될 수 있다. 객체 지향 언어란, 바로 이 객체가 중심이 되는 (컴퓨터)언어인 것이다. 그리고 현실 세계에서도 그렇듯이, 이 객체는 절대로 혼자서만 존재할 수가 없다. 절대적으로 객체는 서로 관계를 맺을 수밖에 없으며, 그래서 관계 안에서만 활동이 가능하다. 위의 예시에서의 컴퓨터는 활동하기 위해서 컴퓨터를 켜고 자판으로..
<자바 Java> DB 연동하기 (1) 자바에서 데이터베이스에 담긴 데이터를 가져오기 위해서는 데이터베이스 즉, DB와의 연결을 필요로 한다. 그런데 자바가 DB와 바로 연결되는 것이 아니라, 이 사이에 다른 매개체가 끼게 되는게 그것이 바로 JDBC(Jave Database Connectivity)다. - JDBC란? 자바에서 DB와 관련된 작업을 처리할 때 사용하는 API(인터페이스)다. 즉, 자바에서 제공되는 API다. JDBC API는(이하 JDBC) DB에서 데이터를 가져올 수 있게 JDBC 드라이버를 통해 DB와 연결되는데, 이 드라이버는 각 DB 종류에 따라 맞는 드라이버를 사용해야 하므로, 사용하는 DB 공식 홈페이지를 통해 제공되는 해당 DB의 JDBC 드라이버를 받아와야 한다. 구조 : 자바 애플리케이션 -> JDBC API..
<자바 Java> 컬렉션 프레임워크(Collection Framework) - 컬렉션 프레임워크란? 자바에서 자주 쓰이는 기능들을 매번 만들어서 쓰기 번거로우므로, 좀 더 편리하고 효율적인 개발을 위해 따로 공통적인 기능끼리 모아서 클래스로 구현해둔 것. 이렇게 해두면 해당 기능이 필요할 때 해당 클래스에서 객체를 불러와 빠르게 사용할 수 있다. 즉, 컬렉션(Collection) : 객체를 수집(collection)해서 저장한 + 프레임워크(Framework) : 사용방법이 정해져 있는 라이브러리 *라이브러리란? : 필요한 기능을 모은 일종의 소프트웨어. = 컬렉션 프레임워크. 그리고 프레임워크에서 사용방법은, 인터페이스로 구현한다. - 컬렉션 프레임워크의 종류 Java에서 가장 자주 쓰는 기능들로는 List, Set, Map 인터페이스들이 있다. 이들을 사용할 때, impor..