티스토리 뷰
반응형
안녕하세요. Nerd-Lee입니다.
공부 내용은, 인프런 박매일님의[NarP Series]MVC 프레임워크는 내 손에[나프1탄]
을 참고하였습니다.
MVC 1단계인, Servlet 환경으로만 만들어보고, MVC 2단계로 넘어가고
나중에는 Spring Framework를 사용하는 방식의 강의입니다.
MVC 1단계는, Controller + Model 만을 사용하는 방식입니다.
1. 한글처리 방법
- 영어와는 다르게 한글은 한글자당 2byte를 가지고 있다. 영어는 1byte다. (이건 알고 있는 내용이니깐..)
이름에 한글을 입력하게 되면 다음과 같이 출력이 된다. - 그럼 한글이 깨지지 않게 하는 방법을 한 번 알아보도록 하자.
- 방법은 간단하다. 클라이언트에서 온 데이터는 request를 통해 전달받기 때문에, request의 인코딩 방식을
utf-8
로 변경해주면 된다. request.setCharacterEncoding("utf-8");
를 추가해주자
@WebServlet("/memberInsert.do")
public class MemberInsertController extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
// 1. 클라이언트에서 넘어온 파라미터 수집(VO에 하나의 정보로 묶어서 넣어주면 된다.)
String id = request.getParameter("id");
String password = request.getParameter("password");
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
String email = request.getParameter("email");
String phone = request.getParameter("phone");
// vo 수집은, 생성자로 해도 되고, Setter로 해도 된다.
//MemberVO vo = new MemberVO(id, password, name, age, email, phone);
MemberVO vo = new MemberVO();
vo.setId(id);
vo.setPassword(password);
vo.setAge(age);
vo.setName(name);
vo.setEmail(email);
vo.setPhone(phone);
System.out.println(vo.toString());
}
}
2. 데이터 베이스 연결
- 데이터베이스를 연결하기 위해서는, URL과, user, password가 필요하다.
- user와 password는 데이터베이스를 만들 때 생성한 이름과 암호를 변수에 넣어주면 되고
주소는 다음과 같이 찾을 수 있다. Data Source Explorer
-SQL 데이터베이스 오른쪽 마우스 클릭
-Properties
-Driver Properties
를 누르면, URL이 나온다.- 해당 URL을 복사해서, 변수에 저장한다.
- 그리고, DB회사에서 제공해주는 driver를 다운받거나, 전자정부 프레임워크를 사용한다면
maven
-repository
-mysql
-mysql-connector-java
-원하는 버전
에서mysql-connector-java-version
을WEB-INF
-lib
폴더에 복사해주면 된다. - 그 다음, Driver를 로딩해줘야 한다. MySQL은
com.mysql.jdbc.Driver
이다. Class.forName("com.mysql.jdbc.Driver")
을 try catch 문을 이용해, Driver 클래스를 찾고DriverManager.getConnection(URL, user, password);
를 해주면 되는데, getConnection은, 데이터베이스 연결정보들을 반환한다.
그게 바로 Connection 클래스형태로 반환을 하기 때문에, conn이란 변수에 반환된 값을 대입하면 된다.
3. 데이터베이스 Driver란?
- 대표적인 데이터베이스로,
MySQL
,ORACLE
,MS-SQL
이 있다.
그런데 만약 이 회사들이 사용하는 API가 다르다면 어떻게 될까?MySQL
로 만들어진 프로젝트에서 갑자기MS-SQL
로 바뀐다..? 그럼 하나하나 다시 전부 바꿔줘야하는가? 그건 아니다.
그래서 각자 프로그램에서 제공하는 것이 Driver다.
자바에서 제공하는 interface를 가지고, 각 DB 회사들은 자신들만의 클래스를 만든다.
그럼 해당 회사들이 그 클래스들을 제공하도록 하는 것이 바로Driver
가 된다.
그래서 자바 개발자들은, JDBC(java.sql)만 알면 되고, 각 회사에 맞는Driver
만 있으면 사용이 가능해진다.
- 연결이 되는 지 안되는 지는 다음 강의에서, insert 쿼리를 만들면서 확인을 해볼 것이다.
이 글이 도움이 되셨다면 댓글 부탁드립니다^^
다음 글로 찾아오겠습니다!
다음 글로 찾아오겠습니다!
반응형
'web & develop > 웹 공부' 카테고리의 다른 글
[MVC SPRING] 09. 회원리스트 가져오기(묶고(VO)-담고(List)) (0) | 2022.04.30 |
---|---|
[MVC SPRING] 08. 회원가입 구현하기 (0) | 2022.04.30 |
[MVC SPRING] 06. 회원관리 UI 및 파라미터 수집(VO) 하기 (0) | 2022.04.30 |
[MVC SPRING] 05. Controller에서 Model 분리하기 (0) | 2022.04.30 |
[MVC SPRING] 04. GET과 POST 요청 이해하기 (0) | 2022.04.30 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 스프링
- JSP
- 서블릿
- Git
- MVC
- spring boot
- baseofcoding
- 유니티3D
- unity3d
- 유니티
- CSS
- Vuforia
- Controller
- 게임프로그래밍
- 프리젠테이션 로직
- 안드로이드
- HTML
- Java
- Spring
- Unity
- Base Of Coding
- VR
- 비지니스 로직
- GitHub
- 프로그래밍
- 유니티로 배우는 C#
- Next.js
- 뷰포리아
- Servlet
- c#
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
글 보관함