일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- springflow
- 벌크연산
- 자바서블릿
- 페이징
- Generic
- javascriptcalendar
- jQuery값전달
- calendar
- LIST
- 엔티티직접사용
- namedQuery
- JPQL
- jscalendar
- jQueryUI
- 프로젝트생성
- 제너릭
- paging
- JQuery
- 페치조인
- 제네릭
- joinfetch
- fullcalendar
- javaservlet
- fetchjoin
- jQuery값전송
- 대량쿼리
- JPA
- Hibernate
- 스프링데이터흐름
- values()
- Today
- Total
목록분류 전체보기 (259)
가자공부하러!
1. 디펜던시 추가 // gradle dependencies { ... implementation 'org.springframework.boot:spring-boot-devtools' ... } 적용 확인 새로고침 단축키 : shift + cmd + F9 Build -> Recompile
목차 요약 및 결론 책 내용 요약 및 결론 함수형 프로그래밍이 무엇인지 왜쓰는지 어떻게쓰는지 알려줌 핵심 용어 고차원 함수, 참조 투명성, 영속 자료구조 커링이랑 고차원함수 부분은 언젠가는 쓸 수도 있을듯 함 책 내용 실용적 함수형 프로그래밍 기법과 학술적 지식을 소개한다. 고차원 함수, 커링, 영구 자료구조, 게으른 리스트, 패턴 매칭, 참조 투명성을 이용한 캐싱과 콤비네이터 1. 함수는 모든 곳에 존재한다. 자바8은 일급 함수를 지원한다.(함수를 일반값 처럼 사용해서 인수로 전달하거나 결과로 반환받거나 자료구조에 저장할 수 있음) 예시 : Function strToInt = Integer::parseInt; 고차원 함수 하나 이상의 동작을 수행하는 함수 하나 이상의 함수를 인수로 받음 함수를 결과로 ..
git stash 작업 중인 내용을 임시로 저장해 두는 기능 다른 branch를 checkout 해야 하는 상황에서 유용 현재 커밋하지 않은 내용들을 임시로 저장 $ git stash현재 커밋하지 않은 내용들을 {이름}을 지정해서 저장 $ git stash save {이름}임시저장된 목록을 보여줌 $ git stash list가장 최근에 stash 또는 stash save로 저장한 내용을 복원하며 저장된 내용 삭제 $ git stash pop가장 최근에 stash 또는 stash save로 저장한 내용을 복원하며 저장된 내용 유지 $ git stash apply
목차 요약 및 결론 책 내용 요약 및 결론 함수형 프로그래밍이 무엇인지 왜쓰는지 어떻게쓰는지 알려줌 심화는 다음시간에 함수형 프로그래밍? 인수가 일정할 때 항상 동일한 결과를 호출하며 시스템의 다른 부분에 영향을 주지 않도록 프로그래밍 하는 방법 함수형 프로그래밍 왜씀? 부작용 없음과 불변성이 확보되어 유지보수성에 도움이 됨, 가독성도 좋음 어떻게 씀? 예제 확인 계산을 도와주기 위해 common하게 만든 Util클래스에 적용하기 좋아보인다 책 내용 왜 함수형 프로그래밍을 사용하는가? 1. 함수형 프로그래밍의 개념은 무엇인가? 2. 함수형 프로그래밍을 적용하면 무엇이 좋을까? 1. 시스템 구현과 유지보수 함수형 프로그래밍이 제공하는 부작용 없음과 불변성 개념은 유지보수성에 도움이 된다. . 요약 : 공유..
목차 요약 및 결론 책 내용 요약 및 결론 Flow API는 Akka, RxJava등의 리액티브 라이브러리를 이용해 개발된 리액티브 애플리케이션 간 공용어를 제시하는 역할을 한다. Flow API를 만들 당시 이미 Akka, RxJava 등의 라이브러리가 이미 존재했기 때문에 Flow를 구현한 클래스를 제공하지 않는다. 얼마나 효과가 좋은 프로그래밍 방법인지 알 수 없다. 리액티브 프로그래밍이 실제로 사용된 곳 : MS의 엑셀, WebFlux책 내용 리액티브 프로그래밍 패러다임의 중요성이 증가하는 이유 빅테이터 : 페타 바이트 단위의 큰 데이터를 처리할 필요성이 생김 다양한 환경 : 모바일 디바이스 부터 수천 개의 프로세서로 실행되는 클라우드 기반 클러스터 까지 다양한 환경에 애플리케이션이 배포된다 사용..
목차 요약 및 결론 책 내용 요약 및 결론 예제가 재미있었다 Async만 알았던 비동기.. 쉽지않다책 내용 Future의 단순 활용 Java5부터 생긴 Future 미래의 어느 시점에 결과를 얻는 모델에 활용 작업을 Callable객체 내부로 감싼 다음 ExecutorService에 제출해야 한다. 오래 걸리는 작업이 영원히 끝나지 않으면? 타임아웃 설정을 해주면 되긴 하는데.. future.get(1, TimeUnit.SECONDS); Future 한계 Future가 제공하는 메서드 : 비동기 계산이 끝났는지 확인, 계산이 끝나길 기다림, 결과 회수 복잡한 동작을 구현하기에는 쉽지 않음 CompletableFuture의 기능들 (Future만 있었을 때 필요했던 기능들) 두 개의 비동기 계산 결과를 하..
목차 요약 및 결론 책 내용 요약 및 결론 자바의 동시성 지원은 계속 진화해 가고 있는데 나는 잘 모르겠다 Future는 CompletableFuture 없이는 쓰면 안될거라고 생각한다. get()호출했다가 영영 안끝나면 어떡해 pub-sub 예제가 아주 좋다. 값셀 - 연산결과셀 책 내용 CompletableFuture와 리액티브 프로그래밍 컨셉의 기초 소프트웨어 개발 방법을 획기적으로 뒤집는 두 가지 추세 하드웨어 관련 애플리케이션 구성 관련 MSA가 유행하면서 서비스가 작아진 대신 네트워크 통신 증가(매시업 애플리케이션) 매시업 애플리케이션에서 하나의 서비스의 응답을 기다리는 동안 다른 서비스를 처리하지 않을 이유가 없다. Java는이런 환경에서 사용할 수 있는 두 가지 주요 도구를 제공한다. Fu..
목차 요약 및 결론 책 내용 요약 및 결론 interface의 의미를 퇴색시키는 요소 아닌가? 버전업 하는데 그정도는 할 수 있지 않나.. 아니면 업데이트 툴을 만들어 줘도 될것 같은데 그게 귀찮았나? 동작 다중 상속은 꽤 좋은 기능인듯 하다 다이아몬드 문제 컴파일 오류 안나는데? 책 내용 default method? API는 바꾸기 어렵다. 인터페이스에 새로운 메서드를 추가해도 바이너리 호환성은 유지된다. 새로 추가된 메서드를 호출하지만 않으면 새로운 메서드 구현이 없어도 기존 클래스 파일 구현이 잘 동작한다는 의미 메서드 추가하고 컴파일하면 당연히 오류나고 여기서 말하는건 .java말고 .class인듯 하지만 소스호환성은 깨진다 .java를 바꿨는데도 컴파일잘된다? 소스호환성이 유지된다고 하면됨 디폴..
목차 요약 및 결론 책 내용 요약 및 결론 Date 타입명이 참 아깝다... 지금 LocalDateTime을 Date로 바꾸면 참 좋을텐데 아쉽 LocalDateTime 쓰면 좋긴 할텐데 Date 클래스 쓰던곳은 apache DateUtils 써도 충분할듯.. timezone 부분은 확실히 편함 책 내용 자바8 이전까지 날짜와 시간 API 1.0부터 Date 쓰고있었음 결과가 직관적이지 않음(월 시작이 0 등) toString 문자열을 추가로 활용하기 어려움 1.1에서 Calendar가 나왔지만 혼란을 가중시킴 새로운 날짜와 시간 API LocalDate와 LocalTime 사용 LocalDateTime(LocalDate + LocalTime) @Test public void testLocalDateTi..
목차 요약 및 결론 책 내용 요약 및 결론 Optional은 만능이 아니다. null 체크는 Optional이 있든 없든 더럽다. 'null일 수도 있는 값이다'라는 의미를 전달하는 역할이 중요한 듯 하다. flatMap 연결, ifPresent은 참 좋아 보인다. 책 내용 Optional 클래스 선택형값을 캡슐화하는 클래스 값이 있는 경우 : Optional 클래스는 값을 감싼다 값이 없는 경우 : Optional을 반환 모든 null 참조를 Optional로대치하는 것은 바람직하지 않다. Optional의 역할은 더 이해하기 쉬운 API를 설계하도록 돕는 것이다. Optional 적용 패턴 Optional 객체를 만드는 여러 방법 @Test void makeOptional() { // ..
목차 요약 및 결론 책 내용 요약 및 결론 자바 8의 람다와 메서드참조 기능의 추가로 DSL 개발 적합도가 얼마나 향상됐는지 보여주기 위한 챕터인듯 했다. 하지만 가장 좋았던건 편하게 쓰기만 하던 메소드 체인 패턴(플루언트 스타일)이 어떻게 구성됐는지 알게된 것이다. 자바 좋다. 책 내용 1. 도메인 전용 언어(Domain Specific Languages) DSL은 특정 비즈니스 도메인의 문제를 해결하려고 만들어진 특수 프로그래밍 언어이다. 특정 비즈니스 도메인을 인터페이스로 만든 API라고 생각할 수 있다. 직역 : 영역 별 언어 1.1. DSL의 장점과 단점 장점과 단점에 대한 이유들과 사례들은 10장이 진행되며 하나씩 나온다. 장점 : 간결함 : API는 비즈니스 로직을 간편하게 캡슐화하므로 반복..
원문 : https://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/mapping.html#d0e5294 결론 : uuid는 RFC 4122 호환안됨 -> warn로그 쌓임 또다른 이유가 있을듯함 uuid Generates a 128-bit UUID based on a custom algorithm. The value generated is represented as a string of 32 hexidecimal digits. Users can also configure it to use a separator (config parameter "separator") which separates the hexidecimal digits into 8{se..