목록분류 전체보기 (569)
꿈 많은 사람의 이야기
소매물도는 가장 아름다운 관광지 중 하나다 통영이나 거제도에서 배를 타고 들어가서(40분정도인가 50분정도 갔던걸로 기억합니다) 가장 큰 특징은 일명 '모세의 기적'이라고 불리는 바다 갈라짐 현상이다. 일단 저는 통영에서 배를 탔습니다. 가장 추천해드리고 싶은 것은, 가서 배표를 구입하는 것이 아닌, 인터넷으로 예매를 해서 가는 것입니다. 왜냐하면 인기가 많은 여행지다 보니 제가 갔을때도 현장에서 구입 하는 사람들은 표가 없어서 못 가는 사람들도 많았습니다......... 그렇게 대략 1시간 정도였나... 기억이 가물가물하네요 어찌되었든 좀 걸리는 시간을 달려 도착을 합니다. 가시면 중앙으로 가는 길과, 왼쪽으로 빠져서 약간 등산코스 같은 길로 나뉘는데 중앙으로 가시면 바로 소매물도의 등대섬을 보러 가실..
List 컬렉션은 저장 순서를 유지하지만, Set 컬렉션은 저장 순서가 유지되지 않는다. 또한 객체를 중복해서 저장할 수 없고, 하나의 null만 저장할 수 있다. Set 컬렉션은 수학의 집합에 비유될 수 있다. 집합은 순서와 상관없고 중복이 허용되지 않기 때문이다. 그리고 들어갈 때의 순서와 나올때의 순서가 다르다! 다음은 Set 컬렉션에서 공통적으로 사용 가능한 Set 인터페이스의 메소드들이다. 인덱스로 관리하지 않기 때문에 인덱스를 매개 값으로 갖는 메소드가 없다. 기능 메소드 설명 객체 추가 boolean add(E e) 주어진 객체를 저장, 객체가 성공적으로 저장되면 true를 리턴하고 중복 객체면 false를 리턴 객체 검색 boolean contain(Object o) 주어진 객체가 저장되어..
배열은 쉽게 생성하고 사용할 수 있지만, 저장할 수 있는 객체 수가 생성할 때 결정되기 때문에 지속적으로 변화하는 객체를 저장하기엔 부족한 면이 있다. 배열의 크기를 크게 생성하면 되지만 이것은 좋지 못한 방법이다. 특히 객체를 삭제 했을 때 해당 인덱스가 비게 되는 문제가 있다. 아래의 그림을 보자 이렇게 듬성듬성 빠져 공간 낭비가 될 수도 있고 저장 하는 구조도 썩 좋지 않다. 자바는 이러한 문제점을 해결하기 위해 자료구조(Data Structure)를 바탕으로 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 java.util 패키지에 컬렉션과 관려뇐 인터페이스와 클래스들을 포함시켰다. 이것을들 컬렉션 프레임워크(Collection Framework)라고 부른다. 컬렉션은 요소를 수집해서 저장하는..
Calendar 클래스를 이용하지 않고 단순히 배열의 값에 1월부터 12월까지 날짜를 두어 D-day를 계산해보는 소스를 만들어 보자. 날짜와 관련된 게시글은 lsjsj92.tistory.com/51에 게시했으니 참조하기 바란다. 일단 여기에서는 다른 방법으로 해본다. 먼저 배열을 생성한다. 1 int[] days = {31,28,31,30,31,30,31,31,30,31,30,31}; cs이걸로 진행한다. 저것은 2017년 기준 1월부터 12월까지 마지막 날짜를 가리키고 있다. 그럼 D-day 소스를 만들어보자. 예를 들어 특정 날짜에서 100일 후의 날짜를 구하려면 다음과 같이 하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24..
자바로 간단한 로또 프로그램을 만든다. 난수로 6개의 배열에 값을 저장하고 중복을 체크도 한다. (이 부분은 값을 적게해서 비교를 빠르게 해보는 예제이다. 실제로 해보려면 로또 숫자만큼 6을 변경해주면 된다 45인가..?) 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 32 33 34 35 public void start() { int[] lotto = new int[6]; boolean check = false; int cnt = 0; Random rand = new Random(); while(cnt
db의 값을 출력하고 업데이트 등의 과정을 하면서 쿼리문이 좀 복잡해질 수도 있다. 예를들어 insert into saram(id, name, age) values('"+id+"', '"+name+"', '"+age+"'); 이런식으로 해야하는데 큰 따옴표, 작은 따옴표가 헷갈리기도 하고 복잡해 보인다. 이런 것을 방지하고 좀 간단하게 쿼리를 처리해주는 기능이 PreparedStatement이다. 동작 하는 방법은 이런식이다. 1 2 3 4 5 6 String sql = "insert into saram(id, name, age) values(?,?,?)"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, id); pstm..
그리고 기본적인 데이터를 넣어보자 먼저 mysql에서 테이블과 데이터를 넣어보자 create table member( code char(4) not null, name varchar(30) not null, id varchar(30), pwd varchar(15), age int(3) ); create table saram( id varchar(20), name varchar(20), age tinyint ); insert into member values('1001', '강지아', 'jeea', '1111', 20); insert into member values('1002', '이장미', 'rose', '2222', 30); insert into member values('1003', '김백합', '..
이 페이지는 mysql이 설치되어 있다고 가정하고 진행한다. 먼저 mysql 홈페이지에서 mysql conncetion 드라이버를 준비한다. 과정은 다음과 같다. 먼저 mysql.com에 접속해서 download탭을 보면 community 탭이 있을 것이다. 해당 탭을 들어가면 왼쪽 목록에 MySQL Connectors 이 있을 것이다. 거길 들어간다. 여러가지 커넥터들이 존재하는데 본인은 JDBC를 연동하기 위해 Connector/J를 설치하겠다. 해당 탭에 들어간다. 그리고 해당되는 파일을 받아서 진행한다. 그 다음 알집을 풀면 다음 사진과 같은 목록이 있을 것이다 거기서 mysql-connector-java-5.1.42-bin.jar 파일이 있는데 이것을 이제 java 폴더에 넣으면된다. 본인은 C..
유닉스 시간은 시각을 나타내는 방식이다. 1970년 1월 1일 00:00:00 부터의 경과 시간을 초로 환산하여 정수로 나타낸 것이다. 자바에서 이 유닉스 시간을 활용해서 D-day같은 것을 만들 수 있다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 class Cal { Calendar cal = Calendar.getInstance(); Calendar cal2 = Calendar.getInstance(); String[] ss; public int doomDay(String s) { ss = s.split..
자바는 시스템의 날짜 및 시각을 읽을 수 있도록 Date와 Calendar 클래스를 제공하고 있다. 이 두 클래스는 모두 java.util 패키지에 포함되어 있다. Date 클래스 Date는 날짜를 표현하는 클래스이다. Date 클래스의 Date() 생성자는 컴퓨터의 현재 날짜를 읽어 Date 객체로 만든다 Date now = new Date(); 현재 날짜를 문자열로 얻고 싶다면 toString() 메소드를 사용하면 된다. toString() 메소드는 영문으로 된 날짜를 리턴한다. 만약 특정 형태로 출력하고 싶으면 SimpleDateFormat 클래스를 이용하면 된다. 1 2 3 4 5 6 7 Date now = new Date(); String n = now.toString(); System.out...