help-ecplips marketplace!업로드중..sts검색 인스톨 - confirm리이센스 i accepthttps://maven.apache.org/download.cgi 에서 다운 3.8.6 zip파일 - tool폴더에 압축풀기 (이클립스 자동 설치
제어의 역행IoC (제어의 역행)IoC(Inversion of Control)란, 프로그램을 구동하는데 필요한 객체에 대한 생성, 변경등의 관리를 프로그램을 개발하는 사람이 아닌 프로그램을 구동하는 컨테이너에서 직접관리하는 것을 말한다.스프링은 IoC 구조를 통해 구동
프로젝트를 셋팅한 뒤 pakage를 만든다customer.domain : Customer.javacustomer.main : CustomerRun.javacustomer.Service :CustomerServide 인터페이스ServiceLogiccustomer.stor
Spring MVC 프로젝트 생성pom.xml에 ojdbc6, mybatis, mybatis-spring, spring-jdbc, common-dbcp 추가ojdbc6할때에 repositories - repository 추가 후 dependency 작성스프링 프로젝트
web.xml파일안에추가하기여기에 오타가있으면 서버에 오류가 떠서 아예 접속이 안된다!! 주의하기!
@ModelAttribute Member member해당 코드는 Member class를 인스탠스화 하여 member안에 값을 셋팅해주는 코드이다이 코드에서 가장중요한것은 폼에서 입력받은 name값과 vo클래스의 변수명이 같아야 한다는 것이다.tryCatch를 사용하여
정보가 출력될 value는 member에 담길걸 예상해서 member안에 변수명으로 넣어주었다.우편번호와 주소는 Controller안에서 ,로 잘라 전달할것이다.수정할 form주소와 탈퇴 영역이 정해져있다.탈퇴시에는 type을 button으로 지정해야 button이 s
전체 파일pom.xml에서 자꾸 오류가 생겨 접속이 안되어 다시 정리해 올린다.
Mybatice-config.xml에typeAliase 태그를 넣어준다.그럼 Mapper클래스에서resultMap의 type을 alias의 값은 Member로 축약가능하다resultMap이 아니라 resultType을 \_int로 선언해주어야 한다.jdbcTypeNul
60\. 스프링으로 마이페이지 만들기 (velog.io) 에서 만든 페이지의 값을 전송해 회원정보를 수정한다.매개변수와 메소드 return 자료형에 ModelAndView를 선언하였다,modelandview는 이 코드만으로 리턴값을 설정하며 데이터베이스에서 전송한 값을
마이페이지에서 회원탈퇴 버튼을 누르면 회원이 탈퇴되게 한다.회원탈퇴 버튼을 누르면 하단의 js문에 따라 탈퇴하시겠습니까? 창이 나오고 확인을 눌러야 탈퇴 controller로 연결된다.수정페이지와 같이 ModelAndView를 활용하여 리턴과, 넘길값을 지정하였다,탈퇴
textarea에 summernote에서 제공하는 스타일을 만들어 다양한 색이나 글자크기를 지정할수있도록 만들었다실제로 적용해보니 해당태그가 모두 입력된 값이 저장되었다.폼액션은 post이며 submit을 누르면 내가 입력한 글이 저장된다.실제 작성한 테이블의 조건은
오늘이 63일째인데 왜 날짜를 착각했지?c태그가 필요하다WEB-INF/lib 폴더안에 c태그 라이브러리 4개 파일을 꼭 넣자!<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>상단에 c태그 선
페이징은 어렵다 슬프지만 그렇다페이징을 하려면 알아야 할것은 무엇인가?한페이지에 출력할 게시물의 갯수를 정한다한 페이지에 출력할 페이지의 갯수를 정한다.총 페이지 수를 파악한다.현재 페이지를 서버에 알려줘야 한다.서버에서 한 페이지에 출력할 게시물의 수만 넘겨줘야 한다
지난번(https://velog.io/@hana78786/60.-스프링으로-게시물-등록하기)엔 글만 올렸지만 이번엔 파일을 첨부하자!Untitled첨부파일 input태그에 name을 board의 변수명과 다르게했다같게 했더니 계속 오류가 났다form태그에 en
게시판 제목행을 <a href="/board/detail.kh?boardNo=${board.boardNo }"> 연결하였다,/board/detail.kh에 boardNo를 get방식으로 전송하여 detail값을 출력할것을 예상할수있다.데이터베이스에서 출력해줄 상세
왜 아까 게시물 상세 페이지에서는64. spring으로 상세 게시물 보기 (velog.io) board_No를 세션에 넣었을까?하단에 수정, 삭제, 목록 버튼이 있다.지금은 삭제이야기니까 삭제만..삭제버튼을 누르면 remove함수와 연결되는것을 확인할수있다.스크립트를
/board/modifyView.kh 를 겟방식으로 접속하면 해당 폼이 나오도록 만들었다.상세게시물을 볼때 썼던 메소드를 활용하여 board값을 똑같이 가져와 수정페이지에서도 value로 사용하였다. bService.printOneVyNo(boardNo)수정페이지는 게
첨부파일을 체크하기위해 필요한 변수들이 있다. 그 변수들을 hidden을 통해 미리 다 가져와야 한다.<input type="hidden" name="boardRename" value="${board.boardRename }"><input type="hidd
리스트를 출력하는 jsp에 검색창을 만든다.select를 이용하여 전체, 작성자, 제목, 목록을 고르고 text에 입력하면 submit으로 search.kh 컨트롤로로 전송한다.searchCondintion으로 검색 카테고리를 seachValue로 검색어를 contr
해당 검색어가 없었을떄 Controller에서는 bList의 반환값을 null로 할것이기에 c:if문에서 반환값이 비어있을때와 비어있지 않을때를 구분하였다.반환값이 없을때는 데이터가 존재하지 않습니다, 라는 글자만 띄우게 된다.c:if문을 쓰기 위해서는 web-inf\
어차피 두개가 같으니까 가입창만 표시한다.https://www.poesis.org/postcodify/guide/example api는 여기를 이용하였다.예시에 있는대로 우편번호, 검색버튼, 도로명주소, 상세주소에 class와 id를 입력해주고 스크립트와 함수
여기서 말하는 페이지는 게시판에서 3페이지에 있는 게시물을 확인했을때 목록을 눌렀을때도 3페이지로돌아가야 한다는 이야기이다페이지이동하기는 자잘하게 수정할 부분이 많다.일단 2가지로 나누어 봐야한다.일반적으로 게시판에 접속했을 때검색을 해서 게시판에 접속했을 때모든 상황
디테일로 연결되는 메소드 안에 count를 증가할수있는 메소드를 추가한다.스토어에서 mapper를통해 카운터를 증가하게 하는 쿼리문을 db에 연결시킨다.해당 쿼리문을 통해 디테일 페이지에 접속할때마다 count가 1씩 증가된다.
댓글창은 게시물 상세페이지에서 작성한다.게시물 상세 페이지 밑에 댓글창을 만들었다.여기서 확인해야 할것은 댓글의 입력 name이 무엇인지textarea의 name은 replyContents이다.입력받는값은 무엇인지이다.boardNo를 hidden으로 입력받고있다.작성자
resources/mybatis-cofig.xml에 setting값을 삽입한다.이 부분이다하지만 table을 만들었을때 not null로 만들면 오류가 뜨니까 주의할것!
상세게시물 창에서 댓글을 불러온다댓글 목록부터 확인하면for:each 태그를 통해 rList의 값을 받아 작성자, 작성날짜, 댓글내용을 출력하고 있는것을 확인할수있다.그렇게때문에 Controller에서 rList의 값을 반환받아야한다.여기는 상세 게시물 페이지이때문에
jsp를 수정해 댓글 수정창을 만든다자바스크립트를 활용해 수정버튼을 누르면 수정창이 보이도록 했다.댓글창 밑에는 댓글 수정창이 있지만 기본적으로 display none을 사용해 보이지 않게 만들었다.forEach문의 i.count를 활용해 모든 수정 버튼의 아이디값은
삭제하기는 간단해서 코드만 공유해 둔다.자바스크립트로 삭제하시겠습니까를 물은뒤 자바스크립트 내에서 form태그를 생성하여 삭제 controller로 이동한다.
댓글수정은 jsp에 많이의존했다.댓글 목록창 : c:if문을 활용해 현재 로그인한 아이디와 작성한 id가 같지 않으면 수정/삭제가 보이지 않도록 하였다.컨트롤러 창에서도 수정자와 작성자가 다를경우 오류페이지로 전송하도록했다.나머지는 댓글 등록과 크게 다르지 않다.
함수를 이용하여 input text를 활용해 해당값을 전송했을때 이클립스의 콘솔에서 입력한 값이 출력되게 하는 코드이다.var xhttp = new XMLHttpRequest(); 로 객체를 생성하고xhttp.open("GET", "컨트롤러 연결주소?전송할변수명=" +
List 데이터를 Json데이터로 변화시켜주는 라이브러리pom.xml에 추가한뒤 alt+f5로 메이븐업데이트를 해준다html영역에서 입력받은값은 ajax함수에 data열에 의해 userId라는 이름으로 전송된다해당값은 controller에서 requsetParam으로
버튼을 누르면 '- controller가 전송한 값은 success영역에서 data라는 변수에 저장해 for문을 활용하여 반환받은 전달값의 List.size()만큼 반복하여 str변수에 담아 p6영역에 출력한다.jSon형식으로 전달받은 값은 일반적으로 html영역에 출
버튼을 누르면 replyContents의 내용과 boardNo가 전송되며 전송받은 값을 처리하여 반환받으면 등록성공이라는 메세지가 뜬다.그 이후 \`$('해당 함수로 댓글 목록을 출력한다,.append를 활용해 해당변수에 저장된 태그를 계속 tr변수에 더하여 해당 t
어려운 부분이 없는 과제인데 또 중간에 변수 선언하는걸 깜빡해서 시간을 날렸다천천히 잘 찾아보는게 중요할듯 하다다른 부분은 상관없기때문에 id의 입력받는 부분과 메세지가 출력될 부분 두 부분을 준비하였다.지난번 시험에서 무신사 회원가입 창은 실시간으로 id중복 체크를
해당 함수를 만들어 받아온 data에 data.키값을 이용하여 원하는 값을 전달할수있다참고 : Daum Postcode Service User Guide네이버는 우선 NAVER CLOUD PLATFORM 네이버 클라우드 플랫폼 (ncloud.com)에 가입하고 카드 인
dependency영역에 붙여 넣는다이 부근에서 은근히 헷갈려서 오류가 나왔다. 클래스명과 id명을 틀리지 않도록 주의하자공통로그 - LogAdvice 비지니스 로직 수행 전 동작printOneVyNo()메소드 수행에 걸린 시간 : 17(ms)공통로그-LogAdvice
컨트롤러에서만 가능하다.
root-context를 이용했을때와 같은방식으로 anotation을 사용해주면된다.81\. AOP 사용하기 (velog.io)똑같이 인식하여 같은 결과를 확인 할 수 있다.공통로그 - LogAdvice 비지니스 로직 수행 전 동작공통로그-LogAdvice 비지니스
JDBC: Connection 객체 / conn.commit(), conn.rollback() → ServiceMybatis :SqlSessio 객체/ session.commit(), session.rollback()→ServiceSpring : TransactionM
src-main-resources-new-file-파일명 : log4jdbc.log4j2.properties (확장자 없음)이 부분을 입력한다3rdparty Loggers는 빼거나 주 석처리dirverclassName을 변경하고 url의 jdbc와 oracle사이에 l
spring 프로젝트에서 pom.xml에 해당 라이브러리 주소를 넣어준다.<version>5.2.18.RELEASE</version> 은 java버전과 동일하게 한다.pom 상단에 org.springframework-version 과 같은것으로 해주면 된다.
해당코드는 아이디와 비밀번호를 입력하면 로그인이 되는 코드이다.해당 클래스에는 sqlSession이 없었기때문이 테스트 클래스에서 새롭게 만들어주었다.아이디와 비밀번호가 필요하기때문에 member인스탠스에 아이디와 비밀번호를 입력해준다.새로운 인스탠스를 만들어 해당 코
controller는 db까지 연결하지 않고 테스트를 진행한다HashMap을 이용하여 값을 저장하여 전달하기로 했다.간편하게 메세지로 성공/실패여부를 호가인할수 있도록 하였다.해당값은 service클래스로 전송된다.테스트 용 이기에 무조건 성공으로 간주하고 1을 반환
컨트롤러는 이렇게 구성되어있다. 1\. html영역에서 아이디, 이름, 비밀번호, 이메일, 전화번호를 Member에 저장해서 가져온다.주소는 따로 입력받아 그 입력받은값을 Member의 인스탠스에 저장해 service 클래스로 넘긴다.이 2가지의 값이 잘 받아져서 i