출처: http://november11tech.tistory.com/88 [Mr.november11] '개발/JSP_WEB' 카테고리의 글 목록 :: 사월은 봄이다.



JSP 페이지에 아래 태그만 넣어주면 된다.



<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>




'개발 > JSP_WEB' 카테고리의 다른 글

jsp에서 spring messages를 사용하고 싶을 때  (0) 2018.02.12
jsp 에서 url, path 가져오기  (0) 2018.02.12
에디터 글쓸 때  (0) 2018.02.12
href  (0) 2018.02.12
URL 따는 것  (0) 2018.02.12

Spring에서 messages.properties를 설정해 놓을 때가 있다.


그런데 이놈을 JAVA에서만 말고 JSP에서도 사용하고 싶을 때가 있는데 이때 아래와 같이 사용








<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>


와 같이 prefix를 설정해 두고,




<spring:message code="MESS_Hos"/>






아 이걸 좀 더 일찍 알았다면 좋았을 걸...


'개발 > JSP_WEB' 카테고리의 다른 글

jsp 한글 깨짐  (0) 2018.02.18
jsp 에서 url, path 가져오기  (0) 2018.02.12
에디터 글쓸 때  (0) 2018.02.12
href  (0) 2018.02.12
URL 따는 것  (0) 2018.02.12

가령 아래와 같은 주소가 있을 경우

http://localhost:8080/cooper/hello.do

 

request.getRequestURI();   //프로젝트경로부터 파일까지의 경로값을 얻어옴 (/cooper/hello.do)

request.getContextPath();  //프로젝트의 경로값만 가져옴(/cooper)

request.getRequestURL();  //전체 경로를 가져옴 (http://localhost:8080/cooper/hello.do)

request.getServletPath();  //파일명 (/hello.do)

[출처] request.getRequestURI(); request.

'개발 > JSP_WEB' 카테고리의 다른 글

jsp 한글 깨짐  (0) 2018.02.18
jsp에서 spring messages를 사용하고 싶을 때  (0) 2018.02.12
에디터 글쓸 때  (0) 2018.02.12
href  (0) 2018.02.12
URL 따는 것  (0) 2018.02.12

<form id="popupForm" name="popupForm" method="post" enctype="multipart/form-data">


 


 


에디터에 글 쓰고 디비에 저장할 때 html 특문 태크로 가끔 변화해서 들어갈 때가 있다.


근데 이렇게 되면 나중에 보여질 때 태그가 적용되지 않고 그대로 노출 댐


 


이 문제는 enctype="multipart/form-data" 이녀석을 넣으면서 해결댐 ㅋㅋㅋㅋㅋㅋ

'개발 > JSP_WEB' 카테고리의 다른 글

jsp에서 spring messages를 사용하고 싶을 때  (0) 2018.02.12
jsp 에서 url, path 가져오기  (0) 2018.02.12
href  (0) 2018.02.12
URL 따는 것  (0) 2018.02.12
request.getSession()  (0) 2018.02.12

href 태그에 #을 쓰는 이유


 


 


1. #knk라는것은

id가 knk라는 객체로 이동하라고 있는거구요

링크없이 onclick이벤트를 발생시키기 위해선 보통

href="#"을 쓰죠~


 



2. 저거

보통은

#만 쓰긴 하는데

저거

그냥 

return 0같은 의미임

규격에 맞출라면

href 속성에 경로를 써야 하는데

딱히 가는데는 없고

자바스크립트 같은걸로 돌려야할때

그냥 맞춰주려고 쓰는 경우가 많음

즉 의미 없음


'개발 > JSP_WEB' 카테고리의 다른 글

jsp 에서 url, path 가져오기  (0) 2018.02.12
에디터 글쓸 때  (0) 2018.02.12
URL 따는 것  (0) 2018.02.12
request.getSession()  (0) 2018.02.12
절대경로랑 상대경로  (0) 2018.02.12

request.getSession()

HttpSession이 존재하면 현재 HttpSession를 반환하고 존재하지 않으면 새로 세션을 생성.



request.getSession(true)

request.getSession()과 의미가 동일하면 같은 결과다.



request.getSession(false)

HttpSession이 존재하면 현재 HttpSession을 반환하고, 존재하지 않으면 null 값을 반환.

request.getSession(false)인 경우 null을 리턴 하므로 NullPointException이 나올 수 있다.


request.getSession()

HttpSession이 존재하면 현재 HttpSession를 반환하고 존재하지 않으면 새로 세션을 생성.



request.getSession(true)

request.getSession()과 의미가 동일하면 같은 결과다.



request.getSession(false)

HttpSession이 존재하면 현재 HttpSession을 반환하고, 존재하지 않으면 null 값을 반환.

request.getSession(false)인 경우 null을 리턴 하므로 NullPointException이 나올 수 있다.


최상위 경로의 파일 선택 = /


현재 경로에 있는 파일 선택 = ./


상위 경로에 있는 파일 선택 = ../ 


 


 


./aa.html


현재 자리에서 aa.html 파일을 불러와라


 


../aa.html


현재자리에서 폴더 밖으로 나가서 있는 aa.html 파일을 불러와라

java.lang.IllegalStateException: getOutputStream() has already been called for this response

STATUS : Closed


Scenario :

jsp to generate a report and on click of a button download the report xls from the server. Code in the jsp is as follows.


