-
package 선언시 javac -d xx yy 컴파일과 useBean에 대해서...프로그램/JSP 2007. 11. 20. 17:14
java에서 package 선언할때 javac 의 의미.
javac test.java 하게 되면 현재 디렉토리에 class 파일이 생성이 된다.
javac -d xx/xx yy/yy/test.java 라고 할 경우 각 항목의 의미는
-d는 디렉토리가 없으면 디렉토리를 생성한다.
-xx/xx는 해당 디렉토리에서 class 파일을 만들겠다.
-yy/yy/test.java는 자바파일의 위치
만약에 D\source에 test.java가 있다고 할 경우
D\source에서
javac test.java를 할 경우
D\source에 test.class가 생긴다.
package aa.bb라고 선언이 되어 있어도 해당 디랙토리에 class 파일이 생성이 된다.
D:\source 에서
javac -d . test.java 하게 될 경우(package aa.bb라고 선언시)
D:\source\aa\bb\test.class가 생성이 된다.
D:\source 에서
javac -d 11/22 test.java를 하게 될 경우(package aa.bb라고 선언시)
D:\source에서 컴파일을 하게 되면 D:\source\11\22\aa\bb\test.class라고 생성이 된다.
이 파일을 jsp 에서 쓸려면 해당 위치를 import 해야 한다.
해당 ContextRoot에 WEB-INF\classes에서 부터 위치를 잡아갑면 된다.
Root에
---------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr"%>
<%@ page import = "aa.bb.test1" %>
<html>
<head><title>테스트중</title></head>
<body>
출력 테스트<p>
<%
test1 h = new test1();
out.println(h.returnTest1());
%>
</body>
</html>
---------------------------------------------------------
라고 작성이 되어있다면
클레스 파일은
\webapps\ROOT\WEB-INF\classes\aa\bb 에 위치하면 된다.
이걸 useBean로 사용할려면
----------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr"%>
<jsp:useBean id="info1" class="aa.bb.test1" scope="page" />
<html>
<head><title>테스트중</title></head>
<body>
출력 테스트22<p>
<%
out.println(info1.returnTest1());%>
</body>
</html>
----------------------------------------------------------
라고 작성하면 된다.
useBean에서 info1은 test1의 클레스 객체
aa.bb.test1 는 클레스의 위치
page는 저장하는 객체이다.
package를 정하는 이유는 해당 위치를 지정할 수 있고
그로 인해 나중에 경로를 찾을때도 편한 이점이 있다.
다른 이유는 잘 모름..'프로그램 > JSP' 카테고리의 다른 글
JAVA 컴파일하기~ to JSP (0) 2007.11.27 ResultSet 에 대한 객체 (0) 2007.11.26 TOMCAT 참조하는 jar 파일에 대해서... (0) 2007.11.22 request.getContextPath() 와 request.getRequestURLI() 의 차이 (0) 2007.11.20 JavaBean <jsp:useBean>,<jspgetProperty> (0) 2007.11.19 Cookie 처리를 위한 Util Class (0) 2007.11.16 Cookie 객체 (0) 2007.11.16