티스토리 뷰
// 기본적으로 JAVA JDK 설치.
// 작업환경 및 에디터 기능을 위해 eclipse, aptana 설치.
// 컴파일을 위해 톰캣, 파이어폭스를 설치.
aptana 관련
기본셋팅에서 jsp를 지원 안해줘서
preference -> general -> editors -> file associations에서
*.jsp추가후 javascript source editot 추가 후 default로 셋팅해야 한다.
eclipse 설정 관련
Dynamic Web Project로 프로젝트 생성
WebContent안에 jsp 파일 생성
톰캣, 파이어폭스 설치 후, Ctrl+F11 하면 실행된다.
Window-Preferences
encoding 검색
CSS, JSP, XML 등 모두 UTF-8로 변경
서블릿 작업 Class 추가시 Superclass를 javax.servlet.http.HttpServlet로 설정
JavaResources(프로젝트명/src)에 클래스 생성
Source -> Override/implement Methods를 누르면 메소드 확인 가능
HttpServlet에서는 doGet과 doPost를 주로 사용
프로젝트 내보내기
프로젝트명 우클릭->Export->WAR file
서블릿 클래스 작업을 한 후 web.xml 파일에
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>Test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
이런식으로 클래스 파일을 추가해줘야 한다.
// 하지만 conf의 web.xml과 context.xml의 설정을 바꿔주면 자동빌드 된다.
jsp는 태그와 자바코드를 같이 사용
<%@ %> 는 디렉티브로 페이지의 설정을 저장할 때 사용
<% %> 는 스크립트릿이고, 자바코드를 작성할 때 사용
<%! %> 는 선언부이고, method를 선언할때 사용
<%= %> 는 표현식이고 변수의 값을 출력할 때 사용
jsp파일은 서블릿으로 변환되는데 그 경로는 복잡
변환된 서블릿 파일에는 뭔진 아직 모르지만 내장객체라는게 존재
String은 배열 크기가 한정되어 있어서 런타임 크기 변경이 안됨. 크기 증가는 가능.
메모리 허용 범위에서 런타임으로 크기 변경이 가능하게 Vector 사용.
jsp 한글 인코딩 관련
서블릿단에서 인코딩 시에는 아래 소스 삽입
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html; charset=UTF-8");
톰캣 서버단에서 인코딩 시에는 server.xml의 Connector 부분에 아래 소스 삽입
URIEncoding="UTF-8"
web.xml에 필터 추가하는 방법
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
추가후에 클래스 추가
C:\apache-tomcat-6.0.35\webapps\examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class
서블릿 단에
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html; charset=UTF-8");
을 페이지마다 넣어주지 않기 위해 필터를 적용했으나, 필터는 캐릭터 인코딩만 UTF-8로 바꾸어줘서 깨진글자가 유니코드로 떴다.
그러므로 필터적용, setContentType은 페이지마다 넣어주는 것으로 작업환경을 구축
DAO (Data Access Object)
데이터베이스에 접근하기 위한 자바 클래스
데이터의 저장, 검색 등의 기능
jsp include 한글 깨짐
<%@ include file="../inc/storeBest.inc" %>
한글깨짐 현상
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
페이지 인코딩을 inc에도 넣어줘야 한다.
'Study' 카테고리의 다른 글
grunt(그런트) 관련 (0) | 2023.01.09 |
---|---|
Aptana(압타나) 관련 (1) | 2023.01.08 |
Java(자바) JSP Tomcat(톰캣) 관련 (0) | 2023.01.08 |
Windows(윈도우) Monitor Off(모니터 끄기) 바로가기 (0) | 2023.01.07 |
gulp(걸프) Error(에러) 관련 (0) | 2023.01.07 |