기본 25

3. DB 연동 프로젝트(2) (2번 게시물 이어서)

코드 작성 & DB의 데이터 읽기 5. GoodDao 클래스의 생성자 접근 지정자를 private 로 변경코드 입력 받아 DB의 데이터를 읽어오는 메소드 생성package dao; import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet; import domain.Good; public class GoodDao {//싱글톤을 만들기 위한 코드private static GoodDao goodDao; public GoodDao() {} public static GoodDao sharedInstance() {if(goodDao==null) {goodDao=ne..

23일 JAVA(23) - 자바 달력(JAVA Calendar)

import java.util.Scanner; //년도와 월을 입력받아서 달력을 출력public class CalenderMain { public static void main(String[] args) {try(Scanner sc = new Scanner(System.in)) {//년도와 월 입력받기System.out.print("년도:");int year = sc.nextInt();System.out.print("월:");int month = sc.nextInt();//합계를 구할 변수int cnt = 0;//year 이전 까지 지나온 날 수의 합계를 구하기//년은 1부터 시작for(int i=1; i

IT/JAVA (17.12.18~) 2018.02.05

23일 JAVA(23)

1. 방화벽(firewall) 과 proxy1) 방화벽=>외부 컴퓨터에서 내 컴퓨터로 들어올 때 거치는 프로그램이나 하드웨어=>방화벽이 설정되어 있으면 외부 컴퓨터에서 내 컴퓨터로 들어오는 것을 차단할 수 있습니다.=>Windows에서는 [제어판] - [Windows 방화벽] 메뉴에서 설정하거나 해제 가능=>Mac에서는 Apple 메뉴 -> 시스템 환경 설정 -> 보안 및 개인정보 보호 -> 방화벽=>리눅스에서는 firewall 명령어로 수행 2) proxy=>내 컴퓨터에서 외부 컴퓨터로 나갈 때 거치는 프로그램이나 하드웨어=>특정 사이트에 접근하는 것을 막거나 흔적을 남기기 위해서 사용 2. 비연결형 통신(UDP 프로토콜)=>데이터를 일방적으로 전송하는 방식=>받는 쪽에서 수신 여부를 송신측에 알려주지..

IT/JAVA (17.12.18~) 2018.01.24

22일 JAVA(22)

1 텍스트 파일의 내용을 읽어서 데이터 분석하기1) 프로젝트 생성2) 프로젝트에 텍스트 파일을 복사 - log.txt3) 파일의 내용 읽기 package analysis; import java.io.BufferedReader;import java.io.FileReader; public class Main1 { public static void main(String[] args) {//log.txt 파일의 내용을 읽을 수 있는 객체를 생성//log.txt 파일은 문자열로 구성된 파일이므로 읽기 위한 클래스는//BufferedReader를 사용하는 것이 좋습니다.try(BufferedReader br = new BufferedReader(new FileReader("log.txt"))){//try()안에 객..

IT/JAVA (17.12.18~) 2018.01.24

21일 JAVA(21)

1. Stream1) OutputStream - ByteStream 들의 출력에 관련된 메소드 이름을 소유한 추상 클래스 void close(): 스트림 닫기void flush(): 현재 버퍼에 남았있는 내용 모두 출력void write(int r): r을 기록void write(byte [] b): b의 모든 내용을 기록void write(byte [] b, int offset, int length): b 배열에서 offset 부터 length 만큼 기록 2) InputStream - ByteStream 들의 입력에 관련된 메소드 이름을 소유한 추상 클래스 int available(): 스트림에서 읽을 수 있는 크기를 바이트 단위로 리턴 int read(): 하나의 바이트를 읽어서 정수로 리턴 못 읽으..

IT/JAVA (17.12.18~) 2018.01.23

20일 JAVA(20)

