분류 전체보기 297

스프링 프로젝트 정리 1

DAO(Data Access Object)데이터베이스에 접근하는 역할을 하는 객체데이터의 CRUD 작업을 시행하는 클래스데이터베이스 작업 예시1)package com.mystroy001.dao;import javax.inject.Inject;import javax.sql.DataSource;import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;import com.mystroy001.domain.MemberDTO;public class MemberDAO {//DB 작업 //멤버변수 정의 javax.sql.DataSource// private DataSource dataSource; //스프링에서 디비연결 정보를 받아서 sql 문을 실행하는 프로..

organize/스프링 2024.09.18

정보처리기사 합격후기 및 정리파일

2024년 정기 기사 2회 실기 합격자가 발표 났습니다. 저는 필기 2트, 실기 1트에 합격했는데 시험 준비 과정과 느낀 점, 소소한 팁에 대해 이야기해보고자 합니다. 정리파일은 가장 아래에 있습니다. 왜 정보처리기사를 취득하려고 하는가? 저는 6개월 간의 백엔드 교육(KDT)을 이수 했고, 취업을 준비하는 과정에서 많은 회사들이 우대사항이나 필수사항으로 정보처리기사를 요구하는 곳이 많다는 것을 확인하고 준비했습니다. 물론 실력이 뛰어난 사람이라면 취업에 어려움은 없겠지만, 어쨌든 취업하고 난 후 회사에서도 정보처리기사를 취득을 요구한다고 들었습니다. 저는 머리가 좋지 않아 한 가지 일에만 몰두해야 능률이 올라가서 구직활동하면서 정보처리기사를 준비했습니다. 저의 경우 정보처리기사를 취득하려는 목적은 취업..

organize/시험 2024.09.10

1. 개발을 위한 준비

스프링 버전 변경-폴더 및 파일 설명src/main/java : 작성되는 코드의 경로src/main/resources : 실행할 때 참고하는 기본 경로(주로 설정 파일)src/test/java : 테스트 코드를 넣는 경로src/test/resources : 테스트 관련 설정 파일 보관 경로src-main-webapp-WEB-INF-spring-appServlet-servlet-context.xml : 웹과 관련된 스프링 설정 파일src-main-webapp-WEB-INF-spring-root-context.xml : 스프링 설정 파일src-main-webapp-WEB-INF-views : 템플릿 프로젝트의 jsp 파일 경로src-main-webapp-web.xml : Tomcat의 web.xml 파일프로..

organize/스프링 2024.08.27

Java 37

OptionalT 타입 객체의 래퍼클래스래퍼클래스 : Integer, Long,...null을 직접 다루는 것은 위험 → 간접적으로 null 다루기null 체크(if 문 필수) → 코드가 길어짐=>Optional 객체에 null을 넣음public final class Optional{ private final T value; //T타입의 참조 변수. 모든 종류의 객체 저장 가능(null 가능) ...}Optional 객체 생성하기Optional객체를 생성하는 다양한 방법String str = "abc";Optional optVal = Optional.of(str);Optional optVal = Optional.of("abc");//Optional optVal = Optional.of(null); ..

organize/자바 2024.08.24

Java36

스트림(Stream)다양한 데이터소스(컬렉션, 배열)를 표준화된 방법으로 다루기 위한 것List,Set,Map 사용방법이 같지 않았지만 스트림을 통해 사용방법을 통일시킴Stream → 중간 연산(n번) → 최종연산(1번, 결과)스트림 작업 : 스트림 만들기 → 중간연산 → 최종연산Stream Collection stream()List list = Arrays.asList{1,2,3,4,5};Stream intStream = list.stream(); //컬렉션Stream strStream = Stream.of(new String[]{"a","b","c"}); //배열Stream evenStream = Stream.iterate(0, n -> n+2); //0,2,4,6,8,...Steram randomS..

organize/자바 2024.08.23

Java 35

람다식(Lambda Expression)함수(메소드)를 간단한 '식(expression)'으로 표현하는 방법익명 함수(이름이 없는 함수, anonymous function)함수는 일반적인 용어, 메소드는 객체지향개념 용어. 함수는 클래스에 독립적, 메소드는 클래스에 종속적람다식은 익명 함수가 아니라 익명 객체임 람다식(익명 객체)을 다루기 위한 참조변수가 필요. 참조변수 타입은? 함수형 인터페이스람다식 작성하기int max(int a, int b){ return a > b ? a : b;}1. 메소드의 이름과 반환타입을 제거하고 '->'를 블록{} 앞에 추가 (int a, int b) -> { return a > b ? a : b; }2. 반환값이 있는 경우, 식이나 값만 적고 return문 생략 가능(..

organize/자바 2024.08.22

Java 34

sleep()현재 쓰레드(자기 자신, static)를 지정된 시간동안 멈추게 함.static void sleep(long millis[, int nanos]) //천분의 일초(+나노초) 단위예외처리를 해야함(InterruptedException(Exception의 자손)이 발생하면 깨어남)try{ Thread.sleep(1000); //쓰레드를 1초동안 멈추게 함} catch(InterruptedException e){}//항상 try-catch를 하기 번거로움 //=>void delay(long millis){ try{ Thread.sleep(millis); } catch(InterruptedException e){}}특정 쓰레드를 지정해서 멈추게 하는 것은 불가능함try{ th1.slee..

organize/자바 2024.08.22

Java 33

프로세스와 쓰레드프로세스 : 실행중인 프로그램. 자원(resource)과 쓰레드로 구성쓰레드 : 프로세스 내에서 실제 작업을 수행. 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있음프로세스 ≒ 공장, 쓰레드 ≒ 일꾼싱글 쓰레드 프로세스 : 자원 + 1개의 쓰레드멀티 쓰레드 프로세스 : 자원 + n개의 쓰레드하나의 프로세스를 생성하는 것보다 하나의 새로운 쓰레드를 생성하는 것이 더 적은 비용이 듬CGI(싱글 쓰레드) → 자바 서블릿(멀티 쓰레드 지원)멀티쓰레드의 장,단점장점시스템 자원을 보다 효율적으로 사용할 수 있음사용자에 대한 응답성(responseness)이 향상됨작업이 분리되어 코드가 간결해짐단점 → "공유"동기화(synchronization)에 주의해야함교착상태(dead-lock)가 발생하지 않..

organize/자바 2024.08.21

Java 32

애너테이션주석처럼 프로그래밍 언어에 영향을 미치지 않으며, 유용한 정보를 제공 @Test //이 메소드가 테스트 대상임을 테스트 프로그램에게 알림. JUnit. 단위 테스트 프로그램 public void method(){ ... } 표준 애너테이션자바에서 제공하는 애너테이션애너테이션설명@Override컴파일러에게 오버라이딩하는 메소드라는 것을 알림@Deprecated앞으로 사용하지 않을 것을 권장하는 대상에 붙임@SuppressWarnings컴파일러의 특정 경고메시지가 나타나지 않게 해줌@SafeVarargs제네릭 타입의 가변인자에 사용@FunctionalInterface함수형 인터페이스라는 것을 알림@Nativenative메소드에서 참조되는 상수 앞에 붙임@Target애너테이션이 적용가능한 대..

organize/자바 2024.08.20
728x90