728x90
반응형
본격적으로 프로젝트를 만드는 주간이 되었다. 근데 수업은 계속한다.. 힘들어 죽겠다
일단 jsp에서 사용하는 내장객체를 배우고 있다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%--
application : ServletContext => 서버정보 관리
서버정보 읽기
getServerInfo()
getMinorVersion()
getMajorVersion()
로그 읽기
log() => 로그파일
환경 설정 읽기
web.xml
자원 정보 읽기
***getRealPath()
--%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>서버명</h3>
<%= application.getServerInfo() %><br>
<h3>Major Version</h3>
<%= application.getMajorVersion() %><br>
<h3>Minor Version</h3>
<%= application.getMinorVersion() %><br>
<h3>실제 경로</h3>
<%=application.getRealPath("/jsp/application.jsp") %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String driver=application.getInitParameter("driver");
String url=application.getInitParameter("url");
String username=application.getInitParameter("username");
String pwd=application.getInitParameter("password");
application.log("driver:"+driver);
application.log("url:"+url);
application.log("username:"+username);
application.log("password:"+pwd);
application.log("IP:"+request.getRemoteAddr());
application.log("Method:"+request.getMethod());
application.log("URI:"+request.getRequestURI());
%>
</body>
</html>
application 내장 객체를 배웠다. getInitParameter를 통해서 값을 읽어오는 방법
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<center>
<form method=post action="input_ok.jsp"
enctype="multipart/form-data"><!-- 파일업로드시에만 사용이 가능 -->
파일첨부:<input type=file name=upload size=20>
<input type=submit value="파일올리기">
</form>
</center>
</body>
</html>
post방식으로 값을 보내주는 방법
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="com.oreilly.servlet.*,com.oreilly.servlet.multipart.*"%>
<%
request.setCharacterEncoding("UTF-8");
String s=application.getRealPath("/jsp3"); // 톰캣이 읽어가는 실제 경로명
String path=s;
String enctype="UTF-8";
int size=1024*1024*100; //100MB
MultipartRequest mr=
new MultipartRequest(request,path,size,enctype,
new DefaultFileRenamePolicy());
// new DefaultFileRenamePolicy() - 파일명이 겹치는걸 방지함
String name=mr.getOriginalFileName("upload");
response.sendRedirect("output.jsp?file="+name);
%>
inert_ok에서 post방식으로 값을 실제로 읽어주고 있다. 여기서 이제 파일을 받아와서 처리를 해준다.
여기서 받아온 파일을 output.jsp로 다시 보내준다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%--
out => println() | <%= %>
application => getInitParameter, getRealPath()
pageContext => include, forward
--%>
<%
request.setCharacterEncoding("UTF-8");
String fn=request.getParameter("file");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<img src="<%=fn%>">
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%--
JSP에서 주로 사용하는 내장(기본) 객체
= request : getParameter() , getParameterValues()
setCharacterEncoding()
= response : setHeader()=>다운로드 , sendRedirect()
***= application : web.xml에 등록된 데이터 읽기 : getInitParameter()
실제 경로명 : getRealPath()
= out : println()
= pageContext : include,forward
<jsp:include> <jsp:forward>
= session VS cookie
사용자가 보낸 데이터 활용
= 받은 jsp에서만 사용 : request => 화면 변경시 초기화
= 데이터를 모든 JSP에서 사용 => session
--%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
</body>
</html>
주로 이런 내장 객체를 사용한다고 생각하고 사용하면 될것 같다.
728x90
반응형
'programming > Gukbi' 카테고리의 다른 글
국비 교육 61일차 - bean, cookie (0) | 2021.03.25 |
---|---|
국비 교육 60일차 - errorPage, 웹 크롤링 (0) | 2021.03.24 |
국비 교육 58일차 - 답글형 게시판 만들기 (0) | 2021.03.19 |
국비 교육 57일차 - request&response (0) | 2021.03.19 |
국비 교육 56일차 - jquery, jsp (0) | 2021.03.17 |