2008. 10. 8. 17:41

프로그래머가 되는 방법


http://wiki.kldp.org/wiki.php/HowToBeAProgrammer


구직을 시작하기전에...
너 자신을 알라...

http://blog.naver.com/youngwerther?Redirect=Log&logNo=100049689574

http://bcho.tistory.com/entry/%EC%97%85%EA%B7%B8%EB%A0%88%EC%9D%B4%EB%93%9C%EB%90%9C-%EA%B0%9C%EB%B0%9C%EC%9E%90-%EB%90%98%EA%B8%B0


[리뷰]회사가 당신을 채용하지 않는 44가지 이유


[참고하라고 올려둔다.... 그냥 생각꺼리 던져주는 것만으로도 의미 있는 글들]
2008. 9. 26. 16:16

로그인, 회원가입, 정보수정, 탈퇴

MVC 모델을 통한 회원가입에 대한 페이지들입니다.
전체가 참조하게 될 web.xml / MemberBean.java / MemberDAO.java 파일 입니다.
데이터베이스는 MYSQL을 사용하였고 서블릿은 TOMCAT 5.5 버전입니다.
======== web.xml ========================================================
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">
  <display-name>Welcome to Test0922</display-name>
  <description>
     Welcome to Test0922
  </description>
 <servlet>
  <servlet-name>login.jsp</servlet-name>
  <jsp-file>/member/login.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>logout.jsp</servlet-name>
  <jsp-file>/member/logout.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>welcome.jsp</servlet-name>
  <jsp-file>/member/welcome.jsp</jsp-file>
 </servlet> 
 <servlet>
  <servlet-name>LoginServlet</servlet-name>
  <servlet-class>member.control.LoginServlet</servlet-class>
 </servlet>
 <servlet>
  <servlet-name>JoinMemberServlet</servlet-name>
  <servlet-class>member.control.JoinMemberServlet</servlet-class>
 </servlet>
 <servlet>
  <servlet-name>modify.jsp</servlet-name>
  <jsp-file>/member/modify.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>ModifyMemberServlet</servlet-name>
  <servlet-class>member.control.ModifyMemberServlet</servlet-class>
 </servlet>
 <servlet>
  <servlet-name>modifyok.jsp</servlet-name>
  <jsp-file>/member/modifyok.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>modifyfail.jsp</servlet-name>
  <jsp-file>/member/modifyfail.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>memberout.jsp</servlet-name>
  <jsp-file>/member/memberout.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>OutMemberServlet</servlet-name>
  <servlet-class>member.control.OutMemberServlet</servlet-class>
 </servlet>
 <servlet>
  <servlet-name>outmemberok.jsp</servlet-name>
  <jsp-file>/member/outmemberok.jsp</jsp-file>
 </servlet>
 <servlet>
  <servlet-name>outmemberfail.jsp</servlet-name>
  <jsp-file>/member/outmemberfail.jsp</jsp-file>
 </servlet> 
 <servlet-mapping>
  <servlet-name>login.jsp</servlet-name>
  <url-pattern>/login.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>logout.jsp</servlet-name>
  <url-pattern>/logout.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>welcome.jsp</servlet-name>
  <url-pattern>/welcome.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>LoginServlet</servlet-name>
  <url-pattern>/login.do</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>JoinMemberServlet</servlet-name>
  <url-pattern>/joinmember.do</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>modify.jsp</servlet-name>
  <url-pattern>/modify.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>ModifyMemberServlet</servlet-name>
  <url-pattern>/modifymember.do</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>modifyok.jsp</servlet-name>
  <url-pattern>/modifyok.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>modifyfail.jsp</servlet-name>
  <url-pattern>/modifyfail.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>memberout.jsp</servlet-name>
  <url-pattern>/memberout.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>OutMemberServlet</servlet-name>
  <url-pattern>/outmember.do</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>outmemberok.jsp</servlet-name>
  <url-pattern>/outmemberok.jsp</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>outmemberfail.jsp</servlet-name>
  <url-pattern>/outmemberfail.jsp</url-pattern>
 </servlet-mapping> 
