분류 전체보기 (104) 썸네일형 리스트형 <자바 Java> 포워딩(forwarding)과 바인딩(binding) - 포워딩이란? 서블릿 프로그래밍 시 서블릿끼리, 혹은 서블릿과 JSP 사이에 정보를 공유하거나 정보를 전달하는 등의 연동 작업이 필요할 때 사용하는 기능이다. 한마디로 포워딩이 없다면, 서로 다른 서블릿이나 JSP는 정보 교환이나 요청 전달 등의 연동 작업이 불가하다. 따라서 프로그래밍 시 포워딩은 필수적이며 핵심적인 기능이라 할 수 있다. - 포워딩 방법 1. 웹 브라우저를 거쳐 전송되는 방법 1) redirect // response 객체의 sendRedirect 메서드 이용 response.sendRedirect("요청할 서블릿 매핑주소 혹은 JSP?전송할 데이터의 이름=값"); // GET방식으로 데이터 전달 가능 2) Refresh // response 객체의 addHeaher 메서드 이용 r.. <자바스크립트 Javascript> 선택지 만들기(심리테스트 알고리즘 이용) (3) 8) 선택된 값들을 저장하고 이를 각각에 맞는 결과 페이지로 전송해주기 위해 함수(아래 코드의 result 함수)를 새로 만든다. 그리고 그 안에서 첫 번째로, 앞에서 로컬스토리지에 저장한 클릭된 버튼들의 인덱스를 JSON의 parse 함수를 통해 변환하여 새로운 객체에 각각 저장해준다. function result() { const r1 = JSON.parse(localStorage.getItem('a1')); const r2= JSON.parse(localStorage.getItem('a2')); const r3= JSON.parse(localStorage.getItem('a3')); r1, r2, r3은 각각 질문1에 대한 답, 질문2에 대한 답, 질문3에 대한 답으로 선택한 버튼의 인덱스다. 물론.. <자바스크립트 Javascript> 선택지 만들기(심리테스트 알고리즘 이용) (2) (5) 4번에서 버튼들에 클래스명을 추가하여 선택자로 CSS 효과 등을 줄 수 있도록 한다고 했는데, 이 부분을 수정하게 됐다. 추후에 각 질문에서 선택한 버튼들을 모아 결과지를 만들어야 하는데, 그러려면 버튼에 개별적으로 이름을 붙여 하나씩 가져올 수 있도록 해야하는 부분인지라 button이라는 클래스명으로는 구분이 어려웠던 것이다. 따라서 판다코딩님의 강의를 참고하여, 비슷하게 인덱스를 활용하였다. //버튼 추가 function begin1() { for(let i=0;i <자바스크립트 Javascript> 선택지 만들기(심리테스트 알고리즘 이용) (1) - 자바스크립트로 선택지 기능 구현 개인 프로젝트로 개발중인 웹 프로젝트에서, 총 3개의 문답 페이지가 존재하며 차례로 1개씩 버튼을 클릭하여 모두 답을 하고 나면, 결과로 3개 문답에 대해 데이터를 받아 이에 대한 결과 페이지로 넘겨주는 작업을기획하였다. 비슷한 알고리즘이 어떤 것이 있을까 생각해보았더니 최근에 유행이었던 다양한 심리테스트들이 생각나서, 심리테스트를 만들 때의 코드를 응용하였다. 코드는 인프런 판다코딩님의 를 참고하였다. 무료로 이런 좋은 강의를 공개해주심에 매우 감사! 순서는 다음과 같다. 1) html에 버튼을 넣을 영역의 태그를 만들어준다. qbox 영역이 질문 내용이 들어갈 영역이고, abox가 그 질문에 대한 선택지들을 나열할 영역이다. qbox와 abox 모두 자바스크립트로 .. <스프링 부트 Spring boot> 인터셉터(Interceptor)로 관리자, 일반회원 구분 기능 구현 - 인터셉터(Interceptor)로 관리자, 일반회원 구분 기능 인터셉터는 Filter보다 더 넓은 범위의 일종의 제어 장치라고 볼 수 있는데, 그 이유는 Filter와는 다르게 원하는 위치에 자유롭게 인터셉터를 걸 수 있기 때문이다. 이러한 인터셉터 기능을 통해 홈페이지에서 로그인 시 관리자와 일반회원을 구분하여 관리자일 때, 일반회원일 때 홈페이지에 접근할 수 있는 권한을 다르게 부여해줄 수 있다. 순서는 다음과 같다. 1) InterceptorConfig 클래스를 생성하여 인터셉터 기능을 넣어준다. 이 때, InterceptorConfig는 반드시 WebMvcConfigurer를 상속 혹은 확장하여 사용한다. @Configuration public class InterceptorConfig imp.. <스프링 부트 Spring boot> 게시판 구현 - 답글 기능 - 게시판 답글 기능 게시판의 답글 기능은 DB에서 게시판을 생성할 때 기본적인 컬럼에 추가적으로 답글 기능과 관련된 컬럼들을 함께 만들어주어야 한다. *기본 컬럼 - num(번호), title(글제목), contents(글내용), writer(글쓴이), hit(조회수 - 없어도 됨), date(작성날짜 - 없어도 됨) *답글 기능 관련 컬럼 ref : 원글과 원글에 대한 답글을 하나의 그룹으로 묶어줌, 원글의 번호를 참조하여 설정됨 step : 원글과 답글들을 한 그룹으로 묶었을 때 해당 그룹 내의 순서 depth : 답글이 원글에 대한 답글일 수 있고, 답글에 대한 답글일 수 있는데 이 때 이러한 답글의 계층을 나타냄 위 내용을 바탕으로 DB에서 게시판을 생성하였다면, 프론트와 백엔드 부분을 차례로 .. <스프링 Spring> 페이징 + 검색 기능 구현 - 페이징 기능에 사용되는 컴포넌트 : 백엔드 - Controller, Service, Repository, Mapper.xml, VO, Pager / 프론트엔드 - JSP, JS, CSS 1) 페이징 기능 구현을 위해, VO 객체 외에도 페이징을 구현할 변수가 따로 필요하다. 이는 클래스 Pager를 생성하여 만든다. Pager 클래스에 담길 변수(필드)는 다음과 같다. 전체 글의 갯수 totalCount 전체 페이지의 수 totalPage 페이지당 글의 수 perPage 전체 블럭의 수 totalBlock 페이지당 블럭의 수 perBlock 현재 블럭 번호 curBlock 게시판 테이블의 컬럼 kind 검색어 search 페이지 시작번호 startNum 페이지 끝번호 lastNum 마지막 블럭 조사 .. <스프링 부트 Spring boot> 게시판 구현 - 글 목록 조회 - 게시판 글 목록 조회 기능 스프링보다 훨씬 간편하게 글 목록 조회 기능 구현이 가능하다. 순서는 다음과 같다. 1) Controller에 글 목록 조회 시 실행되는 메서드를 만든다. 매핑은 Get으로 한다. @GetMapping("list") public ModelAndView getList(ModelAndView mv, NoticeVO noticeVO) throws Exception{ List list = noticeService.getList(noticeVO); mv.addObject("noticeList", list); return mv; } VO 객체를 통해 글 목록에 대한 정보를 담아 Service로 보낸다. Service로부터 받아온 데이터는 다시 List 타입의 list 변수에 담아 Mo.. <자바 Java> 추상클래스 - 추상클래스 생성의 목적 개발 프로젝트에서 코드를 설계하는 사람과 코드를 직접 작성하는 사람이 따로 있다고 가정했을 때, 설계하는 사람은 코드를 작성하는 사람에게 클래스의 구조가 어떠해야 하는지 설명해야 한다. 이 때 보다 분명하고 확실하게 지침을 전달하기 위해 코드를 작성하는 사람이 만들어야 할 많은 클래스들 중 공통된 특징을 추려내어 추상클래스를 만들어서 전달해 줄 수 있다. 이렇게 하면, 클래스들 간의 공통되는 특징들 만큼은 정해진 규격을 따라 코드를 작성할 수 있기 때문에 여러모로 편리해진다. 이 때 추상클래스의 추상(abstract)이란, 실체 간에 공통되는 특성을 추출한 것을 뜻하는 단어로서 이처럼 클래스들 간의 공통되는 특징을 추출하여 만든 클래스를 추상클래스라고 한다. - 추상클래스의 특.. <스프링 부트 Spring boot> Ajax 아이디 중복확인 기능 구현 - 아이디 중복확인 Ajax를 통해 페이지 이동 없이 해당 페이지 내에서 아이디 중복확인만 실행이 가능하다. 순서는 다음과 같다. 1) 회원가입 폼에 아이디 입력 후 아이디 중복확인을 할 수 있는 버튼을 만든다. 아이디 중복확인 이 때, 버튼을 만들되 버튼에 속성값으로 type="button"으로 한 번 더 명시해준다. 일반적으로 버튼은 submit의 기능을 포함하고 있기 때문에, 이 속성값을 설정하지 않으면 회원가입 폼의 전체 내용을 submit 하는 마지막 회원가입 버튼과 기능이 혼재되어 나타날 수 있기 때문이다. 따라서 submit이 중첩되지 않게, 아이디 중복확인의 버튼에는 submit 기능이 포함되지 않고 오직 button 기능만 할 수 있도록 해당 속성값을 추가해준다. 추가적으로 css는 다음.. 이전 1 ··· 4 5 6 7 8 9 10 11 다음