본문 바로가기

웹_프론트_백엔드/JAVA프레임윅기반_풀스택

(82)
2020.07.06 1. STS19_REST, REST(AJAX + SPA) 게시판 만들기 1) 사전 세팅 ** [src/main/java] com.lec.sts19_rest.board.controller > BCommand.java package com.lec.sts19_rest.board.controller; import org.apache.ibatis.session.SqlSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Controller; import org.springframewo..
2020.07.03 1. 메이븐(Maven) = 빌드툴 (Build Tool) : Java 프로젝트를 만들때 가장 사용하는 빌드툴, 복잡한 빌드를 다루기 쉽게 만든 툴이다. 2. 프로젝트 빌드 과정 : 프로젝트 생성 > 라이브러리 설정 > 코드 작업 > 컴파일 > 테스트 > 패키지 > 배포 > 레포팅(문서) ** 개발과정에서는 이 과정이 자주 반복되기 때문에 이를 효율적으로 개발할 수 있도록 도와주는 것이 빌드도구(빌드툴)이다. ** 이때 주의할 점, 이클립스는 빌드툴이 아닌 IDE이다. [IDE, Integrated Development Envirionment] 통합 개발 환경 3. 이클립스가 제공하지 않는 메이븐(Maven) 만의 기능 ** 프로젝트 생성 : 사용자 정의 프로젝트 ** 라이브러리 설정 : 라이브러리 관리..
2020.07.02 1. DAO 메소드에 여러 타입의 매개변수가 있는 경우 : mapper XML에서 @MapperScan, @Param 사용하여 구분할 수 있다. 2. STS15_MyBatis, @MapperScan, @Param 사용 예제 ** [src/main/java] com.lec.sts15_mybatis.board.beans > IWriteDAO.java package com.lec.sts15_mybatis.board.beans; import java.util.List; import org.apache.ibatis.annotations.Param; import org.mybatis.spring.annotation.MapperScan; @MapperScan public interface IWriteDAO { pub..
2020.07.01 1. MyBatis의 Mapper(Java 객체와 SQL 연동) : MyBatis에서 Mapper 역할을 하는 매핑파일(XML)은 데이터 조작을 하는 객체와 쿼리(SQL)를 연결(mapping), 데이터 조작을 하는 객체는 일반적으로 DAO객체가 그 역할을 하고 있다. ** DAO는 인터페이스로만 주어지고, MyBatis가 DAO를 구현해준다. ** 는 어느 DAO에 매핑될지 지정, 는 여러 으로 구성 가능 ** 각 은 DAO의 어느 메소드에 매핑될지 지정 2. MyBatis x 스프링 설정 파일 : MyBatis를 스프링과 같이 사용하려면, 컨텍스트(컨테이너)에 두 가지 필요 1) SqlSessionFactory 정의 : MyBatis 스프링 연동 모듈에서는 SqlSessionFactoryBean을 설..
2020.06.30 1. STS13_JDBC, spring-jdbc 버전 View, Update, Delete ** [src/main/java] com.lec.sts13_jdbc.board.beans > BWriteDAO.java package com.lec.sts13_jdbc.board.beans; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.List; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.JdbcTemplate; import org.sp..
2020.06.29 1. 기존 배운 것에 추가, request parameter를 받는 방법 @PathVariable : request parameter를 GET 방식의 query string이 아닌 URL 경로에 담아서 전달할 수 있다. 2. JSP MVC 모델 2의 경우 컨트롤러에서 수행하는 것을 Command 객체라 불렀으나 스프링에서는 그와 같은 역할을 하는 객체를 Service라고 부른다(두 용어 혼용 가능) 3. 스프링에서 커맨드 객체는 parameter 받기 위한 bean객체이다. 4. STS11_RequestParameter ** [src/main/java] com.lec.beans.WriteDTO > HomeController 서블릿 package com.lec.sts11_param; import java...
2020.06.23 1. Maven 빌드시 손상된 Jar 파일 확인(corrupted jar check), 손상된 jar 파일 다운 ** com.jar.validator > JarValidator.java package com.jar.validator; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLDecoder; import java.nio.file...
2020.06.22 1. Spring AOP(Aspect Oriented Programming) 1) 핵심관점(=핵심기능) : 객체지향 프로그래밍에서 각 객체안에는 중요한 기능들로 구성되어 있고 AOP에서는 이러한 주요기능을 핵심관점(=핵심기능)이라고 한다. 2) Cross-Cutting Concern(횡단관점, 공통기능) : 핵심기능들을 잘 살펴보면 각 핵심기능들 전반에 걸쳐있는 공통적인 기능들이 있고 AOP에서는 이러한 공통적인 것들을 횡단관점, 횡단관심사, Aspect라고 한다. 2. AOP(Aspect Oriented Programming)의 목적 : 프로그래머 들의 관심(concern)사를 핵심기능으로부터 분리 즉, Separation of Cross-Cutting Concern 결국, AOP는 개발자의 염두(co..
2020.06.19 1. 의존 자동 주입(@Autowired 사용), 자동 주입(Autowired) : 컨테이너 안에 이미 생성된 빈(bean)객체와 이를 의존하는 다른 빈 객체들로 하여금 굳이 나 등의 설정 없이도 자동적으로 참조(autowire)하여 주입될 수 있게 하는 것 2. Autowired를 구현하는 방법 1) 스프링 XML 설정 파일에 설정 추가 2) 자동주입 대상에 @Autowired 애노테이션 사용(자동주입 대상 : 생성자, 멤버 변수, setter 메소드) 3. @Autowired는 타입이 일치하는 bean과 가능..!! 4. @Qualifier : 동일한 타입의 복수 개 Bean 객체에 대한 @Autowired는 모호함(ambiguity)하다, 모호함을 없애기 위해 사용, 사용할 의존 객체를 선택할 수 ..
2020.06.18 1. Java EE(Java Platform, Enterprise Edition) : Java 를 이용한 서버개발 플랫폼 2. WAS(Web Application Server) : Java EE 스펙에 따라 제품으로 구현한 것을 웹 애플리케이션 서버 또는 WAS라 한다. [자바 기반이나 Java EE 비준수 웹 애플리케이션 서버] 1) 아파치 톰캣(Apache Tomcat) : 오픈 소스 재단 아파치 소프트웨어 재단의 오픈 소스 소프트웨어 2) 레진(Resin) : Caucho사의 제품 4) 제이런(JRun) : 매크로미디어사의 제품. 3. 컨테이너(Container) : 애플리케이션과 그 의존성들(dependencies)을 독립된 단위로 묶어 격리, 어디서든 실행 가능하게 하는 것. ** JavaEE ..