1. Dao
package com.javalec.spring_test_member.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class MemDao {
DataSource dataSource;
public MemDao() {
try {
Context context = new InitialContext();
dataSource = (DataSource)context.lookup("java:comp/env/jdbc/oracle");
} catch (Exception e) {
e.printStackTrace();
}
}
public int login(String mem_uid, String mem_pwd) {
String sql = "SELECT MEM_PWD FROM MVC_MEMBER WHERE MEM_UID = ?";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
int re = -1;
String db_mem_pwd;
try {
conn = dataSource.getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, mem_uid);
rs = pstmt.executeQuery();
if (rs.next()) {
db_mem_pwd = rs.getString("MEM_PWD");
if (db_mem_pwd.equals(mem_pwd)) {
re = 1; // 아이디, 비밀번호 모두 일치
} else {
re = 0; // 비밀번호 불일치
}
System.out.println(db_mem_pwd);
System.out.println(mem_pwd);
} else {
re = -1; // 아이디 불일치
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if(rs != null) rs.close();
if(pstmt != null) pstmt.close();
if(conn != null) conn.close();
} catch (SQLException e2) {
e2.printStackTrace();
}
}
return re;
}
}
2. Controller
package com.javalec.spring_test_member.controller;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import com.javalec.spring_test_member.command.MemLoginService;
import com.javalec.spring_test_member.command.MemService;
@Controller
public class Memcontroller {
MemService memService;
@RequestMapping("/login")
public String login() {
System.out.println("=======> login()");
return "login";
}
@RequestMapping("/login_yn")
public String login_yn(HttpServletRequest request, Model model) {
System.out.println("=======> login_yn()");
model.addAttribute("request", request);
memService = new MemLoginService();
int re = memService.execute(model);
System.out.println(re);
if (re == 1) {
return "redirect:login_ok";
} else {
return "redirect:login";
}
}
@RequestMapping("/login_ok")
public String login_ok() {
System.out.println("=======> login_ok()");
return "login_ok";
}
}
3. Service
public interface MemService {
public int execute(Model model);
}
public class MemLoginService implements MemService{
@Override
public int execute(Model model) {
Map<String, Object> map = model.asMap();
HttpServletRequest request = (HttpServletRequest) map.get("request");
String uId = request.getParameter("mem_uid");
String pwd = request.getParameter("mem_pwd");
MemDao dao = new MemDao();
int re = dao.login(uId, pwd);
return re;
}
}
4. JSP 파일
// login.jsp
<body>
<form method="post" action="login_yn">
<table width="400" border="1">
<tr>
<td>사용자 ID</td>
<td>
<input type="text" name="mem_uid" />
</td>
</tr>
<tr>
<td>비밀번호</td>
<td>
<input type="text" name="mem_pwd" />
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="로그인" />
<input type="button" value="회원가입" />
</td>
</tr>
</table>
</form>
</body>
// login_ok.jsp
<body>
로그인 성공!
</body>
'java,jsp,spring > Spring' 카테고리의 다른 글
MyBatis (0) | 2022.10.14 |
---|---|
Spring Jdbc Template (0) | 2022.10.14 |
STS 한글 깨짐 현상 해결 (0) | 2022.10.14 |
Spring 프로젝트 설계 - 기본 게시판 (0) | 2022.10.11 |
Spring 기초 (5) (0) | 2022.10.11 |