728x90
반응형

전체 글 230

[KH정보교육원 당산] 76일( JPA )

ORM : Object Relation Mapping (객체 관계 매핑) 객체는 객체대로 설계하고, 관계형 데이터베이스는 관계형 데이터베이스대로 설계한다. ORM 프레임워크가 중간에서 매핑해준다. 대중적인 언어에는 대부분 ORM 기술이 존재한다. ORM은 객체와 RDB 두 기둥 위에 있는 기술이다. JAP : Java Persistence API 자바 ORM 기술에 대한 표준 명세로, JAVA에서 제공하는 API이다. 스프링에서 제공하는 것이 아님! 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 여기서 중요하게 여겨야 할 부분은, JPA는 말 그대로 인터페이스라는 점이다. JPA는 특정 기능을 하는 라이브러리가 아니다. 스프링의 PSA에 의해서(POJO를 사용하면서 특..

[KH정보교육원 당산] 75일(AJAX - To-Do-List )

어제 했더 예제의 연속 main.jsp 나의 해야할 일들 TODO : 해야 할 일 ${todo.title} 등록날짜:${todo.regdate}, ${todo.name}, 우선순위${todo.sequence} > DOING : 현재 하고 있는 일 ${todo.title} 등록날짜:${todo.regdate}, ${todo.name}, 우선순위${todo.sequence} ☞ DONE : 작업이 완료된 일들 ${todo.title} 등록날짜:${todo.regdate}, ${todo.name}, 우선순위${todo.sequence} main.jsp에서 AJAX를 통하여 값을 조회하여 화면에 출력할 것이다. $(function(){ buttonEvent(); function buttonEvent(){ $("..

[KH정보교육원 당산] 연습문제9 (인터페이스 구현)

1. Filter란 무엇인지 서술하세요. => HTTP 요청과 응답을 변경할 수 있는 재사용 가능한 코드, 객체 형태로 존재하며 클라이언트에서 오는 요청과 최종 자원사이에 위치하여 클라이언트의 요청 정보를 알맞게 변경할 수 있다. 2. AJAX란 무엇인지 서술하시오. => 브라우저가 가지고있는 XMLHttpRequest 객체를 이용해서 전체 페이지를 새로 고치지 않고도 페이지의 일부만을 위한 데이터를 로드하는 기법, Javascript를 사용한 비동기 통신, 클라이언트와 서버간에 XML 데이터를 주고받는 기술이다. 3.JSON이란 무엇인지 서술하시오. => 데이터를 저장하거나 전솔할 때 많이 사용되는 경량의 DATA교환형식, JSON은 데이터 포맷일 뿐이며 어떠한 통신 방법도, 프로그래밍 문법도 아닌 단..

[KH정보교육원 당산] 74일 (Spring흐름 및 Ajax를 활용한 To-Do list)

Springframework 에서는 5개의 XML 파일을 다루게 된다. 또한 이번 프로젝트에서는 Mybatis를 사용함으로써 2개의 XML파일이 추가된다. 프로젝트를 생서하면 자동으로 만들어지는 pom.xml / web.xml / root-context.xml / servlet-context.xml / log4j.xml Mybatis를 사용하기 위한 mybatis-config.xml / Mapper.xml 프로젝트 구조) src/main/java : 개발되는 Java 코드 src/main/resources : 서버가 실행될 때 필요한 파일들 (Configuration / Mapper / DataSource.properties) WEB-INF/spring : 스프링 설정 파일 WEB-INF/views : ..

[KH정보교육원 당산] 73일( Spring - Mybatis )

myBatis 플러그인 다운로드 [help] -> [eclipse maketplace] -> mybatis 검색 -> MyBatipse 1.2.4 다운로드 파일을 새로 추가할 때 mybatis 폴더가 생기고 안에 mybatis mapper가 있으면 성공적으로 플러그인 설치 완료 기본형식 // 선언부 // 문서 타입 mapper xml 파일을 만들면 이렇게 되어있다. board-mapper.xml SQL 문 SQL 문 SQL 문 SQL 문 => 각 태그에는 id 속성을 이용하여 구분(단 id값은 유일한 값으로 설정) 자바 코드에서는 mapper의 namespace을 이용하여 각각의 id에 접근하여 SQL문을 실행한다. 다만 실제 실행은 myBatis의 내장 메서드가 수행한다. 각 태그에서 반환타입을 설정할..

[KH정보교육원 당산] 73일 (Spring - 파일업로드, 다국어처리, 데이터 변환)

파일업로드의 경우는 JSP파일 내에 기존 코드 처럼 form태그 내의 enctype 속성을 추가하고, 멀티파트 형식인 mulitipart/form-data로 지정, 또한 input 태그의 타입은 file로 하여 파일을 선택할 수 있는 화면을 구성한다. 파일의 값이 넘어갈때는 사용자와 관련된 데이터는 VO의 멤버 변수로 생성되어있기 때문에 정상적으로 넘어가지만, file명은 따로 생성하지 않았기 때문에 값을 전달해도 받을 수가 없다. 그렇기 때문에 기존의 BoardVO 클래스에 uploadFile 변수를 추가한 후에 마찬가지로 getter/setter를 생성해 준다. 파일을 사용하기 위해 FileUpload라이브러리 추가 pom.xml에 해당 코드를 추가하여 라이브러리를 다운 받는다. commons-fil..

[KH정보교육원 당산] 72일 ( 어노테이션 방식)

어제 완성했던 XML방식의 Spring MVC를 이번에는 어노테이션 방식으로 변경 어노테이션을 사용하는 이유는 XML문서에 대한 과도한 설정을 방지하기 위해서 사용한다. 먼저 XML문서에서 context xml namespace를 추가한 후에 base-package지정 xmlns:context="http://www.springframework.org/schema/context" command객체 흐름) 클라이언트 요청(파라미터값으러 넘어감) -> Spring Container -> Command -> 해당 파라미터 보유한 VO클래스 검색 -> VO클래스 이용하여 VO객체 생성 -> VO객체의 setter메서드를 이용하여 값 저장 -> VO 객체를 해당 메서드의 매개변수한테 전달 **** 전달되는 파라미터..

[KH정보교육원 당산] 71일 (model2 -> MVC 아키텍쳐)

model1, 2는 기존에 해왔던 실습 예제와 똑같은 방식이다. 간단한 게시판 만들기 코드를 model1으로 시작해서 그 코드를 가지고 model2로 바꿔본 후에 Spring 이 어떤식으로 구동하는지 알기 위하여 필요한 클래스를 직접 만들어서 그 구조를 익혀보자. 먼저 클라이언트가 요청을 하게 되면 그 요청을 DispatcherServlet에서 받게 된다. DispatcherServlet은 다시 Controller에게 요청을 하는데 이때 HandlerMapping에 클라이언트가 요청을 처리할 Controller를 매핑하고 ViewResolver 클래스를 통하여 JSP경로를 완성시킨다. DispatcherServlet @WebServlet(name = "action", urlPatterns = { "/*d..

[Spring] Transaction

Transaction 트랜잭션(Transaction, 트랜잭션)이란, 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다. 간단하게 말해서 아래의 질의어(SQL)를 이용하여 데이터베이스를 접근 하는 것을 의미한다. SELECT INSERT DELETE UPDATE 작업단위는 많은 질의어 명령문들을 사람이 정하는 기준에 따라 정하는 것을 의미한다. 게시판 사용자는 게시글을 작성하고, 올리기 버튼을 누른다. 그 후에 다시 게시판에 돌아왔을때, 게시판은 자신의 글이 포함된 업데이트된 게시판을 보게 된다. 이러한 상황을 데이터베이스 작업으로 옮기면, 사용자가 올리기 버튼을 눌렀을 시, Insert 문을 사용하여 사용자가 입력한 게시글의 데이터를 옮긴다. 그 후에, 게시판을 구성할 데이터를 다시 ..

개발노트/Spring 2021.06.21
728x90
반응형