분류 전체보기
-
[오류] code point [x,y]에 위치한 유니코드 문자 [한글] - 한글 인코딩 오류카테고리 없음 2024. 1. 12. 14:05
ARNING: 값이 [list.do?page=1&perPageNum=10&key=t&word=자]인 HTTP 응답 헤더 [Location](이)가 유효하지 않은 값이므로 응답에서 제거되었습니다. java.lang.IllegalArgumentException: code point [51,088]에 위치한 유니코드 문자 [자]은(는), 0에서 255까지의 허용 범위 바깥에 있으므로 인코딩될 수 없습니다. at org.apache.tomcat.util.buf.MessageBytes.toBytesSimple(MessageBytes.java:310) at org.apache.tomcat.util.buf.MessageBytes.toBytes(MessageBytes.java:283) at org.apache.coyo..
-
[오류] String.equals()메서드의 Null카테고리 없음 2024. 1. 10. 16:22
try { switch (uri) { //공지 리스트를 보기위한 DB와 페이지 처리 case "/notice/list.do": { PageObject pageObject = PageObject.getInstance(request); String period = request.getParameter("period"); if(period != null )pageObject.setPeriod(period); LoginVO loginVO = (LoginVO)request.getSession().getAttribute("login"); //관리자 권한 체크 - period가 all, res, old는 관리자만 볼 수 있다. long gradeNo = 0; if(loginVO != null) gradeNo = lo..
-
[오류] For input String : "null" 와 Missing end tag for "c : out"자바 초보개발/JSP-Servlet 2024. 1. 8. 12:12
java.lang.NumberFormatException: For input string: "null" at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) at java.base/java.lang.Integer.parseInt(Integer.java:668) at java.base/java.lang.Integer.parseInt(Integer.java:786) at com.webjjang.util.page.PageObject.getInstance(PageObject.java:95) at com.webjjang.image.controller.ImageController.execute(ImageCo..
-
Servlet을 통한 MVC 모델 구현 개인정리자바 초보개발/JSP-Servlet 2024. 1. 4. 17:46
지난번에 MVC모델을 자바와 JDBC만 가지고 구현했을 때와 다르게, Servlet과 Jsp, 그리고 여러 라이브러리를 추가해서 사용하고, 프록시 객체를 추가하는 등 복잡한 처리과정이 추가되서, 한번 개인적으로 정리하는 시간을 가지려고 한다. 우선 가장 눈에띄게 바뀐 것은 FrontController 역할을 하는 DispatcherServlet이 추가된 것이다. DispatcherServlet은 주로 Init 메서드와 service , get 혹은 post메서드가 있는 곳이다. Init 메서드는 서버가 실행될 때 한번 실행되는 곳이기 때문에, 메모리에 올려두고 계속 사용할 객체들을 생성,조립하는 과정을 담당한다. service 등의 메서드는 내가 주소창에 입력하는 주소를 입력받아서, 해당 주소에 따라 어..
-
Map을 통한 객체 관리자바 초보개발 2023. 12. 29. 17:48
Map을 사용해 서로다른 클래스들을 Object 형식으로 저장하고, 나중에 꺼내 쓸 때 각자의 클래스 형태로 다시 캐스팅해서 사용하는 방법을 배웠다. Map 다음에 오는 기호 안에 들어가는 타입들을 "제네릭스" 라고 부르는 것 같다. 정확한 정의는 인터넷에 나와 있겠지만, 내가 받아들이기에 제네릭스는 자료구조에 어떤 "타입"의 데이터가 들어갈 지 선언을 하는 것 같다. List 객체를 쓸 때에 기호 안에 아무것도 넣지 않았을 때가 있는데, 제네릭스는 무조건 선언해야 하는 것은 아니지만, 데이터 명시성을 높이기 위해서 써주면 좋은 것 같다. 제네릭스 왼쪽은 Key, 오른쪽은 Value를 입력하는데, Map 자료구조에 데이터를 넣을 때 제네릭스에 맞춰 Map.put(key,value) 형식으로 넣어주면 된다..
-
JSP/Servlet에서의 파일 업로드자바 초보개발/JSP-Servlet 2023. 12. 26. 12:58
cos 라이브러리를 이용하여 파일 업로드를 구현해본다. http://www.servlets.com/cos/ Servlets.com | com.oreilly.servlet www.servlets.com 기존에 태그에 입력한 값을 가져오려면 request.getParameter() 메서드를 사용해서 값을 가져왔는데, 태그의 enctype 속성을 multipart/form-data로 설정하면, 데이터 구조가 바뀌어서 파일 이외에 다른 정보는 가져올 수 없는 경우가 있다고 한다. 이 때, 파일을 업로드하고 같은 태그 내의 데이터를 가져올 때는 cos 라이브러리의 MultiPartRequest 객체를 사용할 수 있다. 예시 코드- 입력 페이지) DOCTYPE html> file upload 파일 업로드 파일 첨부..
-
쿠키와 세션자바 초보개발/JSP-Servlet 2023. 12. 22. 10:39
쿠키 기본적으로 웹서비스를 가능하게하는 프로토콜중 하나인 HTTP는 비 연결 지향형 통신 프로토콜이다. 클라이언트의 요청에 의해 페이지를 제공한 뒤 연결을 끊어버린다. 하지만 웹서비스를 구현할 때 정보를 저장해서 사용해야할 경우가 생긴다. 이 때 사용가능한 방법중 하나가 쿠키 객체를 이용하는 것이다. 쿠키의 특징 클라이언트의 컴퓨터 하드디스크에 정보를 저장하기 때문에 서버측의 부하를 줄일 수 있다. 4KB이하 크기의 정보를 300개까지 배열로 저장할 수 있다. 1.2MB가 최대 용량이다. JSP, 자바스크립트에서 사용 가능하다. 클래스형태로 제공되므로 객체를 생성해서 사용한다. 유효기간을 설정하지 않으면 무기한이 기본값이다. 쿠키가 저장되는 디렉토리만 참조하면 정보 유출이 쉽기 때문에 보안상 단점이 크다..
-
JSP 내장객체와 영역카테고리 없음 2023. 12. 15. 16:03
내장객체 out : 클라이언트 쪽에 정보를 출력하는 객체이다. page : 현재 페이지와 관련된 정보 관리 객체 request : 클라이언트가 요청한 정보에 관련된 메서드들을 가지고 있는 객체이다. response : 클라이언트에게 응답처리를 하고 실행결과를 브라우저로 되돌려주는 객체. application : 웹 애플리케이션을 관리하고 웹앱 내에서의 자원 공유. 하나의 웹앱 = 하나의 웹프로젝트 내장객체 영역 page : 하나의 JSP 페이지를 처리할 떄 사용되는 영역 request : 요청 처리 영역 session: 브라우저 관련 영역. 사용자 접속과 관련 application : 웹앱 관련 영역. 모든 사용자 수, 모든 페이지와 같은 총체적인 정보 page < request < session < a..