response.setContentType("application/vnd.ms-excel");

response.setHeader("Content-Disposition",

"attachment; filename=Report.xls");


OutputStream out1 =response.getOutputStream();


WritableWorkbook workbook = Workbook.createWorkbook(out1);


Resolution :

Moved the code in the jsp to a servelet



Possible RootCause :

You cannot get a handle to the multiple output stream objects. When the jsp code gets compiled to plain java it adds code " out.write() " to write the jsp content to the outputstream. Since you already have got a handle to the ouputstream the out.write() system code throws the exception. Hence moving the code to a servelet solves the issue.

 

 

 

out.clear();


out=pageContext.pushBody(); 


 


 


 


 


요 두줄을 OutputStream하기 전에 넣어주면 되겠다.  out은 jsp 웹페이지 자신을 가리키는 것 ! ! !


jsp에서는 servlet으로 변환될때 내부적으로 out 객체가 자동으로 생성되기 때문에 따로 out 객체를 만들면 충돌이 일어나서 저런 메시지가 뜨는 것이라고 한다.


 


 


 out.clear(); 

  

 out=pageContext.pushBody();


 

 BufferedInputStream fin = new BufferedInputStream(new FileInputStream(file));   

 OutputStream outs = response.getOutputStream();  


 

'개발 > JSP_WEB' 카테고리의 다른 글

request.getSession()  (0) 2018.02.12
절대경로랑 상대경로  (0) 2018.02.12
request.getParameter()과 request.getAttribute()  (0) 2018.02.12
str.getBytes  (0) 2018.02.12
익스프레션 언어  (0) 2018.02.12

request.getParameter()과 request.getAttribute()

 



웹(Web) 환경은 HTTP 프로토콜 위에서 동작하고 있습니다.

 

 

 

        HTTP 프로토콜은 간단하게 얘기해서,

 

        클라이언트가 서버에 무언가(보통은 웹페이지)를 요청(request)하면,

 

        서버가 이 요청에 해당하는 것을 응답(response) 해주는 구조로 되어있습니다.

 

 

 

HTTP 요청을 보낼 때,  파라미터(parameter)를 함께 끼워보낼 수 있습니다.

 

 

 

        가령, 로그인을 할 때, 로그인 폼(form : 양식)을 입력하고, 버튼을 누르죠.

 

        그러면, HTTP 요청 안에 폼 내용이 함께 끼워져서 서버로 날아가게 됩니다.

 

        로그인 폼 내용이 바로, HTTP 요청의 파라미터(parameter)가 되는 겁니다.

 

 

 

        이러한 HTTP 요청을 받은 서버는 이제 어떤 일을 할까요?

 

        파라미터로 날아온 로그인 폼을 일단 봐야지, 뭘하든 하겠죠.

 

 

 

        그러려면 일단 파라미터 값을 얻어내야 하는데...

 

 

 

HTTP 요청의 파라미터 값을 얻기 위해 사용하는 것이 request.getParameter() 메쏘드입니다.

 

 

 

        가령, 로그인 폼에, ID를 입력하는 <input type="text" name="id">가 있었다면,

 

        서블릿에서 String strId = request.getParameter("id"); 와 같은 방식으로,

 

        클라이언트가 입력한 ID가 뭐였는지 알아낼 수 있습니다.

 

 

 

       로그인에 성공했다면, 이제 어떻게 할까요?

 

       클라이언트의 회원정보를 DB에서 읽어서 페이지에 뿌려주기로 합시다.

 

       그러려면, 서블릿은 회원정보를 JSP에게 보내줘야 합니다. 그래야 뿌리죠.

 

 

 

       그런데 어떻게???

 

 

 

다른 곳으로 정보를 넘겨주기 위해서 request 객체의 속성(attribute)을 사용합니다.

 

(더 정확하게는, 웹 애플리케이션 상에서 정보를 공유하기 위해서 속성을 사용합니다.)

 

 

 

        가령, 회원정보 중에서 '취미'를 JSP에게 넘겨주기 위해서,

 

        서블릿에서 request.setAttribute("hobby", strHobby); 로 속성을 집어넣고,


        JSP에서 <% String strHobby = (String)request.getAttribute("hobby"); %>로 속성을 얻는거죠.

 

 

 

       Q : "걍 단순이 db에서 먼갈 꺼내와서 리퀘스트 객체에 넣을땐 set이고 꺼낼땐 겟인가요??" 

 

       A : 맞습니다... -_-;   (꼭 DB가 아니더라도 뭔가를 넣고 싶으면 아무거나 넣으면 됩니다.)

 

 

 

setAttribute(), getAttribute()에서 속성 값으로 사용하는 타입은 Object입니다.

 

 

 

        Q : "벡터를 넘겨주면 벡터를 받음 돼는건가여?"

 

        A : 예.  Vector를 넘겨준다면 Vector로 타입 캐스팅 하고 받으면 됩니다. 

'개발 > JSP_WEB' 카테고리의 다른 글

절대경로랑 상대경로  (0) 2018.02.12
[java.lang.IllegalStateException: getOutputStream() has already been called for this response] with root cause  (0) 2018.02.12
str.getBytes  (0) 2018.02.12
익스프레션 언어  (0) 2018.02.12
쿠키  (0) 2018.02.12

+ Recent posts