일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 |
- VS Code
- 노션 데이터베이스 전환
- 인라인 데이터베이스
- 노션 하위 페이지
- 노션 텍스트 블록
- D2coding 폰트
- D2Coding
- Notion
- D2coding 폰트 다운로드
- visual studio code
- 노션 데이터베이스 활용
- 노션 데이터베이스
- 노션
- 전체 페이지 데이터베이스
Crescendo Code
5월 9일 (화) - [ Core의 여러가지 기능 및 예제 / EL, JSTL을 통한 우편번호 검색기 / Dynamic → Maven 프로젝트 전환 ] 본문
5월 9일 (화) - [ Core의 여러가지 기능 및 예제 / EL, JSTL을 통한 우편번호 검색기 / Dynamic → Maven 프로젝트 전환 ]
Crecok 2023. 5. 9. 16:37◆ 이전 수업 개념
▶ 상태유지 (값 보관) - HashMap 형태로 보관
1. pageContext
2. request (★)
- model2
3. session (★)
- 로그인 검사
- 장바구니 (임시로 저장할 장소)
- 세션의 파기 : invalidate
- 세션과 쿠키를 비교하여 적재적소에 활용하는것이 좋다.
4. application
▶ 공통 메서드
- setAttribute / getAttribute / removeAttribute
▶ 회원관리 흐름 (DFD)
- 벤치마킹을 통해 구조를 파악한다.
1. 로그인 전
▷ 회원 가입 : 아이디 중복 검사 / 회원 가입 인증 ( SMS / Email )
▷ 로그인
- 자체 로그인 : DB검사 후 로그인 / 아이디, 비밀번호 찾기
- 소셜 로그인 : 구글 / 카카오 등 로그인
2. 로그인 후 ( session / cookie 정보 조회 )
▷ 로그 아웃
▷ 회원 정보
- 회원 정보 수정
- 비밀번호 변경 ( 주기적으로 변경 유도 )
▷ 회원 탈퇴
▷ 관리자 기능 (포트 변경) : 특정 아이디 / 비밀번호 로그인 시
▶ view page 변화 ( java + html → EL + (JSTL) + html )
1. EL ( Expression Language )
- Expression : <%= %> : out.println()
- 상태 저장소 : pageContext / request / session
- 서버 상태 : param / header
2. JSTL
- Custom Tag Library를 표준화 한 것
- 라이브러리를 가지고 있어야 한다.
- taglib 디렉티브를 사용해야 한다.
◆ JSTL
◈ Core 예제 1
▶ JSTLEx01 다이나믹 프로젝트 생성
▶ model1 패키지 - BoardTO 클래스 생성
package model1;
public class BoardTO {
private String subject;
private String writer;
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
System.out.println( "setSubject() 호출" );
this.subject = subject;
}
public String getWriter() {
return writer;
}
public void setWriter(String writer) {
System.out.println( "setWriter() 호출" );
this.writer = writer;
}
}
▶ jstl03.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="to" value="<%= new model1.BoardTO() %>" scope="page" />
<c:set target="${ to }" property="subject" value="제목" />
<c:set target="${ to }" property="writer" value="작성자" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
제목 : ${ to.subject }<br />
작성자 : ${ to.writer }<br />
</body>
</html>
◈ Core 예제 2
- 단순 조건문
▶ jstl04.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
시작<br />
<c:if test="true">
무조건 실행 <br />
</c:if>
<c:set var="country" value="korea" scope="page" />
<c:if test="${ country == 'korea' }">
대한민국 입니다. <br />
</c:if>
<c:if test="${ country != null }">
국가명 : <c:out value="${ country }" /><br />
</c:if>
끝<br />
</body>
</html>
◈ Core 예제 3
- if~ else if~ 에 해당
▶ jstl05.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
시작<br />
<c:set var="country" value="korea" scope="page" />
<c:choose>
<c:when test="${ country == 'korea' }">
<c:out value="${ country }" />는 춥다<br />
</c:when>
<c:when test="${ country == 'canada' }">
<c:out value="${ country }" />는 더 춥다<br />
</c:when>
<c:otherwise>
안춥다<br />
</c:otherwise>
</c:choose>
끝<br />
</body>
</html>
◈ Core 예제 4
- 반복문
▶ jstl06.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
시작<br />
<c:forEach var="i" begin="1" end="10" step="2">
Hello JSTL : ${ i }<br />
</c:forEach>
<br />
<c:forEach var="i" begin="1" end="3">
<c:forEach var="j" begin="1" end="3">
${ i } : ${ j }<br />
</c:forEach>
</c:forEach>
끝<br />
</body>
</html>
◈ Core 예제 5
- 위 예제들을 활용해 구구단 만들기
▶ gugudan.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table width="800" border="1" style="text-align:center">
<c:forEach var="i" begin="0" end="9">
<tr>
<c:forEach var="j" begin="0" end="9">
<c:choose>
<c:when test="${ i == 0 && j == 0 }">
<td></td>
</c:when>
<c:when test="${ i == 0 }">
<td>X<c:out value="${ j }"></c:out></td>
</c:when>
<c:when test="${ j == 0 }">
<td><c:out value=" ${ i }"></c:out>단</td>
</c:when>
<c:otherwise>
<td><c:out value="${i} X ${j} = ${ i*j }"></c:out></td>
</c:otherwise>
</c:choose>
</c:forEach>
</tr>
</c:forEach>
</table>
</body>
</html>
◈ Core 예제 6
- 배열과 반복문
▶ jstl07.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="intArr" value="<%= new int [] { 1, 2, 3, 4, 5 } %>" />
<c:out value="${ intArr[0] }" /><br />
<c:out value="${ intArr[1] }" /><br />
<hr />
<c:forEach var="data" items="${ intArr }" begin="2" end="4" varStatus="status">
${ data } / ${ status.index }<br />
</c:forEach>
<hr />
<c:set var="strArr" value='<%= new String [] { "11", "22", "33", "44", "55" } %>' />
<c:forEach var="data" items="${ strArr }">
${ data }<br />
</c:forEach>
<hr />
<c:set var="hm1" value="<%= new java.util.HashMap() %>" />
<c:set target="${ hm1 }" property="name" value="홍길동" />
<c:set target="${ hm1 }" property="today" value="<%= new java.util.Date() %>" />
<c:forEach var="data" items="${ hm1 }">
${ data.key } - ${ data.value }<br />
</c:forEach>
</body>
</html>
◈ Core 예제 7
- forTokens ( 구분자로 나눈 뒤 반복 출력 )
▶ jstl08.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:forTokens var="token" items="1, 2, 3, 4, 5" delims=",">
${ token }<br />
</c:forTokens>
<hr />
<c:forTokens var="token" items="홍길동, 고길동, 김길동" delims=",">
${ token }<br />
</c:forTokens>
</body>
</html>
◈ Core 예제 8
- sendridirect와 같은 기능
▶ jstl09.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%-- <c:redirect url="https://www.daum.net" /> --%>
<c:redirect url="https://search.daum.net/search">
<c:param name="w" value="tot" />
<c:param name="q" value="카타르월드컵" />
</c:redirect>
◈ Core 예제 9
- url 출력 기능
▶ jstl10.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:url var="url1" value="./list.do" />
${ url1 }<br />
<c:url var="url2" value="https://search.daum.net/search">
<c:param name="w" value="tot" />
<c:param name="q" value="카타르월드컵" />
</c:url>
${ url2 }<br />
</body>
</html>
- q= 이후의 문자는 다국어 URL Encoding 과정의 문자로 표기된다.
▶ 아래 태그 추가
<c:redirect url="${ url2 }" />
- daum 사이트의 카타르월드컵 검색 페이지로 이동된다.
◈ Core 예제 10 (★)
- import 기능
▶ jstl11.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
시작 <br />
<c:import url="./jstl10.jsp" />
끝 <br />
◈ Core 예제 11 (★)
- import 기능 2
- 오픈 API의 XML 태그 정보도 가져올 수 있다.
▶ jstl12.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%-- <c:import var="htmlData" url="./jstl10.jsp" /> --%>
<%-- <c:import var="htmlData" url="https://m.daum.net" charEncoding="utf-8" /> --%>
<c:url var="url" value="http://kobis.or.kr/kobisopenapi/webservice/rest/boxoffice/searchWeeklyBoxOfficeList.xml">
<c:param name="key" value="f5eef3421c602c6cb7ea224104795888" />
<c:param name="targetDt" value="20230506" />
</c:url>
<c:import var="htmlData" url="${ url }" charEncoding="utf-8" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<textarea rows="50" cols="800">
${ htmlData }
</textarea>
</body>
</html>
◈ Core 예제 12
- DB 연동 및 DB 테이블에 값을 넣는 방법
▶ sample DB → dept2 테이블 생성 ( dept 테이블 복사 )
create table dept2 as select * from dept where 1 != 1;
▶ jstl13.jsp 파일 생성
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<s:setDataSource
var="ds"
url="jdbc:mariadb://localhost:3306/sample"
driver="org.mariadb.jdbc.Driver"
user="root"
password="123456"
scope="page" />
${ ds }<br />
<%--
<s:update
var="result"
dataSource="${ ds }"
sql="insert into dept2 values (10, '개발부', '서울')" />
<s:update var="result" dataSource="${ ds }">
insert into dept2 values (10, '개발부', '서울')
</s:update>
<s:update var="result" dataSource="${ ds }">
insert into dept2 values (?, ?, ?)
<s:param value="30" />
<s:param value="생산부" />
<s:param value="대전" />
</s:update>
--%>
<c:set var="deptno" value="50" />
<c:set var="dname" value="홍보부" />
<c:set var="loc" value="인천" />
<s:update var="result" dataSource="${ ds }">
insert into dept2 values (?, ?, ?)
<s:param value="${ deptno }" />
<s:param value="${ dname }" />
<s:param value="${ loc }" />
</s:update>
${ result }<br />
▶ 실행 및 DB 확인
◈ Core 예제 13
- DB 안의 데이터 추출
▶ jstl14.jsp 파일 생성 및 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<s:setDataSource
var="ds"
url="jdbc:mariadb://localhost:3306/sample"
driver="org.mariadb.jdbc.Driver"
user="root"
password="123456"
scope="page" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:query var="rs" dataSource="${ ds }">
select deptno, dname, loc from dept2
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row.deptno }</td>
<td>${ row.dname }</td>
<td>${ row.loc }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
▶ ${ row.컬럼이름 } 부분을 아래와 같이 표기해도 동일한 결과를 출력할 수 있다.
<td>${ row["deptno"] }</td>
<td>${ row["dname"] }</td>
<td>${ row["loc"] }</td>
◈ Core 예제 14
- context.xml을 통한 DB 연결
▶ context.xml 가져온 뒤 META-INF 폴더 안에 넣고 작성
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resource
name="jdbc/mariadb1"
auth="Container"
type="javax.sql.DataSource"
driverClassName="org.mariadb.jdbc.Driver"
url="jdbc:mariadb://localhost:3306/sample"
username="root"
password="123456" />
</Context>
▶ jstl16.jsp 파일 생성 후 실행 (1)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<%--
<s:setDataSource
var="ds"
dataSource="jdbc/mariadb1"
scope="page" />
--%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:query var="rs" dataSource="jdbc/mariadb1">
select deptno, dname, loc from dept2
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row["deptno"] }</td>
<td>${ row["dname"] }</td>
<td>${ row["loc"] }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
▶ jstl16.jsp 파일 생성 후 실행 (2)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<s:setDataSource
var="ds"
dataSource="jdbc/mariadb1"
scope="page" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:query var="rs" dataSource="${ ds }">
select deptno, dname, loc from dept2
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row["deptno"] }</td>
<td>${ row["dname"] }</td>
<td>${ row["loc"] }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
- 두 코드 다 동일한 결과를 얻을 수 있다.
◈ Core 예제 15
- context.xml을 통한 DB 연결 + where 절을 추가한 데이터 추출
▶ jstl17.jsp 파일 생성 후 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<%--
<s:setDataSource
var="ds"
dataSource="jdbc/mariadb1"
scope="page" />
--%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:query var="rs" dataSource="jdbc/mariadb1">
select deptno, dname, loc from dept2 where deptno=?
<s:param value="10" />
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row["deptno"] }</td>
<td>${ row["dname"] }</td>
<td>${ row["loc"] }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
◈ Core 예제 16
- emp 테이블에서 s로 시작하는 사원들의 정보 얻기 ( 사원번호 / 사원이름 / 직책 / 급여 )
▶ jstl18.jsp 파일 생성 후 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<s:query var="rs" dataSource="jdbc/mariadb1">
select empno, ename, job, sal from emp where ename like ?
<s:param value="s%" />
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row.empno }</td>
<td>${ row.ename }</td>
<td>${ row.job }</td>
<td>${ row.sal }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
◈ Core 예제 17
- 문자열 관련 함수
▶ jstl19.jsp 파일 생성 후 실행
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="str1" value=" Hello JSTL, Hello JSTL " />
문자열의 길이 : ${ fn:length( str1 ) }<br />
문자열 추출 : ${ fn:substring( str1, 3, 6 ) }<br />
여백 제거 : ${ fn:trim( str1 ) }<br />
여백을 제거하지 않은 문자열 길이 : ${ fn:length( str1 ) }<br />
여백을 제거한 문자열 길이 : ${ fn:length( fn:trim( str1 ) ) }<br />
치환 : ${ fn:replace( str1, " ", "-" ) }<br />
검색 1 : ${ fn:indexOf( str1, "JS" ) }<br />
검색 2 : ${ fn:startsWith( str1, " " ) }<br />
검색 3 : ${ fn:startsWith( str1, "He" ) }<br />
대소문자 : ${ fn:toUpperCase( str1 ) }<br />
</body>
</html>
◈ 우편번호 검색기 만들기
- EL, JSTL 을 활용해서 우편번호 검색기 만들기
▶ zipcode.jsp 파일 생성
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="s" uri="http://java.sun.com/jsp/jstl/sql" %>
<%
request.setCharacterEncoding( "utf-8" );
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="zipcode.jsp" method="post">
동이름 <input type="text" name="dong" />
<input type="submit" value="동이름 검색" />
</form>
<br><hr><br>
<c:if test="${ param.dong != null }">
<s:setDataSource
var="ds"
dataSource="jdbc/mariadb2"
scope="page" />
<s:query var="rs" dataSource="${ ds }">
select zipcode, sido, gugun, dong, ri, bunji from zipcode where dong like ?
<s:param value="${ param.dong }%" />
</s:query>
<table width="600" border="1">
<tr>
<c:forEach var="columnName" items="${ rs.columnNames }">
<td>${ columnName }</td>
</c:forEach>
</tr>
<c:forEach var="row" items="${ rs.rows }">
<tr>
<td>${ row.zipcode }</td>
<td>${ row.sido }</td>
<td>${ row.gugun }</td>
<td>${ row.dong }</td>
<td>${ row.ri }</td>
<td>${ row.bunji }</td>
</tr>
</c:forEach>
</table>
</c:if>
</body>
</html>
▶ context.xml 확인 후 실행
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resource
name="jdbc/mariadb2"
auth="Container"
type="javax.sql.DataSource"
driverClassName="org.mariadb.jdbc.Driver"
url="jdbc:mariadb://localhost:3306/project"
username="project"
password="1234" />
</Context>
◆ Dynamic Web Project → Maven Project 로의 변환
▶ 다이나믹 프로젝트 WebAppEx01 생성
▶ 프로젝트 우클릭 - Configure - Convert to Maven Project
▶ Group Id / Arifact Id 설정 후 Finish
▶ https://mvnrepository.com 에서 라이브러리 3개의 태그를 복사 후 pom.xml에 붙여넣기
1. JSTL : https://mvnrepository.com/artifact/jstl/jstl/1.2
2. Standard : https://mvnrepository.com/artifact/taglibs/standard/1.1.2
3. Mariadb : https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client/3.1.4
▶ pom.xml
- <dependencies> 태그 생성 후 그 안에 위 3개의 라이브러리 태그 삽입
<dependencies>
<!-- https://mvnrepository.com/artifact/jstl/jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/taglibs/standard -->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>3.1.4</version>
</dependency>
</dependencies>
▶ 우편번호 검색기 프로젝트의 context.xml 파일 붙여넣기
▶ 우편번호 검색기 프로젝트의 파일 ( zipcode.jsp ) 복사해서 붙여넣은 후 실행 → 정상 작동 확인
'KIC 백엔드 수업' 카테고리의 다른 글
5월 11일 (목) - [ myBatis 어노테이션 기법 / 우편번호 검색기 / Simple 게시판 검색기능 구현 ] (1) | 2023.05.12 |
---|---|
5월 10일 (수) - [ myBatis 프레임워크를 통한 우편번호 검색기 / Simple 게시판 구현 ] (1) | 2023.05.10 |
5월 8일 (월) - [ 로그인 상태값 유지 / page / request / session / application / Cookie / EL / JSTL - Core ] (0) | 2023.05.08 |
5월 4일 (목) - [ MVC - Model2 URL 방식 예제, 게시판 ] (0) | 2023.05.04 |
5월 3일 (수) - [] (0) | 2023.05.03 |