🍁아이디 중복 검사 구현 Ajax는 데이터를 전송해도 페이지 새로고침과 화면 깜박임이 발생하지 않기 때문에 화면에 메시지를 띄우는 작업을 하기에 적합하다. select * from tblUser; 기본 코드 아이디 중복 검사 이름 아이디 작업 과정 1. 데이터 가져오기 (id) 2. DB 작업 (중복 체크) 3. 결과 반환 ex06.jsp 아이디 중복 검사 이름 아이디 아이디 우회 가입 방지 아이디를 복사 붙여넣기하여 가입하는 것을 방지하기 위해 disabled 속성을 부여한다. 아이디 중복 검사를 해서 사용할 수 있다는 결론이 난 경우에만 가입 버튼을 누를 수 있게 한다. $('#regBtn').prop('disalbed', false); 그리고 사용 가능한 아이디일 경우 disabled를 해제한다. ..
🍁데이터 전송 일반적으로 데이터를 가져오기만 할 때는 GET, 데이터를 보내기도 할 때에는 POST를 사용한다. success는 데이터를 수신하는 용도이기 때문에, 데이터를 보내기만 하고 가져오지 않을 때 return값이 없으므로 success가 필요 없다. 그래서 error만을 구현한다. 기본 코드 Ajax 데이터 보내는 방법 이름 나이 성별 남자 여자 주소 전화 단일 데이터 전송 data: 'name=' + $('#name').val() data를 'key=value' 형태로 작성하여 단일 데이터를 전송할 수 있다. 위 코드는 name을 전송한다. $('#btn').click(function() { //1. 단일 데이터 전송 $.ajax({ type: 'POST', url: '/ajax/ex05dat..
[JDBC] Ajax (Asynchronous JavaScript and XML) 🍁Ajax Ajax는 비동기 방식으로 자바스크립트를 사용해서 서버와 데이터를 통신하는 기술을 의미하며, XML 형식으로 데이터를 주고받는다. 화면 깜박임 없이 데이터를 주고받을 수 있는 기술이다. isaac-christian.tistory.com Ajax에 대해서는 위 글을 참고한다. 타입에 따라서 돌려받을 데이터 형식(Text, XML, JSON)을 결정하여 각각의 작업 과정을 확인해 보도록 하자. 🍁Text 단일 데이터 Ex04.java package com.test.ajax.controller; import java.io.IOException; import javax.servlet.RequestDispatcher; i..
🍁jQuery로 개량하여 구현 ajax 메서드 $.ajax(); jQuery 함수를 $로 적고, 바로 .을 찍으면 ajax 메서드가 나타난다. ajax는 태그와 관련된 기능이 아니라 독립적인 자바스크립트 기능이기 때문에 어떤 태그를 넣기가 애매하다. 독립적으로 ajax가 존재하도록 만들어야 하지만, 그냥 ajax();로 만들면 일반적인 함수인지 독립적인 함수인지 알 수 없기 때문에 앞에 jQuery를 붙여서 사용하는 것이다. success 이벤트 ajax 메서드에는 페이지 요청 정보를 작성하며, 안전한 상황에서만 작업을 수행해야 한다. 그리고 onreadystatechange에서 readyState(4) + status(200)인 상황일 때 안전한 상황이라고 했는데, success: function(re..
🍁순수 자바스크립트로 구현 Ajax를 사용해서 서버로 데이터를 요청하고 응답받는 게 가능하다. 이를 구현하기 위해서는 Ajax 객체를 먼저 만들어야 한다. Ajax 객체 생성 const ajax = new XMLHttpRequest(); //서버와 데이터를 송수신(전화기) 서버와 통신하는 Ajax 객체를 생성한다. 이 객체가 전화기의 역할을 하여 서버와 송수신할 수 있게 된다. open, send 메서드 // ajax.open('GET', '서버쪽 프로그램 주소'); ajax.open('GET', '/ajax/ex02.txt'); ajax.send(); ajax에는 open이라는 메서드가 있다. 이때 form 태그의 GET과 open 메서드의 GET은 같다. 서버와 통신을 하기 위해서 GET 방식으로 통..
🍁Ajax Ajax는 비동기 방식으로 자바스크립트를 사용해서 서버와 데이터를 통신하는 기술을 의미하며, XML 형식으로 데이터를 주고받는다. 화면 깜박임 없이 데이터를 주고받을 수 있는 기술이다. 서버 통신 요구사항 구현 프로젝트 생성 Dynamic Web Project: AjaxTest Contextr oot: ajax Generate web.xml deployment descriptor 체크 com.test.ajax 패키지 생성 1. com.test.ajax.controller 패키지 DBUtil.java Ex01.java Ex01Data.java 2. com.test.ajax.repository 패키지 AjaxDAO.java 3. com.test.ajax.model 패키지 WEB-INF 폴더 1. ..
🍁Selenium 셀레니움은 자동화 테스트를 하는 도구이다. 이러한 테스트 자동화 도구는 사이트를 만들고 나서 올바르게 동작하는지를 사람 대신에 서핑하면서 제품을 테스트 하는 프로그램을 의미한다. 셀레니움을 사용하기 위해서는 셀레니움 라이브러리와 브라우저 드라이버가 필요하다. 1. 셀레니움 라이브러리 https://www.selenium.dev/ Selenium Selenium automates browsers. That's it! www.selenium.dev Java Stable: 4.14.1 (October 12, 2023)를 다운로드 받는다. lib 폴더 내의 라이브러리를 포함한 61개의 라이브러리를 모두 프로젝트 라이브러리 폴더로 이동한다. 2. 브라우저 드라이버 https://chromedri..
🍁jSoup https://jsoup.org/ jsoup: Java HTML parser, built for HTML editing, cleaning, scraping, and XSS safety jsoup: Java HTML Parser jsoup is a Java library for working with real-world HTML. It provides a very convenient API for fetching URLs and extracting and manipulating data, using the best of HTML5 DOM methods and CSS selectors. jsoup implements the WHATWG H jsoup.org jsoup-1.16.2.jar 파일을 ..