Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 자바
- 정보처리기사
- java
- 파이선
- 정처기설명
- spring
- 자바의정석
- 정보처리기사필기
- 이것이자바다
- PYTHON
- 스프링
- 자바의정석요약
- 정처기예상문제
- 게시판만들기
- CRUD구현
- 소프트웨어개발
- 어노테이션
- 정처기공부
- 프로그래머스
- 소프트웨어설계
- springboot
- 게시판프로젝트
- 스프링부트
- 게시판
- function
- 정처기필기
- 파이썬
- CRUD
- 코딩테스트
- 정처기
Archives
- Today
- Total
Helmi
JSP를 이용해서 간단한 회원가입 만들기(db:mysql) 본문
오랜만에 시간이 나서 코딩을 다시 해보는중이다!ㅎㅎ
예정과 다르게 다른 분야로 취직해서 코딩 할 일이 없지만.. 취미로 꼭 해보고 싶었다~
> 기본이 되는 db (mysql) 새계정 만든 후 진행하였다.
실수로 패키지명 시작을 소문자로해버린...ㅠㅠㅠ 바부..
기본 언어 : java11, jsp
DB : mysql
1. userDTO.java
package user;
public class userDTO {
String userID;
String userPassword;
public String getUserID() {
return userID;
}
public void setUserID(String userID) {
this.userID = userID;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
}
아주 간단하게 아이디랑 패스워드만
2. userDAO.java
package user;
import java.sql.Connection;
import java.sql.PreparedStatement;
import util.DatabaseUtil;
public class userDAO {
public int join(String userID, String userPassword) {
String SQL = "INSERT INTO USER VALUES (?,?)";
try {
Connection conn=DatabaseUtil.getConnection();
PreparedStatement pstmt = conn.prepareStatement(SQL);
pstmt.setString(1,userID);
pstmt.setString(2,userPassword);
return pstmt.executeUpdate();
} catch(Exception e) {
e.printStackTrace();
}
return -1;
}
}
mysql에서 userID, userPassword 받는거, 예외처리 해줌
3. DatabaseUtil.java
package util;
import java.sql.Connection;
import java.sql.DriverManager;
public class DatabaseUtil {
public static Connection getConnection() {
try {
String dbURL = "jdbc:mysql://localhost:3306/JavaStudy_Board";
String dbID ="root";
String dbPassword="1234";
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection(dbURL,dbID,dbPassword);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
mysql 연동해줬다
4. index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Main</title>
</head>
<body>
Welcome to the Main!
<form action="./userJoinAction.jsp" method="post">
<input type="text" name="userID">
<input type="password" name="userPassword">
<input type="submit" value="회원가입">
</form>
</body>
</html>
5. userJoinAction.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="user.userDTO" %>
<%@ page import="user.userDAO" %>
<%@ page import="java.io.PrintWriter"%>
<%
request.setCharacterEncoding("UTF-8");
String userID = null;
String userPassword = null;
if(request.getParameter("userID") != null) {
userID=(String) request.getParameter("userID");
}
if(request.getParameter("userPassword") != null) {
userPassword = (String) request.getParameter("userPassword");
}
//null겂일 때, 입력 안된 사항 있음을 알리는 알람과 함께 뒷 페이지로 가도록 설정
if(userID == null || userPassword == null) {
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('입력이 안된 사항이 있습니다.');");
script.println("history.back();");
script.println("</script>");
script.close();
return;
}
//null값 아닐 시 - 가입 성공시
userDAO userDAO = new userDAO();
int result = userDAO.join(userID,userPassword);
if(result==1){
PrintWriter script = response.getWriter();
script.println("<script>");
script.println("alert('회원가입에 성공했습니다.');");
script.println("location.href='index.jsp';");
script.println("</script>");
script.close();
return;
}
%>
여기서 회원가입 처리해줌.. 될시, 안될시 등.. if 구문 활용!
6. 최종결과(두둥!)
정말..간단하게..ㅋㅋㅋㅋㅋㅋ 아이디, 비번 치는 정도만 만들었다
제대로 입력하면 이렇게 성공창 뜬다!
정상적으로 mysql에 들어왔다
코드는 인프런 강의에서 참고했는데,
이상하게 회원가입 실패 알람이 안떠서 그거 고오민 해봐야겠다ㅠ