JDBC PreparedStatement Statement 클래스보다 기능이 향상된 클래스 코드의 안정성과 가독성이 높다. 인자 값으로 전달이 가능하다. 문법 Connection conn = DriverManager.getConnection("url","id","pw") PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM TABLE"); ResultSet rs = pstmt2.executeQuery(); 기본 문법은 Statement와 다를게 없지만 쿼리의 내용을 동적으로 생성해야 할 때 값을 가독성이 좋은 형태로 넣을 수 있다. 예시 Statement int min_salary = 1000; String min_id = 110; stmt = ..
JSP / Encoding JSP에서 코드 작성하고 get, post방식으로 데이터를 주고받을 때 한글이 깨지는 경우가 많다. POST와 GET방식에 따라 설정할 수 있는 방법이 다르다. GET방식 한글 인코딩 1. 이클립스 Java EE / Servers / server.xml파일의 Connector 부분에 URIEncoding 추가 기본적으로는 적혀있지 않으며 적혀있지 않는 경우 UTF-8이 기본값이다. 2. 이클립스 파일 생성시 기본 인코딩을 UTF-8로 변경 (혹은 EUC-KR로 변경 할거라면 Connector 부분에 UTF-8을 EUC-KR로 바꿔주자.) 이클립스 window -> Preferences -> encoding검색 -> Web 내부의 CSS, HTML, JSP 파일의 인코딩을 UTF..
JDBC 프로젝트에 ojdbc 라이브러리를 추가했으면 이제 자바코드로 오라클을 다룰 수 있다. ojdbc 라이브러리 추가방법 https://itjy2.tistory.com/220 ojdbc 드라이버 로드 Class.forName("oracle.jdbc.driver.OracleDriver"); Class.forName을 사용하여 해당 DB사의 jdbc 드라이버를 로드 한다. ClassNotFoundException이 발생할 수 있다. DB와 연결 생성 Connection conn = DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521/orcl", "hr", "hr"); DriverManager 클래스를 통해 DB와의 연결을 생성한다. DB접속에 ..
Java / JDBC JDBC 자바에서 DB 프로그래밍을 하기 위해 사용하는 API 어떤 DB와도 호환할 수 있도록 설계 되어있다. Java부분의 소스는 어떤 DB를 사용하더라도 일정하다. DB를 제작한 쪽에서 jdbc에서 요구하는 형식을 맞추어 개발하기 때문에 새로운 DB도 기존의 jdbc로 사용할 수 있다. OJDBC 오라클 DB가 JDBC API와 소통하기 위해 만든 라이브러리 오라클 DB가 설치된 폴더에 포함되어 있다. 프로젝트에 오라클의 jdbc 드라이버 추가하기 프로젝트 우클릭 -> Build Path -> Configure Build Path Add External JARs 클릭 설치된 오라클의 ojdbc8.jar 선택 -> Apply and Close ojdbc는 아래 경로에 존재한다. 1..
JSP에서 특정페이지로 이동시키는 방법으로 forward, redirect가 있다. forward request 스코프에 담긴 값이 유효 (전달받은 request,response를 유지하고 페이지를 넘긴다.) 이동된 url이 사용자에게 보여지지 않는다. forward로 페이지 넘기기 @WebServlet(urlPatterns = {"/page/controller"}) public class PageNumController extends HttpServlet{ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 넘길 페이지..
request HttpServletRequest에는 사용자의 요청에 대한 모든 정보가 담겨 있다. 그 중에서 form을 통해 실려온 데이터는 요청 객체의 parameter에 담겨 있다. HttpServletRequest 내의 메소드로 사용자의 요청에 대한 값들을 확인하거나 설정할 수 있다. 예제 JSP에서 이름, 거주지, 취미를 입력 받아 값 출력하기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Insert title here 이름 거주지 수도권 지방 취미 게임 영화 Colored by Color Scripter cs 위 name태그의 값들을 서블릿에 전달 getParameter() jsp태그 내의 name 속성에 ..
JSP 스크립트 태그 스크립트 태그는 JSP페이지에서 자바코드를 사용하고 싶을 때 사용하는 문법이다. 선언문 (declaration) 변수나 메소드를 정의하는 영역 스크립트릿 (scriptlet) 모든 자바 코드를 사용할 수 있는 영역 표현식 (expression) 변수, 메소드 리턴값 등등 결과값을 문자열 형태로 출력 예제 JSP페이지에서 글자색, 배경색을 각각 빨간색으로 만들어주는 메소드를 선언후 사용 우선 JSP 페이지를 생성한다. 1 2 3 4 5 6 7 8 9 10 11 12 Insert title here Colored by Color Scripter cs 선언문을 사용하여 createRedText(), createBackgroundColorRedText() 라는 메소드를 두개 생성 style..
JSP / Servlet Servlet 클라이언트의 요청을 처리하고 결과를 응답해주는 자바 웹 프로그래밍 기술 웹 사이트가 클라이언트에게 보이는 과정 (1) 클라이언트가 호스트에게 원하는 웹 페이지를 보여달라고 요청. 요청할 때 원하는 페이지가 무엇잇지 웹 주소(URL)에 적어서 보낸다. (2) 사용자의 요청이 톰캣(WAS)에 도착 Apache-Tomcat에 등록되어있는 URL매핑들중 일치하는 자원을 찾는다. (3) 등록된 자원들 중 사용자의 요청에 따라 다른 결과들이 나오는 페이지를 동적 웹 페이지라고 한다. (4) 클라이언트의 요청이 올바른 요청이라면(톰캣에 등록된 자원이 맞다면) 해당 자원을 만들거나 이미 있는 자원을 응답한다.(Servlet 프로그램 실행) (5) 웹 서버에서 응답한 자원이 요청 ..
톰캣 연동 1. 이클립스에서 Java EE 바꾼뒤 Servers탭 선택 만약 Servers가 보이지 않는다면 Window -> show view -> Servers를 선택해서 볼 수 있다. 1. Servers 탭 아래의 파란글씨 클릭 2. 본인이 설치한 톰캣 버전 선택 3. next 1. 본인이 다운받은 톰캣폴더를 찾아서 선택 2. 계속 next 이후 finish
Java / Random Random Java에서 무작위 double타입의 랜덤 소수를 생성해주는 메소드이다. (0 ~ 1 사이의 랜덤 소수) Math.random()으로 접근해서 사용한다. 원하는 범위의 랜덤숫자 생성하는 방법 (int)(Math.random() * 45 + 1) // 1 ~ 45 (int)(Math.random() * 45) // 0 ~ 44 1. 실수가 아닌 정수형으로 생성하려면 형변환을 하거나, 반올림을 하면 된다. 2. random()뒤에 원하는 범위를 지정해준다 ex ) Math.random() * 최대값 + 최소값 (최소값을 지정 안하면 0부터 시작한다.) Random 클래스 좀 더 편리하게 랜덤값을 선택할 수 있는 기능들이 모여있는 클래스 사용하려면 Random클래스를 im..
1. File -> New -> Dynamic Web Project 2. Project name 설정 나머지는 서버 연동을 했다면 전부 자동으로 설정이 되어 있다. 3. Next 4. Generate web.xml ... 체크 후 Finish 테스트 1. 프로젝트 내부의 WebContent 혹은 webapp 우클릭 -> New -> JSP File 선택 2. 파일 이름 작성 후 Finish 3. 아무 내용이나 작성 4. Ctrl + F11을 누른후 서버를 선택 후 Finish를 누르면 실행이 된다. ( 설정해 놓은 서버가 하나밖에 없으면 그냥 아무것도 안누르고 Finish를 누르면 된다.) 페이지가 잘 나오는것을 확인할 수 있다.
JAVASCRIPT / MAP map 이란 ? 반복문을 돌며 배열 안의 요소들을 새로운 배열로 리턴한다. (매핑한다.) 어떻게 매핑할 지 정의한 함수를 전달하면 된다. forEach와 다른점은 새로운 Array를 반환한다. 예제1 const numbers = [45, 1, 9, 100, 55, 22, -37]; const map_result = numbers.map(myMapFunction); // 변수 선언하면서 map(func) 호출 // 함수 정의 function myMapFunction(value, index, array) { return value + 10; // 현재 value + 10 을 리턴한다 // ex > [1, 2, 3] 인 배열을 전달받았다면 [11, 12, 13]인 // 새로운 배..