쌍용교육센터에서 공부한 내용을 정리하며 기록하는 글이고 주관적인 생각이 들어갈 수 있습니다.
잘못된 내용이나 피드백 및 생각 공유는 언제든 환영입니다.
댓글로 남겨주시면 확인 후 수정하겠습니다.
내용에 대한 소스 코드는 https://github.com/2jaehoon/html에 올려두었습니다.
select 설정
- 값 얻기 : 선택된 옵션의 값
$( "selector" ).val()
- :eq selector 속성 사용
:eq(인덱스) - 입력된 인덱스에 해당하는 tag를 찾는다.
$("selector 하위태그명:eq(선택할인덱스)").prop("추가할속성명",값)
$("#sel option:eq(2)").prop("selected",true);
<select id="sel" name="">
<option value="전송할값">보여줄 값</option> <!-- 인덱스 0 -->
<option value="전송할값">보여줄 값</option> <!-- 인덱스 1 -->
<option value="전송할값">보여줄 값</option> <!-- 인덱스 2 -->
<option value="전송할값">보여줄 값</option> <!-- 인덱스 3 -->
</select>
* 자식 태그로 추가하기
- .append()사용
$("selector").append("추가할 태그");
* 태그 삭제
- .remove()
$("selector").remove();
$("selector:first").remove(); /*처음 자식 태그를 삭제*/
$("selector:last").remove(); /*마지막 자식 태그를 삭제*/
plugin
- 자주 사용될 기능들을 미리 구현해 놓은 것
- jquery.com에서 다양한 plugin을 제공( 외부 개발자가 제공 )
- plugin 순서
1.관련 외부파일 (js나 css)를 연결
2.기능사용
smart editor
- textarea에 HTML tag를 적용하거나 image 넣을 수 있는 JavaScript로 개발된 plugin
* summernote 사용
- 모든 언어(JSP, ASP, PHP)에서 사용가능
- 이미지를 binary로 인코딩하여 보여줘 이미지를 다루기 편리하다.
- (1Mbyte를 초과하면 이미지가 변환되지 않는다.)
- summernote.org에서 관련 js파일을 배포
- <form> => textarea에 이미지가 삽입되면 text로 encoding되어 back-end로 전송된다.
- method="get"인 경우에는 256자 이하의 소용량 문자열만 전송할 수 있다.
- 이미지를 전송하려면 반드시 method="post"로 해야 한다.
Servlet
- Java EE(Enterprise Edition) 중 웹 서비스를 하기 위해 CGI를 준수하여 제작된 기능
- CGI (Common Gateway Interface) : 일반 언어가 웹 서비스를 하기 위해 공통 방식을 정의한 것
속도가 느리다.
구조가 복잡하다.
디자이너와 개발자간의 업무구분이 어렵다.
C 언어가 CGI를 준수하여 만들면 C-CGI
Java 언어가 CGI를 준수하여 만들면 Servlet
- 서비스하기 복잡하다. ( DD : Deployment Descriptor 가 필요하다 )
Web browser는 HTML만 실행 할 수 있다. class를 실행하려면 설정이 더 필요
* java로 Web Service하기 위한 폴더 구조
- web root에서 web-in를 제외한 나머지 폴더에선 web browser에서 직접 호출 가능
* Servlet/JSP는 웹 클라이언트의 요청을 받아 동적으로 HTML을 생성하는 언어
- Servlet/JSP는 WAS에 의존성이 있다.(WAS가 반드시 존재)
* WAS(Web Application Server)
- 웹의 요청을 받고 HTML을 생성하여 접속자에게 응답해주는 프로그램 필요
*Servlet 흐름
Servlet 작성법
- 내가 만든 클래스가 웹 서비스를 해야 된다면, CGI를 준수하여 클래스를 작성해야 한다.
=> 문제 : CGI를 그대로 구현하기 어렵다. => 이미 구현한 클래스를 사용하면 된다.
1. HttpServlet을 상속(내가 만든 클래스가 웹 서비스 가능)
public class Test extends HttpServlet{
2. 웹 요청방식을 처리할 수 있는 method를 Override한다.
<form method="get | post">
요청방식
* get
- 웹 브라우저의 주소 창으로 데이터를 전송한다.
- 256자 이하의 소용량 문자열 데이터만 전송 가능
- 보안에 취약하다.(보안이 중요하지 않은 데이터를 전송한다.)
- 속도는 빠르다.
* post
- HTTP Protocol을 사용하여 데이터를 전송한다.
- binary 데이터로 전송(대용량 데이터 전송 가능)
- 보안이 좋다.(중요 정보, 파일을 전송)
- 속도는 느리다.
* get방식요청 => doGet method를 Override 하여 처리
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException,ServletException{
* post방식요청 => doPost method를 Override하여 처리
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException,ServletException{
* get방식, post방식이든 모든 방식을 처리
protected void service(HttpServletRequest request, HttpServletResponse response)
throws IOException,ServletException{
3. 응답방식 설정(접속자에게 제공할 형식을 설정)
- MIME type설정(tomcat에서 응답해줄 수 있는 파일 목록 web.xml 설정)
response.setContentType("text/html;charset=UTF-8");
* Multipurpose Internet Mail Extensions
-인터넷에서 데이터를 송,수신하기위해 정해놓은 규약
4. 응답할 데이터를 내보내기 위한 출력 스트림을 받는다.
PrintWriter out= response.getWriter();
5. 응답할 내용을 만들어서 출력스트림으로 내보낸다.
out.println("<html>...");
*생성된 class파일을 web browser에서 인식하게 만들기위해 DD에 등록해야 한다.
WEB-INF/web.xml에 등록
1. 서블릿 등록
<servlet>
<servlet-name>객체명</servlet-name>
<servlet-class>패키지명.클래스명</servlet-class>
</servlet>
2. URL 매핑(web browser에서 클래스를 사용할 수 있도록 다른 이름으로 연결시켜두는 것)
<servlet-mapping>
<servlet-name>객체명</servlet-name>
<url-pattern>/웹브라우저에서인식할 이름</url-pattern>
</servlet-mapping>
'성장 일기 > 쌍용교육센터' 카테고리의 다른 글
0330/지시자, 내장 객체 (0) | 2023.03.30 |
---|---|
0329/JSP (0) | 2023.03.30 |
0307/each 함수 (0) | 2023.03.07 |
0306/jQuery event (0) | 2023.03.06 |
0303/jQueryObject 함수 (0) | 2023.03.06 |