일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- 코딩테스트
- database
- 코딩
- JPA
- 자바
- Elasticsearch
- framework
- 스프링
- spring boot
- ES
- cleancode
- Java
- 그리디
- 알고리즘
- Spring
- API
- 백준
- 애자일프로그래밍
- 개발
- 엘라스틱서치
- 클린코드
- 읽기쉬운코드
- 프레임워크
- mongoDB
- 데이터베이스
- 개발자
- 그리디알고리즘
- Baekjoon
- 코드
- 애자일기법
- Today
- Total
목록Framework (22)
튼튼발자 개발 성장기🏋️

사실 spring에서 MyBatis를 먼저 배우게 되는데 나는 생략하고 가장 핫한 JPA를 공부해볼까 한다. MyBatis를 경험해본 경과 상당히 귀찮고 반복되는 로직과 sql 작성으로인한 오타 등으로 나를 힘들게 했던 기억이 난다. JPA는 Java Persistence API로 RDB 관계를 표현하는 자바의 API로써 spring Data JPA는nce API로 RDB 관계를 표현하는 자바의 API로써 spring Data JPA는이러한 JPA에 대한 저장소를 서포트한다. 이 spring Data JPA는 JPA Data Source에 접근해야하는 프로그램 개발에 용이할 수 있다고 정의되어 있다. JPA reference는 다음 문서를 참고하자. 예제도 구할 수 있으니 꼭 참고하자. Spring Da..
Database를 연동하게 된다면, 우리는 코드 상에서 query를 날리는 로직이 필요할 것이다. 그렇다면 우리가 해야할 일은 다음과 같을 것이다. 드라이버 로드 -> connection 생성 (혹은 DB pool 사용) -> DB 연결 -> sql auery 실행 -> 자원해제 데이터베이스에 접근 할 때마다 상기 내용과 같은 작업이 반복적으로 이루어져야만 한다는 이야기다. 이를 해결하기 위해 JDBC를 사용하는 것이다. spring JDBC를 사용하기 위해 spring-jdbc maven lib이 필요하다. 찾는 방법은 이전 글의 maven Repository를 참고하자. #12 : spring 관련 docs 및 API 참고 자료 spring을 사용하려면 spring docs는 필수로 보아야하고, 어떤..
spring을 사용하려면 spring docs는 필수로 보아야하고, 어떤 라이브러리들이 있는지, 어떻게 가져다 사용하는지 정도는 기본으로 알고 있어야한다. 그래서 spring 관련 홈페이지를 끄적여본다. 1. spring docs : https://docs.spring.io/spring/docs/ 사용하는 버전에 맞는 docs 참고할 것. 2. MyBatis : https://mybatis.org/mybatis-3/ko/ 3. database reference : https://docs.oracle.com/cd/E11882_01/server.112/e41084/toc.htm 4. jQuery docs : https://api.jquery.com/ 5. W3C : https://www.w3schools.c..
나는 실제로 서버 개발자로서 한 직장에 다니고있다. 여러 서버를 만져보았지만 validation check(유효성 검사)를 하지 않는 서버는 단 하나도 없었다. client가 요청한 데이터를 server는 필히 유효성을 체크해야 하기 때문이다. 직장에서 가장 많이 들었던 이야기 중 하나는 이것이다. "서버는 그 어떠한 것도 믿으면 안된다." 우린 서버에 요청이 들어오면 항상 하는 일 중 하나가 바로 유효성 검사라는 것이다. spring에서는 Controller에서 유효성 검사를 하게되는데, BindingResult라는 녀석을 제공해준다. 코드를 보자. @RequestMapping("/") public ModelAndView home(Member member, BindingResult bindingResu..
우리는 때때로 요청한 URL과 다른 결과가 나올 때가 종종있다. 접속할 URL을 치고 엔터를 땅! 치는 순간 URL이 바뀌면서 다른 페이지가 뜰 수 있게 설정할 수 있다는 것이다. 이것이 바로 리다이렉트(redirect) 기능이다. 특히 HTTP 통신에서는 서버의 응답으로 302 status가 발생했을 때, Location header 값으로 리다이렉트를 많이 사용하는데 지금 다룰 리데이렉트는 조금 다르다. 다음 코드를 보자. @RequestMapping("/") public String home(HttpServletRequest request) { String id = request.getParameter("id"); if(null != id && id.equals("abc123")) { return ..

HTTP method 중에 가장 기본이 되는 것은 GET과 POST이다. HTTP method에 대해서는 HTTP RFC를 참고하자. 그 중에 GET과 POST일 때, Client가 전달한 데이터를 가지고 오는 방법을 알아보자. - GET method HttpServletRequest는 java EE API를 참고하자. 간단하게 이야기 하면 client가 요청한 데이터 뿐만 아니라 header 정보도 함께 알 수 있다. GET method 이므로 http://localhost:8080/dotori/?id=abc123&userName=dotori 로 요청하면 query의 id값와 userName이 출력되는 것을 볼 수 있다. 다른 방법으로, 어노테이션을 사용하는 방법이 있다. 동일한 동작을 하지만 어노테이..
Client의 요청이 들어오게되면 Controller에서 가장 먼저 로직이 실행되게 된다. 컨트롤러 작업이 마췬 뒤, 컨트롤러의 return된 view 페이지로 데이터가 전달됩니다. 기본 생성되는 컨트롤러를 살펴보자. @Controller public class HomeController { private static final Logger logger = LoggerFactory.getLogger(HomeController.class); /** * Simply selects the home view to render by returning its name. */ @RequestMapping(value = "/", method = RequestMethod.GET) public String home(Loc..

MVC 기반의 spring project를 생성하면 기본적으로 다음과 같은 디렉토리 구조를 볼 수 있다. 가장 먼저 servlet-context.xml에 대해 알아보자. 대체적으로 spring container 설정을하는 파일이다. 어노테이션 사용 가능하도록하는 태그 spring resource path와 범위 설정 때때로 image 혹은 css, js 등과 같은 파일들이 모여있는 resource들을 이 태그를 이용해 적용한다. view역할을 할 파일들의 위치 및 범위 설정 태그를 사용하여 path와 파일명을 지정할 수 있다. controller를 찾을 클래스의 기본 패키지 설정 다음은 root-context.xml 파일에 대해 알아보자. 기본 설정은 아무것도 되어 있지 않는다. 왜냐하면 초기에는 사용하..