728x90
반응형
SMALL

JAVA 10

JSch를 활용하여 외부 서버 파일 가져오기(파일 컬럼 개수)

사용자의 로컬 환경이나 서버에 가지고 있는 파일을 도커 컨테이너로 옮기거나 그 반대의 기능이 필요한 경우가 많다. 이 때 JSch를 활용하여 sftp를 사용한다. 다음은 jsch를 활용한 sftp 접속 예시이다. JSch jsch = new JSch(); Properties config = new Properties(); config.put("StrictHostKeyChecking", "no"); // 호스트 정보 검사 안함 String host = "mySftpHost"; int port = "22"; String userName = "userName"; String password = "passWord"; Session session = jsch.getSession(userName, host, por..

JAVA 2024.04.11

자바 빈(Bean) 이란 무엇인가?

서블릿과 jsp 파일을 통해 웹 프로그램을 작성하는 법을 배운 후(해당 내용 또한 정리해 올릴 예정이다.) 스프링 프레임워크 수업이 시작되었다. 첫날 제일 기억에 남는 용어는 바로 빈(bean)이었다. xml 파일에서 끊임없이 bean을 만들고, 사용하기 때문이다. bean이 무엇인지 알고 넘어가야겠다. 자바 빈즈는 자바로 작성된 소프트웨어 컴포넌트이며 데이터 표현을 목적으로 하는 자바 클래스이다. 자바 빈즈 클래스는 'Java Beans Convention'을 지켜야 하며, Java Beans Convention은 다음과 같다. 클래스는 인자(Argument)가 없는 기본 생성자(Default constructor)를 갖는다 클래스의 멤버 변수는 프로퍼티(Properties)라고 하며 private 접..

JAVA 2021.05.06

파일 입출력 연습

입력받은 텍스트 파일의 라인순서를 반대로 가지고 있는 파일을 만들어 출력한다. EX) input file Two roads diverged in a wood, and I took the one less traveled by, and that has made all the difference. - Robert Frost ​ output - Robert Frost and that has made all the difference. and I took the one less traveled by, Two roads diverged in a wood, ​ ​ 파일 입출력이 어렵다. 이 문제를 푸는데 시간이 꽤 걸렸다. ​ ​ ​

JAVA 2021.05.06

상속-기본예제

*상속 상속은 기존에 존재하는 클래스와 비슷한 클래스를 만들 때, 새로 만들지 않고 기존의 클래스를 상속받아 확장하는 기술이다. 기존에 존재하는 클래스를 부모 클래스, 혹은 상위 클래스라고 하며 상속받아 새로 생성되는 클래스를 자식 클래스 혹은 하위 클래스라고 부른다. 상속은 이미 잘 개발된 클래스를 재사용해서 새로운 클래스를 만들기 때문에 코드의 중복을 줄여준다. 상속을 해도 부모 클래스의 모든 필드와 메소드를 물려받는 것은 아니다. 부모 클래스에서 private 접근 제한자를 갖는 필드와 메소드는 상속 대상에서 제외된다. 그리고 부모 클래스와 자식 클래스가 다른 패키지에 존재한다면 default 접근 제한을 갖는 필드와 메소드도 상속 대상에서 제외된다. 그 이외의 경우는 모두 상속의 대상이 된다. A..

JAVA 2021.03.29

Java - If 문의 사용

제어문의 종류에는 조건문과 반복문이 있다. 조건문에는 if문과 switch문이 있고 반복문에는 for문, while문, do-while문이 있다. 제어문 블록이 실행 완료되었을 때 다시 제어문 처음으로 돌아갈지, 아니면 제어문 블록을 빠져나와 정상 흐름으로 다시 돌아올지는 어떤 제어문을 사용하는지에 달려있다. 이것을 루핑(looping)이라고 한다. 제어문 블록 내부에는 또 다른 제어문을 사용할 수 있다. if문 내부에 for문을 가질 수 있고, while문도 가질 수 있다. 이를 통해 개발자가 원하는 매우 복잡한 흐름 제어도 가능하다. If문 if문은 조건식의 결과에 따라 블록의 실행 여부가 결정된다. if(조건식){ (조건식이 참인 경우 실행) } 조건식이 거짓인 경우 블럭 안의 내용을 건너뜀 다음은..

JAVA 2021.03.29

클래스와 메소드 예제 1