</web-app>
==========================================================================
회원가입 항목인 필드들을 정의 하였습니다.
======== MemberBean.java ================================================
package member.model;
public class MemberBean {
 protected String num;
 protected String name;
 protected String id;
 protected String passwd;
 protected String tel;
 protected String add;
 public String getAddr() {
  return add;
 }
 public void setAddr(String add) {
  this.add = add;
 }
 public String getId() {
  return id;
 }
 public void setId(String id) {
  this.id = id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getNum() {
  return num;
 }
 public void setNum(String num) {
  this.num = num;
 }
 public String getPasswd() {
  return passwd;
 }
 public void setPasswd(String passwd) {
  this.passwd = passwd;
 }
 public String getTel() {
  return tel;
 }
 public void setTel(String tel) {
  this.tel = tel;
 } 
}
==========================================================================
데이터베이스 연결 및 처리부분에 대한 DAO 파일입니다.
======== MemberDAO.java ================================================
package member.model;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class MemberDAO {
  public MemberBean memberInfo(String id){
  MemberBean temp=null;
  String sql="select * from member where id=?";
  PreparedStatement  pstmt=null;
  ResultSet rest=null;
  try{
   pstmt=conn.prepareStatement(sql);
   pstmt.setString(1,id);
   rest=pstmt.executeQuery();
   if(rest.next()){
    temp=new MemberBean();
    temp.setNum(rest.getString(1));
    temp.setName(rest.getString(2));
    temp.setId(rest.getString(3));
    temp.setPasswd(rest.getString(4));
    temp.setTel(rest.getString(5));
    temp.setAddr(rest.getString(6));
   }
  }catch (Exception e) {
   e.printStackTrace();
  }
  return temp;
 }
 public boolean memberJoin(MemberBean mb){
  PreparedStatement pstmt=null;
  String sql3="insert into member values(?,?,?,?,?,?);";
  try {
   pstmt=conn.prepareStatement(sql3);
   pstmt.setString(1, mb.getNum());
   pstmt.setString(2, mb.getName());
   pstmt.setString(3, mb.getId());
   pstmt.setString(4, mb.getPasswd());
   pstmt.setString(5, mb.getTel());
   pstmt.setString(6, mb.getAddr());
   pstmt.executeUpdate();
   return true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return false;
 }
 public boolean memberModify(MemberBean mb){
  PreparedStatement pstmt=null;
  String sql4="update member set name=?, id=?, passwd=?, tel=?, addr=? where num=?;";
  try {
   pstmt=conn.prepareStatement(sql4);   
   pstmt.setString(1, mb.getName());
   pstmt.setString(2, mb.getId());
   pstmt.setString(3, mb.getPasswd());
   pstmt.setString(4, mb.getTel());
   pstmt.setString(5, mb.getAddr());
   pstmt.setString(6, mb.getNum());
   pstmt.executeUpdate();
   return true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return false;
 }
 public boolean outmember(MemberBean mb){
  PreparedStatement pstmt=null;
  String sql4="delete from member where num=?;";
  try {
   pstmt=conn.prepareStatement(sql4);   
   pstmt.setString(1, mb.getName());
   pstmt.setString(2, mb.getId());
   pstmt.setString(3, mb.getPasswd());
   pstmt.setString(4, mb.getTel());
   pstmt.setString(5, mb.getAddr());
   pstmt.setString(6, mb.getNum());
   pstmt.executeUpdate();
   return true;
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return false;
 }
 public boolean loginCheck(String id,String passwd){
  String sql1="select * from member  where  id='kim123'";
  sql1="select * from member  where  id='"+id+"'   and  passwd='"+passwd+"'";
    String sql2="select * from member  where  id=? and passwd=?";
  //
    PreparedStatement  pstmt=null;
    ResultSet  rest=null;
    try {
   pstmt=conn.prepareStatement(sql2);
   pstmt.setString(1, id);
   pstmt.setString(2, passwd);
   rest=pstmt.executeQuery();
   if(rest.next())
   return true;
  
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return false;
 } 
 Connection conn;
 public MemberDAO(){
  //DB에 접속하는 부분
  //driver load
  //connection
  try {
   Class.forName("com.mysql.jdbc.Driver");
   String url="jdbc:mysql://localhost:3306/mydb";
   String user="root";
   String passwd="admin";
   conn=DriverManager.getConnection(url, user, passwd);
  } catch (ClassNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }// properties file에서 선택적으로 가져올수 있도록
            // 톰캣의web.xml에 애초에 설정하고 들어가는 방법
                                    // 현재app의 web.xml설정
  catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 } 
}
==========================================================================
로그인 페이지입니다.
======== index.jsp ========================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>환영합니다.</title>
</head>
<body>
 환영합니다. <%@include file="member/login.jsp" %>
</body>
</html>
======== login.jsp ========================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title> Login JSP</title>
</head>
<body>
 <form action="login.do"  method="post">
 아이디:<input type="text"  name="id"><br>
 암  호:<input  type="password"  name="passwd"><br>
 <input type="submit" value="로그인">
 <input type="reset" value="취소" >
 <%-- 회원가입 버튼으로 바꾸어야함 --%>
 </form>
 <form action="member/joinmember.jsp"  method="post">
 <input type="submit" value="회원가입">
 <%-- 회원가입 버튼으로 바꾸어야함 --%>
 </form> 
</body>
</html>
======== LoginServlet.java =================================================
package member.control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import member.model.MemberBean;
import member.model.MemberDAO;

public class LoginServlet extends HttpServlet {
 public void doPost(HttpServletRequest req,HttpServletResponse res)throws IOException,ServletException{
  //  client로부터 받은 id,passwd가 존재하는지 확인
  String id= req.getParameter("id").trim();
  String passwd=req.getParameter("passwd").trim();
  //id,passwd는 null이 아니라는 전제  
  // MemberDAO 에 id,passwd를 전달해서 결과를 통보 받은후
   MemberDAO dao=new MemberDAO();
   //필요할때마다 커넥션을 만드는 것은 좋지 않은 방법
   boolean isMember=dao.loginCheck(id, passwd);
   if(isMember){
    //멤버의 데이타를 받아옴
    MemberBean loginMember=dao.memberInfo(id);
    if(loginMember==null){
     //???
    }else{
    //로그인상태에서 로그아웃할때까지 멤버데이타 값을 기억시키고
    HttpSession  session=  req.getSession(); 
    //필요하면 언제든지 사용할 수 있도록 유지
    session.setAttribute("loginMemberData", loginMember);    
    // welcome.jsp
    //login.do 에의해서 현재서블릿이 호출된 상태
    req.getRequestDispatcher("welcome.jsp").forward(req,res);
    }
   }else {
    //loginfaile.jsp
    res.sendRedirect("member/loginfail.jsp");    
   }  
 }//doPost() end
}//class end
======== loginok.jsp ===============================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>loginfail</title>
</head>
<body>
 loginfail
</body>
</html>
======== logout.jsp =======================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>logout</title>
</head>
<body>
 이용해 주셔서 감사합니다.<br>
 <%
  if(!session.isNew())session.invalidate();
 %>
</body>
</html>
==========================================================================
회원가입 페이지입니다.
======== joinmember.jsp ==================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>JOIN MEMBER JSP</title>
</head>
<body>
 JOIN MEMBER<br> 
 <form action="../joinmember.do"  method="post">
  번호:<input type="text"  name="num"><br>
  이름:<input type="text"  name="name"><br>
  아이디:<input type="text"  name="id"><br>
  암  호:<input  type="password"  name="passwd"><br>  
  연락처:<input type="text"  name="tel"><br>
  주소:<input type="text"  name="addr"><br>
  <input type="submit" value="회원가입">
  <input type="reset" value="취소" >  
 </form> 
</body>
</html>
======== JoinMemberServlet.jsp ===========================================
package member.control;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import member.model.MemberBean;
import member.model.MemberDAO;

public class JoinMemberServlet extends HttpServlet{
 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
  // joinmember.jsp 값을 받는다
  MemberDAO dao=new MemberDAO();
  MemberBean mb=new MemberBean();
  mb.setNum(req.getParameter("num"));
  mb.setName(req.getParameter("name"));
  mb.setId(req.getParameter("id"));
  mb.setPasswd(req.getParameter("passwd"));
  mb.setTel(req.getParameter("tel"));
  mb.setAddr(req.getParameter("addr"));
  boolean isSuccess=dao.memberJoin(mb);
  if(isSuccess){
   HttpSession session=req.getSession();
   session.setAttribute("loginMemberData", mb);
   req.getRequestDispatcher("welcome.jsp").forward(req,res);
  }
  else {
   res.sendRedirect("member/loginfail.jsp");
  }
 } 
}
======== welcome.jsp ====================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page import="member.model.MemberBean"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Welcome jsp</title>
 <script type="text/javascript" language="javascript">
    function logout(){
     document.location="logout.jsp";
    }
 </script>
 <script type="text/javascript" language="javascript">
    function modify(){
     document.location="modify.jsp";
    }
 </script>
 <script type="text/javascript" language="javascript">
    function memberout(){
     document.location="memberout.jsp";
    }
 </script>
</head>
<body>
Welcome<br>
 <%
 MemberBean loginMember = new MemberBean();
 session = request.getSession();
 
 loginMember=
   (MemberBean)session.getAttribute("loginMemberData");
 %>

 <%=loginMember.getName() %>님 환영합니다.<br> 
 <input type="button" value="정보수정"  onclick="modify()"> 
 <input type="button" value="로그아웃"  onclick="logout()">
 <input type="button" value="회원탈퇴"  onclick="memberout()">
</body>
</html>
==========================================================================
정보수정 페이지 입니다.
======== modify.jsp =======================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page import="member.model.MemberBean"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Modify JSP</title>
</head>
<body>
 정보 수정
 <%
 session = request.getSession(); 
 MemberBean mb = new MemberBean();
 mb = (MemberBean)session.getAttribute("loginMemberData");
 %>
 <form action="modifymember.do"  method="post">
  번호:<%=mb.getNum() %><br>
  이름:<input type="text"  name="name" value = <%=mb.getName() %>><br>
  아이디:<input type="text"  name="id" value = <%=mb.getId() %>><br>
  암  호:<input  type="password"  name="passwd" value = <%=mb.getPasswd() %>><br>  
  연락처:<input type="text"  name="tel" value = <%=mb.getTel() %>><br>
  주소:<input type="text"  name="addr" value = <%=mb.getAddr() %>><br>
  <input type="submit" value="완료">
  <input type="reset" value="취소" >  
 </form> 
</body>
</html>
======== ModifyMemberServlet.java =======================================
package member.control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import member.model.MemberBean;
import member.model.MemberDAO;

public class ModifyMemberServlet extends HttpServlet{
 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
  MemberDAO dao=new MemberDAO();
  MemberBean mb=new MemberBean();
  mb.setNum(req.getParameter("num"));
  mb.setName(req.getParameter("name"));
  mb.setId(req.getParameter("id"));
  mb.setPasswd(req.getParameter("passwd"));
  mb.setTel(req.getParameter("tel"));
  mb.setAddr(req.getParameter("addr"));
  boolean isSuccess=dao.memberModify(mb);
  if(isSuccess){
   HttpSession  session=  req.getSession();
   session.setAttribute("loginMemberData", mb);
   req.getRequestDispatcher("modifyok.jsp").forward(req,res);
  }else{   
   // 센드 리다이렉트로 처리한다.
   res.sendRedirect("modifyfail.jsp");
  }   
 } 
}
=== modifyok.jsp & modifyfail.jsp 는 텍스트 파일이라 올리지 않습니다. ========
==========================================================================
회원탈퇴페이지입니다.
======== memberout.jsp ==================================================
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page import="member.model.MemberDAO"%>
<%@page import="member.model.MemberBean"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Memberout JSP</title>
</head>
<body>
 아래의 정보를 삭제하시겠습니까?
 <% 
 MemberBean mb=(MemberBean)session.getAttribute("loginMemberData"); 
 %>
 <form action="outmember.do"  method="post">
  번호:<%=mb.getNum() %><br>
  이름:<%=mb.getName() %><br>
  아이디:<%=mb.getId() %><br>
  암  호:<%=mb.getPasswd() %><br>  
  연락처:<%=mb.getTel() %><br>
  주소:<%=mb.getAddr() %><br>
  <input type="submit" value="회원탈퇴">
 </form>
</body>
</html>
======== OutMemberServlet.jsp ============================================
package member.control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import member.model.MemberBean;
import member.model.MemberDAO;

public class OutMemberServlet extends HttpServlet {
 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
  MemberDAO dao=new MemberDAO();
  MemberBean mb=new MemberBean();
  mb.setNum(req.getParameter("num"));
  mb.setName(req.getParameter("name"));
  mb.setId(req.getParameter("id"));
  mb.setPasswd(req.getParameter("passwd"));
  mb.setTel(req.getParameter("tel"));
  mb.setAddr(req.getParameter("addr"));
  boolean isSuccess=dao.memberModify(mb);
  if(isSuccess){
   HttpSession  session=  req.getSession();
   session.setAttribute("loginMemberData", mb);
   req.getRequestDispatcher("outmemberok.jsp").forward(req,res);
  }else{   
   // 센드 리다이렉트로 처리한다.
   res.sendRedirect("outmemberfail.jsp");
  }
 }
}
==========================================================================
아이디 제한 등 예외처리는 별도의 클래스를 만들어서 처리할 계획입니다.
==========================================================================

2008. 9. 25. 01:58

이클립스 & JDK & Tomcat 5.5 & mysql 자기컴퓨터에 세팅

2시간에 걸친 삽질 자료를 올립니다.
더 좋은 방법 있으신분은 트랙백 부탁 드려요. ^0^
1. 이클립스 설치
http://www.eclipse.org/downloads/ 의 오른쪽메뉴 Popular projects의 1. Web Tools를 선택하세요.


http://download.eclipse.org/webtools/downloads/ 에서 버전을 선택하세요

WTP 파일을 클릭해서 다운로드 받으세요.
(아래 파일들은 개별적인 것들임)

미러링 사이트에서 다운로드 받게 됩니다.
일단 받아두시고 설치는 2번에서 하게 됩니다.


2. JDK 다운로드 및 설치
다운 받으신 eclipse 파일을 적당한 위치(D:\JAVA\eclipse)에 풀어서(?) 놓아두세요.

java.sun.com 사이트 오른쪽 메뉴의 Popular Downloads의 Java SE(Standard Edition)를
클릭하세요.


저는 1.6으로 배우고 있어서 이걸 클릭해서 받았습니다.

플랫폼을 선택하고 동의서에 체킹하고 넘어갑니다.

제가 찾던 파일을 찾았네요. ^^;

다운 받으셔서 설치를 하시면 됩니다.
주의 사항 : eclipse를 실행할때 jre가 없어서 안된다는 메시지가 나올 수 있으므로
jdk는 D:\JAVA\jdk1.6.0_07
jre는 D:\JAVA\eclipse\jre (이클립스를 풀어둔 디렉토리 아래) 이렇게 각각 설치하였습니다.(설치화면을 캡쳐하지 못해서 말로만 설명 드립니다. 처음은 jdk 설치 경로를 묻고
두번째는 jre의 설치 경로를 묻게 됩니다. 영어 읽기 싫다고 대충 하시면 재설치의 번거로움을 겪게 됩니다. ㅋㅋ)
이렇게 설치하는 이유 설명은 짱가님이 채워주실겁니다. ^^;

3. tomcat 설치
tomcat.apache.org 사이트의 왼쪽 메뉴에서 다운로드를 하시면 됩니다.
저는 5.5를 받았습니다.

플러그인 (tomcatPluginV32beta2.zip)을 다운 받아서 이클립스 플러그인에(D:\JAVA\eclipse\plugins) 복사합니다. (http://www.eclipsetotale.com/tomcatPlugin.html)
여하튼 D:\JAVA\eclipse\plugins 디렉토리에 com.sysdeo.eclipse.tomcat_3.2.0.beta2 폴더를 복사하여 넣고 톰캣은 D:\JAVA\Tomcat 5.5에 설치하였습니다.

설치 후 브라우저에 http://localhost:9090(임의 설정 포트) 입력하셔서 고양이가 나오면
셋팅이 완료 된 것입니다.

주의 사항 : 톰캣의 기본디렉토리는 D:\JAVA\Tomcat 5.5\webapps\ROOT 
                                                톰캣 설치 경로  -------   기본 디렉토리
기본 디렉토리를 이렇게(D:\JAVA\Java_Workspace) 잡으실 경우에는

설치디렉토리의 conf\server.xml 의 이 부분을 수정해 주시면 됩니다.
server.xml은 첨부파일로 넣어두겠습니다.
server.xml을 수정하신 후 톰캣서버를 restart 하시면
기본디렉토리의 index.jsp파일을 확인하실 수 있습니다.


4. MYSQL 설치는 내일 다시 하겠습니다.