1. 텍스트 입력 Control 1) JTextField=>한 줄의 문자열을 입력받기 위한 Control=>String getText(): 입력된 문자열을 리턴해주는 메소드 2) JPasswordField=>비밀번호를 입력받기 위한 Control 3) JTextArea=>여러 줄의 문자열을 입력받기 위한 Control 2. JComboBox=>여러 개의 항목 중 하나의 항목을 선택할 때 사용하는 Control=>보통 항목의 개수가 적을 때는 JRadioButton을 사용하고 항목의 개수가 많을 때는 JComboBox를 사용 1) 생성자JComboBox()JComboBox(E[] items): 문자열 배열을 이용해서 생성JComboBox(Vector items): 문자열 Vector를 이용해서 생성 2) ..

IT/JAVA (17.12.18~) 2018.01.16

19일 JAVA(19)

1. AWT, Swing, Android의 이벤트 처리1) 객체의 이벤트 처리를 위임할 인터페이스나 추상클래스의 객체를 생성 - 인터페이스나 추상클래스를 상속하는 클래스를 만들고 객체를 생성 - 클래스를 만들지 않고 객체를 생성 2) 객체의 add이벤트Listener(1번에서 만든 객체)를 호출=>객체에 이벤트가 발생하면 1번에서 만든 객체의 메소드가 호출됩니다. 2. Event1) ActionEvent=>버튼을 클릭하거나 메뉴를 누르거나 텍스트 필드 등에서 Enter를 눌렀을 때 발생하는 이벤트=>ActionListener 인터페이스로 처리=>ActionListener 인터페이스에서 actionPerformed(ActionEvent e) 메소드가 존재하고 ActionEvent가 발생하면 이 메소드가 호..

IT/JAVA (17.12.18~) 2018.01.16

18일 JAVA(18)

1. 배치관리자: layout=> Container의 컴포넌트들을 배제하는 방법=> Container의 setLayout(Layout 객체)를 이용해서 설정 1) FlowLayout=> 컴포넌트들을 위에서부터 순서대로 배치=> Panel의 기본 레이아웃 2) Border Layout => 5개의 영역으로 나누어서배치=> North, East, West, South, Center=> 하나의 영역에 1개의 컴포넌트만 배치가능=> Frame 의 기본 레이아웃 =>add를 할 때 위치와 Component를 같이 대입해서 배치=>위치를 생략하면 Center=>영역에 아무런 Component도 배치되지 않으면 영역을 차지할 수 있는 다른 영역이 같이 차지합니다.=>하나의 영역에 하나의 Component만 배치 가능..

IT/JAVA (17.12.18~) 2018.01.12

17일 JAVA(17)

1. 상호배제(Mutual Exclusion)=>하나의 스레드가 수정 중인 공유 자원을 다른 스레드가 수정하면 안된다. 1) 상호배제 문제가 발생하는 경우- 32bit 시스템에서 64bit 데이터를 사용하는 경우 : 64bit 데이터의 연산작업은 32bit 단위로 나누어서 수행하게 되는데 일부분만 수행된 상태에서 데이터를 사용하는 경우- 공유자원을 사용하는 경우의 수정 2) 해결책- 첫번째 경우는 변수 앞에 volatile을 붙여서 어느 한 부분만 연산을 한 상태에서 다른 곳에서 사용할 수 없도록 해주면 됩니다.- 두번째 경우는 하나의 작업이 완료될 때 까지 다른 작업이 공유자원을 사용할 수 없도록 해주거나 상호배제가 이미 구현된 자료구조를 사용하면 됩니다.=>최근에는 상호배제가 이미 구현된 자료구조를 ..

IT/JAVA (17.12.18~) 2018.01.11

16일 JAVA(16)

1. java.text. SimpleDataFormat=> java.util.Data 클래스와 같이 사용되는데 날짜를 원하는 형식의 문자열 포맷으로 변경하거나 날짜가 문자열로 만들어졌을 때 java.util.Data 형식으로 변환해주는 클래스 Data를 String 으로 전환// Date 객체 생성 Date 변수명 = new Date(); = new Data(Calendar객체.get TimeInMillis());SimpleDataFormat 포맷객체 = new SimpleDateFormat("포맷 성정");String 문자열 = 포맷객체.format(날짜객체); package java0110; import java.text.SimpleDateFormat;import java.util.Calendar;i..

IT/JAVA (17.12.18~) 2018.01.10