public class Car { //1.멤버 변수(field) : non-static(instance variable) / static(class variable) private int speed;//instance variable. private(Car 내에서만 접근 가능. 정보은닉, //상속 받아도 불가) private boolean stop; private static int count;//class variable, object 공유 변수 private final int year; // instance 변수, final은 한번 세팅할수있다. 변경불가.(생성자에서, 또는 선언시) private static final String COMPANY = "현대자동차";//상수 //2. 생성자 메소드 : ..

JAVA 2021.03.18

DTO, Static, Singleton 그리고 접근 제한자

​ ​ 위의 Book 클래스는 없무 로직(business logic)을 가지지 않는다. 단지 생성자를 선언하고 입력받은 값을 저장하거나 반환하는 메소드만을 가지고 있다. 이처럼 데이터를 전송하기 위해 만든 클래스를 DTO(Data Transfer Object) 또는 VO(Value Object)라고 부른다. 이러한 클래스는 값을 담을 변수와 생성자를 선언하고 getter와 setter만을 가진다. 이러한 클래스에서 변수들은 private 접근 지정자를 갖는 것이 일반적이고, 메소드들은 public으로 선언한다. 이는 해당 객체를 사용하는 사용자가, 객체가 제공하는 기능은 사용할 수 있지만 객체가 가지고 있는 변수에 직접 접근할 수는 없도록 하는 것이다. ​ ​ StaticTest static(정적) 멤버..

JAVA 2021.03.17

자바로 숫자야구(Bulls and Cows)게임 만들기

문제 - 출처 코딩도장(codingdojang.com/scode/663?answer_mode=hide) Bulls and Cows라는 간단한 게임을 프로그램으로 만들어보자. 먼저 컴퓨터가 0부터 9까지의 숫자중 4개를 중복없이 배열한 문자열을 랜덤하게 생성한다. 플레이어는 생성된 문자열을 예상하여 1턴에 1번씩 입력할 수 있다. 컴퓨터는 플레이어가 입력한 문자열을 정답과 비교하여 값과 위치가 모두 맞는 숫자의 갯수를 'Bulls' 위치는 틀렸지만 값은 맞는 숫자의 갯수를 'Cows'로 카운트하여 매턴마다 사용자의 입력에 대해 Bulls와 Cows값을 알려준다. 플레이어는 10턴 안에 정답을 맞춰야한다. 판정의 출력형식은 (Bulls값)B(Cows값)C 로 한다. ex) 답이 1234일때 0124를 입력하..

JAVA 2021.03.17

자바- 조건문과 반복문

오늘은 조건문과 반복문을 공부했다. 융복합소프트웨어학과를 이중전공하여 기본적인 문법들은 익숙했지만 그에 대한 개념의 기초가 부실하다고 느껴왔기 때문에 오늘 수업에서 많은 것을 배우고 이해할 수 있었다. ​ 1. 조건문 조건문은 코드의 실행 흐름을 제어한다. 코드는 기본적으로 위에서 아래로, 차례대로 진행되지만 조건문은 이 흐름을 제어할 수 있다. 조건문에는 if문과 switch문이 있다. ​ 2. 반복문 또한 코드의 실행 흐름을 제어한다. 반복문에는 for문, while문, 그리고 자주 쓰이지 않는 do while 문이 있다. 반복문을 제어하기 위해 break와 continue 등을 사용한다. ​ 3. Scanner 사용 코딩 관련 학과를 다녔지만 사실 코딩을 많이 하지 않았다. 그나마 작년부터 코딩 테..

JAVA 2021.03.13

자바의 기초

교재 : 이것이 자바다(신용권, 한빛미디어) ​ 첫날에는 Oracle에 접속해서 자바를 설치하는 것부터 수업이 진행되었다. 지금까지 코딩 강의를 들을 때면 늘 프로그래밍 언어나 편집기의 저장 경로를 대충 또는 잘못 설정하여 나중에 귀찮은 경우가 많았다. 따라서 컴퓨터에 깔려있던 자바jdk와 이클립스, atom등의 프로그램들을 모두 지운 후 강사님을 따라 처음부터 다시 설치하였다. ​ 프로그래밍 언어란? 우리가 일상에서 사용하는 언어는 컴퓨터가 사용하는 언어와는 너무나도 다르다. 기계어는 0과 1로만 이루어진 이진 코드이기 때문에 사람이 이를 이해하기란 불가능하다. 사람의 언어를 컴퓨터가 이해하는 것 또한 불가능하다. 그렇기 때문에 사람과 컴퓨터가 대화하기 위해서는 두 언어 사이를 이어주는 역할을 하는 프..

JAVA 2021.03.13
728x90
반응형
LIST