1. jdk-8u60-windows-x64.exe 파일 다운로드하기 >원하는 버전과 사양에 맞게 다운로드 한다. 나는 학습하기 편한 버전으로 다운로드 했다. ★ Java-JDK 다운 링크 : ORACLE
맥북에서 oracle11g를 사용하기 위해서는 docker를 이용해야한다.\[도커 설치페이지 바로가기](https://docs.docker.com/docker-for-mac/install/- stable : 좀 더 안정화 된 버전edge : 좀 더 새로운 기능
GET 방식 : 서버에 있는 정보를 가져오려고 설계된 방법 최대 240byte까지 데이터를 전달할 수 있다.'?' 이후의 값은 서버에서 QUERY_STRING을 통해 전달 '&' 는 여러 속성 값을 전달할 때 연결해주는 문자열.소량의 데이터를 넘길 수 있다.아이디, 패
1. 지시어 해당하는 JSP파일의 속성을 기술하는 곳. JSP 컨테이너에게 해당 페이지를 어떻게 처리해야 하는지 전달하기 위한 내용 page, include, taglib 등 각각의 속성이 다르다. 1-1. page 지시어 JSP 페이지를 컨테이너에서 처리하는 데 필
우편번호 검색만들기 -- > '다음 API'검색 후 공공API를 사용해 쉽게 넣을 수 있다.1)2)3) 값을 넘기기위해서 우편번호, 도로명주소, 상세주소 부분을name지정해준다.4) 값받아와서 저장하기
출처: /정보처리산업기사\_2차%20평가문제(공개용)-HRDKOREA 스타일 부분은 basic.css로 따로 분리한 후 top.jsp 파일의 head부분에 링크했다.앞으로도 계속 반복적으로 사용될 윗부분과 아랫부분의 코드 중복을 줄이고 코드의 재사용을 위해서 top.
출처 HRDKOREA정보처리산업기사\_2차%20평가문제(공개용)회원가입시 정보를 받아올 수 있는 form.jsp파일을 만든다. table을 생성할 때, table의 디자인은 css파일에 추가한다.데이터베이스에 접속해서 연결하기.Connection 완료 후 Prepare
출처 정보처리산업기사\_2차%20평가문제(공개용) HRDKOREAwhile문 밖에 table tag를 열고 닫는다.데이터를 받아서 목록을 만드는 부분은 while(rs.next())구문을 이용해서 데이터를 찍어낸다.<%=rs.getString %>을 통해서 DBM
회원등록 페이지에 접속하면 자동으로 직전회원번호+1 값으로 자동생성처리한다.데이터베이스에 저장되어있는 회원번호의 최대값을 가져와야 한다. 따라서, DBMS에 연결해준다.select 쿼리를 통해서 데이터를 검색하고 값을 받아온다.max를 이용해 받아온 값에 +1 을 해주
[회원정보 수정페이지 만들기] > - 회원번호부분에 edit.jsp를 링크해준다. 회원번호를 클릭하면 수정하는 창으로 이동한다. > - request.getParameter로 custno를 받아준다. sql문에는 받아
회원번호는 6자리 숫자이므로, 6자리 숫자가 아닐경우 경고창이 뜨는 효과를 넣는다.JavaScript 사용script tag 안에 function을 만들어준다. form에 이름을 'f1'로 부여한다. if문을 사용해서 f1에 custno 값의 length가 6이 아닐경
[상품목록 자료실 만들기]
페이지 나누기를 할 데이터를 생성해준다.Random 을 이용해서 난수발생, 난수를 이용한 배열값을 쿼리로 INSERT했다.Math.Random()은 0.0~1 사이의 double난수를 발생시키기 때문에, 10을 곱했다. 또한, 형은 (Int)로 지정해주면서 뒤에 들어올
JSP, Spring : WAR 파일 생성Spring Boot : jar 또는 war파일 생성tomcat의 환경설정은 2가지가 있다.이클립스 내부의 tomcat : 개발을 위한 부분c드라이브의 tomcat : 배포를 위한 부분HTML과 JSP의 차이HTML은 웹에서
서버에 저장개인, 웹 브라우저당 1개씩 생성되어 웹 컨테이너에 저장된다.웹 브라우저와 웹 서버의 상태 유지가 훨씬 안정적이고 보안상의 문제 해결가능.세션의 값을 보낼 때는 세션의 값을 받을 때는 세션 속성 제거세션의 모든 속성 제거login.jspform을 사용하여 s
링크주소에 tab=테이블명 으로 매개변수를 던진다.링크주소에서 던진 매개변수를 slist.jsp에서 받고,session에 넣는다.session에 넣은 값을 session으로 받아서 저장한다.select 쿼리에 session에서 받아둔 테이블명을 넣는다.이때 띄어쓰기에
JavaBean을 사용하는 가장 큰 이유는 '유지보수'의 효율 때문이다.javabean을 만들기 위해서는 JSP파일을 생성했던 WebContent 폴더가 아니라사진과 같이 Java Resources의 src에 java 프로젝트를 만들어준다.프로퍼티를 넣어준다.프로퍼티
Model - Controller - View■ Model 영역 애플리케이션에 비즈니스 로직과 사용되는 데이터를 다루는 영역이다. 일반적으로 비즈니스 데이터는 데이터베이스에 의해 관리되고, 그 데이터를 다루는 연산은 SQL문을 통해서 구현된다.■ View 영역 최종 사
컨트롤러와 링크할때는 a href="/프로젝트명/컨트롤러명" 으로 링크한다.java.sql.\*를 import해준다.만들어둔 dbconnect.java 파일의 객체를 만들어주고db.으로 호출 후 getConnect()메소드를 실행해서 Connection을 해준다.이제
<c:forEach>는 List, 배열 요소를 순서대로 반복해서 처리할 수 있는 태그 $부분 : EL출력문<c: 부분 : JSTL문법부분JSTL을 사용하면 forEach에서 받아오는 list값이 필요하다.즉, controller를 이용해서 값을 넘겨주어야한다
누르면 페이지가 넘어갈 수 있도록 링크를 걸어준다.링크를 연결할 때, id값을 함께 넘겨준다.list.jsp에서 링크로 넘겨준 매개변수를 받아서 String id로 저장한다.값을 저장하고 불러올 공간을 만든다.생성해둔 DTO Member객체를 생성하고,생성한 객체에서
DTO, DAO, Service, Controller, DBConnect 등 필요한 패키지와 클래스를 생성한다.jsp를 이용해서 form의 형태를 가진 페이지를 만든다.데이터베이스 연동을 해야 회원등록시 데이터베이스로 저장할 수 있다.따라서, DBConn.java파일을
WebContent에 회원목록을 보여주는 페이지의 틀을 만들어둔다.두가지 방법이 있다.1\. 직접적으로 DAO를 사용하기2\. EL/JSTL을 사용하기 - Controller사용 필요직접적으로 DAO를 사용하기Interface에 메서드 만들기Impli에 implemen
거주도시 부분에 링크를 거는데,링크로 custno값을 함께 넘긴다.MemberVo 객체를 만들고 MemberVo객체에 웹에서 받아온 custno값을 넣어둔다.setCustno!MemberDeleteService 인터페이스에는 호출될 메서드를 정의해준다.정의된 메서드 안
회원목록 아래쪽에 검색창을 만들고,action을 통해서 SelectController로 값이 잘 넘어가는지 확인한다.검색이 잘되는지 확인하기 전에 정상적으로웹에서 값을 잘 받아오는지 확인이 필요하다.정상적으로 값을 받아왔다면 아래와같이 콘솔창에 나타난다.웹에서 받아넣은
1. 회원정보 수정하기 페이지 틀 만들기 정보를 불러오고 수정할 틀을 웹페이지에 만들어준다. input태그의 value부분을 일단 임의로 오류만 나지 않도록 넣었다. 2. EditDao만들기 만들어둔 form에 클릭한 사람의 저장되어있는 정보를 나타내야한다. 프로그
edit.jsp에서 input text한 값을 받아서 MemberVo에 넣어줄 Controller가 필요하다.Controller를 만들어서 각각의 값을 set한다.Controller에서 호출받고 Dao를 호출해줄 Service파일을 만들어준다.메서드는 return형이
MemberService.java (Interface)MemberServiceImpl.java (Class)다른파일에서 파일이 삭제되어 생기는 오류 해결하기MemberDao.java (Interface)MemberDaoImpl.java (Class)DaoImpl에서는
기존에 만들었던 MemberVo의 속성외에 PriceSum부분이 추가된 것을 볼 수 있다.JOIN문을 이용해 뽑아낸 칼럼을 저장할 DTO를 새로 만들어 줘야한다.또한, 값을 받아오면 출력할 테이블을 JSP로 먼저 구성했다.인터페이스 :Implements : 조인문을
상품을 등록할 수 있는 form을 만든다.action을 Controller로 넘기도록 설정하고form tag에서는 ?로 값을 넘길 수 없으니, input hidden을 이용해 flag를 만들어 값을 넘겨준다.JSP에서는 enctype을 multipart로 잡았으면 값을
인터페이스 : List 로 리턴형을 만든다.:List의 모양이 ProductVo 라고 지정했다.기존에 insert메서드를 만들었던 DAO에 이어서 추가했다.(하나의 파일로 만들예정) while(rs.next())를 이용해서 rs에 값이 있을때까지 계속 반복한다.rs에서
진행과정 1\. pcode이용 파일명 return2\. 파일명이용 img파일 삭제3\. pcode이용 record삭제상품이미지를 클릭하면 pcode를 받아서 img파일을 먼저 삭제하고 레코드를 삭제한다.상품이미지부분에 Controller로 링크를 걸고 링크를 클릭했을때
DBCP API관련 라이브러리 총 3개ORACLE을 이용하기위한 jar파일 1개붙여넣을 소스 코드와 아래쪽에 넣는 방법을 따로 적었다.Eclipse의 Server폴더> Tomcat폴더 > server.xml > GlobalNamingResources 줄을 찾는다.해당부
만들어준 해당 테이블에 레코드가 랜덤으로 들어간 것을 볼 수 있다.rownum 기준으로 10번부터 30번까지의 레코드가 출력된 것을 볼 수 있다.BigListController까지 연결완료필요한 레코드를 만들고 getter/setter를 추가한다.일단 ORACLE쿼리를
JSTL if문을 사용해서 list.jsp에 배경색을 홀수줄 짝수줄 다른색으로 넣도록 만든다.JSTL은 if만 가능하고 else는 사용이 불가능하다.JSTL을 이용해서 받아온 idx값을 찍고 -10 /+10을 이용해서 idx값을 웹으로 다시 던지도록 링크를 걸어준다.C
1. 페이지나누기 8가지 값 가져오기 > 1:페이지사이즈 2:페이지List Size 3:총레코드 수 4.총페이지수 5.현재레코드 6.현재페이지 하단 가로 시작페이지 하단 가로 마지막페이지 이전 게시물에서 저장했던
eclipse의 help > Eclipse Marketplace 메뉴를 이용해 검색 후 플러그인이 있다면 설치할 수 있지만 찾지 어려운경우help > Install New Software 로 들어가서 직접 설치할 파일의 URL을 넣어 설치할 수 있다.설치할 URL :
Spring에서 Java파일은 해당경로에 생성한다. 1. 결합도 프로그래밍은 결합도를 낮게 응집도를 높게 진행해야한다. 결합도가 높은 프로그램은 유지보수가 어렵다. 기능은 똑같은데 두가지의 브랜드 제품을 사용할 수 있는 메서드를 다르게 작성했다. ![](http
Java파일은 src/main/java JSP파일은 webapp에 생성src/main/resources 는 컨테이너src/test/java 는 테스트파일Spring Bean Configuration file 생성NameSpaces 부분에 체크하는 것은 기존에 JSTL을
자바 웹개발 JDK Eclipse Tomcat DBMS (ORACLE, MySQL, H2...) 어제 공부한 내용 복습 1. bean 엘리먼트 속성 1-1. init-method : Servlet 컨테이너는 생성자로 Servlet 객체의 멤버변수를 초기화할 수 없다
스프링 프레임워크는 XML 설정이 매우 중요하다. Setter 인젝션은 Setter메서드를 호출하여 의존성 주입을 처리한다.Setter인젝션은 property를 이용한다.생성자 인젝션은 생성자의 매개변수가 추가되어야하고,Setter인젝션은 Setter메서드가 추가되어야
어노테이션은 자바소스에 명시해야하는 부분이 있기때문에, 자바소스를 건들지 않고 교체할 수 없다.XML은 설정에 대한 부담이 존재한다.따라서, 장단점이 상충하는 어노테이션과 XML을 병행사용한다.TV 객체는 @Component를 통해 객체를 scan생성Speaker객체는
0. 프로젝트에 엑스표가 뜰 경우 지금은 warning 빼고 오류를 해결한 상태라서 보이지 않지만, 엑스표가 있을때는 오류메세지를 확인할 수 있었다. 내 오류는 자바버전이 맞지 않는 오류였다. pom.xml에서 컴파일러 버전이 설치된 자바버전과 맞지 않았다. 그부분을
https://mvnrepository.com/ 위의 사이트로 접속하면 레포지토리를 확인할 수 있다.이렇게 원하는 버전에 맞는ojdbc를 받아서 이용해주면된다. H2에 이어 ORACLE도 잘 입력되는 것을 볼 수 있다.프로젝트 Export 진행하기원하는 프로젝
0. 구조 다시 만들어보기 1. Update DAO에 UPDATE 쿼리문 넣기 ServiceImpl 에서 DAO 불러 실행하기 ServiceClient 에서 14번 데이터 수정하기 ![
IoC가 결합도와 관련된 기능이라면, AOP는 응집도와 관련된 기능메서드마다 공통으로 등장하는 로깅이나, 예외, 트랜잭션 처리같은 코드들을 '횡단관심'이라고함.사용자의 요청에 따라 실제로 수행되는 핵심 비즈니스 로직을 '핵심관심' 이라함.pom.xml 수정하기 appl
인터페이스와 클래스 등 작성할 프로젝트의 전반적인 구조를 잡는다.pom.xml 파일에 작성해서 maven에 jar파일을 넣어준다.
GoF디자인 패턴 중 템플릿 메서드 패턴이 적용된 클래스템플릿 메서드 패턴 : 복잡하고 반복되는 알고리즘을 캡슐화해서 재사용하는 패턴으로 정의할 수 있음. 이것을 이용하면 정형화된 반복해서 사용하는 알고리즘에서 유용JDBC처럼 코딩순서가 정형화된 기술에서 유용하게 사용
JdbcTemplate 를 bean으로 등록하고 의존성 주입을 처리한다.일반적으로 JdbcDaoSupport 클래스 상속을 통한 방식보다 이 방식을 더 많이 사용한다.data연결정보가 들어있는 dataSource bean을 jdbcTemplate bean을 만들어 의존
여기까지 진행이 완료되었다면 사용자의 의도대로 메서드를 골라 데이터를 조작할 수 있는 구조가 어느정도 틀이 잡힌 상태
Model 1 아키텍처는 JSP와 JavaBeans만 사용하여 웹을 개발하는것Model 1 구조는 JSP 파일에서 Controller 기능과 View 기능을 모두 처리한다.JSP 파일에 자바코드와 마크업 코드들이 뒤섞여 유지보수가 어렵다.로그인정보를 사용자가 입력할 수
글삭제, 글등록, 글목록 을 실행할 수 있는 링크를 적어준다.글삭제 기능의 경우 삭제할 seq를 받아야 실행할 수 있기때문에 링크에 seq를 함께 넘겨준다.deleteBoard_proc.jsp 파일을 설정한다.response.sendRedirect를 이용해서 삭제가 완
작고 단순한 시스템을 개발하거나 개발 인력이 충분하지 않을 때는 구조가 단순한 Model 1 아키텍처를 사용하기도한다.하지만, 시스템의 규모가 크고 기능이 복잡한 엔터프라이즈 시스템을 개발하면 Model 1 아키텍처는 적합하지 않다.Model 1의 문제점을 해결하기 위
MVC 2아키텍처는 하나의 Controller에서 모든 파일을 분기처리한다.이것은 유지보수와 개발을 어렵게 만든다.즉, 지금까지 연습한 MVC 2아키텍처의 Servlet을 좀 더 쪼갤 예정이다.프레임워크에서 제공하는 Controller를 사용하면우리가 직접 Contol
struts를 비롯한 대부분의 MVC 프레임워크는 비슷한 구조를 가졌다.Spring 프레임워크와 구조가 비슷한 MVC프레임워크를 연습했고이번에는 Spring MVC를 적용해보자Spring MVC 프레임워크 와 MVC 프레임워크가 다른점은 우리가 직접 Dispatcher
HandlerMapping의 종류SimpleUrlHandlerMapping : URL과 컨트롤러 이름을 직접 매핑 한다.BeanNameUrlHandlerMapping : URL과 일치하는 이름을 갖는 빈을 컨트롤러로 사용한다.ControllerClassNameHandl
Test하기1\. BoardVO2\. JDBCUtill3\. BoardService 4\. BoardDAO5\. BoardServiceImpl 6\. BoardDAOImpl 1번째. index2번째. 입력하기(insert)3번째. 목록보기상태에서 삭제하기 (select
스프링은 어노테이션 기반 설정을 제공함으로써 과도한 XML 설정으로 인한 문제를 해결함.HandlerMapping, Controller, ViewResolver 같은 여러 클래스를 등록해야하므로 어노테이션 설정을 최대한 활용하여 XML설정을 최소화xml파일의 bean을
사용할 테이블을 만들자 (ORACLE DB)Spring 프로젝트를 만든다!서버가 잘 돌아가는지 TEST!pom.xml 설정하기web.xml 설정하기presentation-layer 설정하기설정 확인하기알맞은 코드를 작성해서 실행테스트를 진행한다. 이번 게시물은 복습게시
Command 객체에 저장된 데이터를 JSP에서 사용하려면 "${}"구문을 이용한다.SchoolVO에 있는 변수명과 Command객체가 자동연결된다.Controller에서 SchoolVO에 id값을 직접입력해본다.JSP파일에서는 schoolVO. 으로 앞글자를 소문자로
사용자가 서버에 요청을 전송하면 모든 요청을 서블릿 컨테이너가 생성한 DispatcherServlet이 받는다. DispatcherServlet이 Controller에게 요청을 전달하고 Controller가 매개변수를 통해 전달된 DAO객체를 이용해 사용자가 요청한 로
1. Spring JDBC Template 사용하기 > 참고자료: 1.절차 1) DB와의 연결 : DataSource 2) 명령문 실행 : JdbcTemplate 3) 결과를 받아옴 : RowMapper > DataSource 1) org.springfra
2-layer + JDBCTemplate 를 모두 적용해서 홈페이지를 만드는 프로젝트를 시작한다.환경설정 및 서버설정을 완료하고Test.jsp파일을 만들어서 서버구동에 문제가 없는지 확인한다.Tomcat Module 변경presentation-layerbusiness-
이제 본격적으로Spring Framework를 이용해서 쇼핑몰 회원관리 홈페이지를 구현해보자 SELECT \* FROM member_tbl_02; SELECT \* FROM money_tbl_02; index.jsp기존 JSP 프로젝트에서는 <%@ incl
목록을 볼 수 있는 JSP페이지를 만든다.ModelAndView 가 아니라 Model형을 선언하고view는 String으로 따로 return하는 방식을 택했다.Service: dao를 호출하고 dao의 return을 받는 형식DAO: 실질적인 Data Access 코드
list의 custno부분에 a href 태그를 이용해서 링크를 걸어준다.이때, custno를 넘겨받을 수 있도록 처리한다. 매개변수가 int형 이기때문에 vo에서 getter를 통해 custno만 받아 넘긴다.delete가 모두 실행된 후에는 member_list.d
회원 매출을 조회하는 페이지를 화면에 구현할 틀만 만들어둔다.DAO를 거쳐 데이터베이스를 처리한 후 표기해야하는 목록페이지의 링크를 정리해준다.JOIN문을 이용한 data 조회 쿼리 테스트하기잘 조회된다면 준비해두고 다음 작업을 진행한다!프로젝트를 구성한다.Servic
★ 중요!method는 POST로enctype은 multipart/form-datainput type은 filepom.xml 에 commons-fileupload 라이브러리를 추가한다. commons-dbcp 아래에 추가했다.파일 업로드 관련 라이브러리는 추가했다면,다
자료실 복습을 위한 간단한 테이블을 만든다.test JSP파일test .do주소 확인web.xmlpom.xmlpresentation-layer.xml (자료실정보 포함): Controller가 있는 파일과 파일을 주고받을 수 있는 mutipartResolver객체를 설
jpg 파일만 업로드 가능하도록 js function을 설정하고png파일을 업로드해본다.png파일의 업로드가 거절되어 alert창이 뜨는 것을 확인할 수 있다.대용량 파일을 이용해 파일사이즈를 체크테스트하기위해서잠시 파일종류체크설정을 제거한다.이후 대용량의 파일을 업로
삭제하기를 구현해보자: 가입일자를 클릭하면 회원번호를 링크로 넘겨서 저장했던 파일을 지우고, 레코드도 삭제한다.이때 처음에 form.jsp 링크를 걸어 list.jsp를 뽑으려했는데method가 POST방식이 아니라서 오류가 난다는 에러메시지가 떴다.그래서, Contr
Apache에서 Ibatis라는 이름의 프레임워크로 탄생2010년에 Ibatis가 Apache에서 탈퇴하여 Google로 넘어가면서 이름이 Mybatis로 변경한두 줄의 자바 코드로 DB연동을 처리한다.SQL 명령어를 자바 코드에서 분리하여 XML 파일에 따로 관리한다
가장먼저 web.xml이 applicationContext.xml(비즈니스) 와 presentation-layer.xml(뷰)xml파일을 실행한다.이때, applicationContext.xml파일안에는 JDBCTemplate을 설정했던것처럼 Mybatis 설정과 db
selectOne() : 하나의 데이터를 검색하는 SQL구문을 실행할 때 사용한다.selectList() : 하나 이상의 데이터 (여러개의 데이터)가 검색되는 SQL구문을 실행할 때 사용한다.insert(), delete(), update() : 각각의 쿼리를 실핸하는
지금까지 진행한 DAO클래스 구현 방법1은 SqlSessionDaoSupport 클래스를 상속해서 구현하는 것이다.이번에는 DAO클래스 구현 방법2를 실행해본다.두번째 방법은 SqlSessionTemplate를 JDBCTemplate와 비슷한 방법으로 만들어 사용하는것
board-mapping에 조건별로 SQL구문을 만들어준다.DAO에서 return에 조건을 걸어서 조건에 맞는 SQL구문의 결과를 return한다.JSP 파일에 검색창을 추가해준다.검색창에 설정한 ch1, ch2 VO를 설정해준다.like문을 이용해서 검색조건을 불러오
1. pom.xml 2. web.xml 3. Presentation-layer.xml 4. applicationContext.xml 5. database.properties (오라클기준) 6. Mybatis Generator Config File 기본틀
database.properties (오라클기준)applicationContext.xmlServiceImplDAOImplController
새로운 프로젝트를 생성한 후 properties에서 환경설정을 진행한다.JAVA, Dynamic Web Module, JPA에 체크하고 맞는 버전으로 설정한다.이때, Apply가 비활성화 되는데,위쪽의 Type을 Disdable Library Configuration
0. SHA256.java 와 BCrypt.java (해시함수) 암호가 필요한 개인 정보 비밀번호 바이오정보 주민등록번호 ( 2014년 8월 7일 부터 수집금지) 신용카드 번호 계좌번호 여권번호 운전 면허번호 외국인 등록 번호 등 이면 이들 정보들은 데이터베이스에 저
회원가입시 입력한 비밀번호를 암호화해서 저장하도록 처리한다.암호화된 비밀번호를 비교하고 비밀번호가 일치할 경우 세션에 저장한다.비밀번호를 수정하고 암호화까지 완료한다.