본문 바로가기
728x90
반응형

Java61

[Java] Java8에서의 날짜/시간 비교 (LocalDateTime) Java8 이전에는 흔히 알고 있는 Date, Calendar를 통해 날짜시간을 비교했었는데 불편한 사항이 많았다. 하지만 Java8 부터는 LocalDateTime, LocalDate, LocalTime, ZonedDateTime을 제공하기 때문에 기존의 불편한 사항이 많이 해소 되었다. 그래서 오늘은 많이 쓰이는 LocalDateTime을 이용한 대표적으로 날짜/시간 비교하는 함수를 정리해두려고 한다. isBefore() 인자보다 과거일 때 true 반환 LocalDateTime oldDate = LocalDateTime.parse("2021-11-10T10:11:15.000"); LocalDateTime newDate = LocalDateTime.parse("2021-12-16T10:11:15.00.. 2021. 11. 16.
[Java] 깊은복사와 얕은복사(Call By Value & Call By Reference) 자바를 떠나서 프로그래밍을 하다 보면 꼭 알아야할 개념 중 하나인 Call By Value, Call By Reference에 대해 알아보자. Call By Value 값을 호출 하는것을 의미하며 전달 받은 값을 복사하여 처리한다. 전달 받은 값을 변경하여도 원본은 변경되지 않는다. Call By Reference 참조에 의한 호출을 의미하며, 전달 받은 값을 직접 참조한다. 전달 받은 값을 변경할 경우 원본도 같이 변경이 된다. 그렇다면 자바에서의 Call By Value와 Call By Reference는 어떻게 적용이 될까? 기본 자료형 변수가 파라미터 → 값 (깊은 복사) Array, List 등의 변수가 파라미터 → 주소(얕은 복사) 아직 정확하게 깊은 복사와 얕은 복사가 어떤 건지 이해가 안되.. 2021. 10. 27.
[Java] 압축 파일 jar vs war java를 사용하다보면 jar파일과 war파일이 존재한다는 것을 알 수 있다. 하지만 이 둘의 차이점은 명확히 모르고 있었다. jar와 war가 의미하는 바를 알아보자. jar, war java 기반의 application의 배포 형태이다. java tar tool을 이용하여 압축한 압축 파일이다. (jar와 war는 압축 형태의 파일이다.) jar와 war는 사용 목적이 다르다. jar Java ARchive path 정보를 유지한 상태로 압축한다. 자바 클래스 파일과 각 클래스들이 사용하는 리소스 파일 및 메타 데이터를 압축한 파일이다. 실제로는 ZIP 파일 포맷으로 압축된 파일이다. war Web application ARchive 웹 어플리케이션을 어떻게 설정할 지에 대한 정의가 있는 web.xm.. 2021. 10. 18.
[Infra] - 빌드의 자동화를 위한 Jenkins(젠킨스) 오늘은 개발을 위한 빌드부터 배포까지 자동화 해주는 Jenkins에 대해 간략하게 알아보려고한다. 개발자가 서버에 기능을 추가하려면 먼저, 개발자의 PC를 통해 개발을 하고 테스트까지 한 뒤, 이상이 없다고 판단이 되면 사용자가 사용할 수 있게 수정된 내용을 서버에 반영을 한다. 여기서 서버에 반영하는 것을 배포(Deploy)라고 하며, 배포 하기 위한 준비 과정을 빌드(Build)라고 한다. 빌드의 자동화? 위에서 설명 된 것 처럼 빌드는 서버에 올릴 수 있는 상태로 만드는 것을 의미한다. 그렇다면 빌드는 하루에 한번을 할 수 있으며, 안할 수도 있지만 1주일, 1달로 계산하면 꽤 많이 하게된다. 그리고 이 시간이 점차 늘어나 1년으로 된다면 상당히 많은 시간이라고 할 수 있다. 예를 들어 예전에는 J.. 2021. 10. 13.
Spring vs Spring Boot Spring vs Spring Boot 우리가 흔히 알고 있는 자바 기반 대표적인 프레임워크인 Spring Framework와 Spring에서 불편한점 들을 고치고자 태어난 Spring Boot의 차이점을 알아보자. [ Spring ] 먼저 Spring Framework란 무엇인가? Spring 홈페이지에서 소개글 중 핵심적인 문단을 한국어로 번역하자면 이렇다. "Spring은 어떤 종류의 배포 플랫폼에서도 최신 자바 기반 기업용 애플리케이션을 위한 종합적인 프로그래밍 및 구성 모델을 제공해준다." "Spring의 핵심 요소는 애플리케이션 수준에서의 인프라 자원이다. Spring은 기업용 애플리케이션의 plumbing에 초점을 맞춰 팀이 특정 배포 환경과 불필요한 시도없이 애플리케이션 수준의 비지니스 로.. 2021. 9. 8.
Spring 개발자 수업 110일차(2) - RESTful API RESTful API [ 구현 목표 ] - RESTful API를 통해 json 형태로 값을 넘겨 CRUD 구현하기 [ 초기 설정 ] - RESTful API + DB(MyBatis) + JSON(jackson, json-simple) 1. Spring MVC Project -> SpringRestfulTest 생성 > com.test.rest 생성 2. pom xml - Lombok 1개, MyBatis 4개, log4j 1개, jackson 3개, json-simple 1개 - ojdbc6 (직접 설치) 3. web.xml - 인코딩 필터(UTF-8) 4. root-context.xml - 오라클 DB, log4j 설정 5. servelt-context.xml - 설정 X 6. 파일 생성 - com... 2021. 9. 2.
728x90
반응형