[토비의 스프링] 스프링이란?
·
Server/Spring&Spring Boot
스프링이란? 자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크 Java Virtual Machine에서 작동하며, 아파치 라이선스를 따르는 오픈 소스 프레임워크 스프링 컨테이너 설정 정보를 참고하여 애플리케이션을 구성하는 오브젝트를 생성하고 관리 독립적으로 동작할 수도 있지만 보통 웹 모듈에서 동작하는 서비스나 서블릿으로 등록하여 사용 Ioc/DI, 서비스 추상화, AOP IoC/DI 오브젝트의 생명 주기와 의존관계에 대한 프로그래밍 모델 객체지향 설계 원칙과 디자인 패턴의 핵심 원리를 담고 있다. 스프링이 직접 제공하는 모든 기술과 API, 컨테이너도 IoC/DI방식으로 작성됨 서비스 추상화 환경이나 서버, 특정 기술에 종속되지 않고 이식성이 뛰어난 애플리케이션을 만들 수 있도록 지..
[Error] 대용량 데이터 처리 중 BufferedWriter Split 후 데이터 누락
·
Server/Error
Split 후 데이터가 누락되는 상황 csv 파일의 6209323건의 데이터를 전달받아 ","를 기준으로 Split을 진행하던 도중 배열에서 ArrayIndexOutOfBoundsException에러가 발생하여 더 이상 진행되지 않는 상황이 발생하였다. 에러가 발생하는 해당 txt 파일을 확인해 보니 ... 50,50 50,50 50으로 데이터가 전달받다가 끊긴 상황이었다. 무엇이 문제인지 코드를 하나하나 다시 뜯어보고 처음부터 다시 그려보던 도중 눈에 들어왔던 코드가 bw.close() 였다. public void write(List strs, String filename) { File file = new File(filename); try { BufferedWriter bw = new Buffered..
[Kotlin] 변수 1
·
Server/Kotlin
변수 선언 변수 키워드 val : value의 줄임말, 할당되면 바꿀 수 없는 변수 (java의 final) var : variable의 줄임말, 할당 후 값을 바꿀 수 있는 변수 val data1 = 10; var data2 = 10; fun main() { println(data1) println(data2) } data 1은 val로 선언하고 data2는 var로 선언 후 print 해보았다. 두 값 모두 이상 없이 출력되는 것을 확인할 수 있었다. val은 할당 후 값이 변경될 수 없지만 한 번 값을 변경해 보았다. val data1 = 10; var data2 = 10; fun main() { data1 = 20; data2 = 20; println(data1) println(data2) } 실..
[Kotlin] 프로젝트 생성 & Hello Kotlin
·
Server/Kotlin
프로젝트 생성 File -> New -> Project Language Kotiln 선택 -> Create git Ignore 설정 Hello Kotiln 찍어보기 Kotlin Calss/File 생성 Main 불러오기 fun main() { } print 명령어 입력 fun main() { print("Hello Kotlin") } 세미콜론은 선택사항이나, 한 줄에 여러 명령어를 입력할 때는 필수라고 한다.
[Java 입문] 예외2
·
Server/자바의정석
사용자 정의 예외 생성 기존의 정의된 예외 클래스 외에 필요에 따라 프로그래머가 새로운 예외 클래스를 정의하여 사용할 수 있다. class MyException extends Exception{ MyException(String msg){ // 문자열을 매개변수로 받는 생성자 super(msg); // 조상인 Exception클래스의 생성자를 호출한다. } } Exception 클래스로부터 상속받아서 MyException클래스를 만들었다. 필요하다면, 멤버 변수나 메서드를 추가할 수 있다. class MyException extends Exception{ // 에러 코드 값을 저장하기 위한 필드를 추가했다. private final int ERR_CODE; // 생성자를 통해 초기화 한다. MyExcep..
[Java 입문] throw, throws
·
Server/자바의정석
예외 발생시키기 thorw를 사용해서 프로그래머가 고의로 예외를 발생시킬 수 있다. 1. 연산자 new를 이용해서 발생시키려는 예외 클래스의 객체를 만든 다음 Exception e= new Exception(”고의로 발생시켰음”); 2. 키워드 thorw를 이용해서 예외를 발생시킨다. thorw e; class Throw { public static void main(String args[]) { try { Exception e = new Exception("고의로 발생시켰음."); throw e; // 예외를 발생시킴 //throw new Exception("고의로 발생시켰음."); } catch (Exception e){ System.out.println("에러 메시지 : " + e.getMessag..
[Java 입문] try - catch - finally
·
Server/자바의정석
try - catch문 예외처리(exception handling)란, 프로그램 실행 시 발생할 수 있는 예기치 못한 예외의 발생에 대비한 코드를 작성하는 것이며, 예외처리의 목적은 예외의 발생으로 인한 실행 중인 프로그램의 갑작스러운 비정상 종료를 막고, 정상적인 실행상태를 유지할 수 있도록 하는 것이다. 예외처리(exception handling)의 정의 : 프로그램 실행 시 발생할 수 있는 예외의 발생에 대비한 코드를 작성하는 것 목적 : 프로그램의 비정상 종료를 막고, 정상적인 실행상태를 유지하는 것 에러와 예외는 모두 실행 시(runtime)발생하는 오류이다. try { // 예외가 발생할 가능성이 있는 문장들을 넣는다. }catch (Exception1 e1) { // Exception1이 발..
[Java 입문] 오류 & 예외
·
Server/자바의정석
프로그램 오류 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행 시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 런타임 에러를 방지하기 위해서는 프로그램의 실행 도중 발생할 수 있는 모든 경우의 수를 고려하여 이에 대한 대비를 하는 것이 필요하다. 자바에서는 실행 시(runtime) 발생할 수 있는 프로그램 오류를 ‘에러(error)’와 ‘예외(exception)’, 두 가지로 구분하였다. 에러(error) : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외(exception) : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 에러는 메모리 부족(OutOfMemoryError)이나 스택오버플로우(StackOverflowError)와 같이 일..
코드플리
'Server' 카테고리의 글 목록 (18 Page)