일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- conda 가상환경 설정 오류
- conda base 기본 설정
- conda base 활성화
- 3000 port kill
- 오블완
- window netstat time wait 제거
- 려려
- 실행중인 포트 죽이기
- time wait port kill
- conda 기초 설정
- 티스토리챌린지
- Today
- Total
목록K-디지털 빅데이터 분석서비스 개발자과정 20.11.02~21.04.12/JAVA (29)
모도리는 공부중
pageContext 객체를 이용하여 읽어오는 작업을 해보자. memberList.jsp 우리는 jsp에서 spring코드를 사용중이므로 자바코드는 삭제하고 function과 주소 연결부에서 ContextPath에 해당하는 /mvc를 ${ctx}로 변경해준다. 다른 파일도 열어가면서 contextpath를 기존 /mvc에서 ${ctx}로 수정해주도록 하자. 그리고 상단에 c:set 코드 말고 taglib가 빠졌다면 그것도 추가해준다. 번호 아이디 비밀번호 이름 나이 전화번호 이메일 삭제 ${vo.num} ${vo.id} ${vo.pass} ${vo.name} ${vo.age} ${vo.phone} ${vo.email} memberContent.jsp
아이디에 a tag를 걸어서 아이디를 누르면 상세보기로 연결되도록 만들어봅시다. WebContent - WEB-INF - memberList.jsp ${vo.num} ${vo.id} ${vo.pass} ${vo.name} ${vo.age} ${vo.phone} ${vo.email} get방식으로 넘겨지게 설정한다. 그리고 이 작업을 수행할 프론트 컨트롤러에 코드를 추가한다. else if (command.equals("/memberContent.do")) { // memberDelete를 대신 처리할 POJO 생성 controller = new MemberContentController(); nextView = controller.requestHandler(request, response); Reques..
어제 수업에 이어서 진행. kr.smhrd.controller 패키지에 MemberRegisterController 클래스를 생성한다. package kr.smhrd.controller; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class MemberRegisterController implements Controller { @Override public String requestHandler(HttpServletRequest request, Http..
개발자는 모르겠으면 구글링을 잘해서 내가 모르는 부분에 대해 공부하고 잘 호라용하는게 중요하다. 모른다? 찾아라. 인터넷에 답이 있다. 다들 그렇게 공부하면서 성장한 것이니 앞으로 모르는 개념이 나오면 꼭 검색하도록 하자. 데이터베이스에 부하를 줄이고 유동적으로 관리하는 것을 커넥션 풀이라고 부른다. 여러개의 커넥션을 모아놓은 것은 팩토리라고 부른다. jdbc에서는 connection이라고 불렀던 용어를 myBatis에서는 SqlSession이라고 부른다. session은 클라이언트와 서버간의 고유한 연결라인이다. 이것을 sql에서 가져다 쓰는 것인데 이제부터 우리가 배우는 것은 myBatis이므로 connection이라는 단어 대신 SqlSession이라는 단어를 사용할 것이다. InputStream은..
jstl 라이브러리를 사용하려면 jstl api를 다운받아 라이브러리에 넣고 을 상단에 작성하여 세팅을 마친다. MemberVO에 num이라는 int값을 추가하고 getter와 setter를 생성, km.smhrd.model폴더에 MemberDAO라는 인터페이스(Interface)를 생성한다. package kr.smhrd.model; import java.util.List; public interface MemberDAO { // CRUD public int memberInsert(MemberVO vo); public List memberList(); // list니까 vo타입으로 받아줘야겠죠? public int memeberUpdate(MemberVO vo); // 0이면 실패, 1이면 성공. tr..
여러분이 지금까지 배운 MVC가 SPRING으로 변환되는 과정을 이해할겁니다. CONTROLLER가 어떻게 변환되느냐에 따라 달라진다. 데이터베이스도 어떻게 바꾸느냐도 공부해야하며 JSP도 JSTL과 EL을 사용할 줄도 알아야한다. 실제로는 방금 말한 3가지는 현업에서 사용하지 않는다. 10년 전 기술이지만 이 부분을 알아야 최신 기술(프레임워크)을 익힐 때 어렵지 않게 배울 수 있을 것이다. 그리고 제이쿼리와 AJAX도 사용할 줄 알아야한다. 여러분의 취업 확률은 모든 프로젝트의 기반기술인 웹이 가장 중요하므로 자바를 사용하는 회사로 가게 될 확률이 가장 높습니다. 지금까지 배운 웹단이 다 어려웠다고 하더라도 이 수업은 취업과 직결되는 부분이므로 꼭 집중해서 내것으로 만들기를 바랍니다. SPRING이 ..
지금은 메세지가 쌓이면 계속 아래로 길어지는 상태이므로 이걸 다르게 보이고 싶다면 페이징 기법을 직접 공부해서 넣어보도록 합시다. 기능 작동이 잘하는지 체크. 그리고 전체삭제버튼까지 잘 먹히고 있다. 오늘은 개별삭제 기능을 위해 5개정도 만들고 시작합니다. 반복문을 돌면서 삭제하는 라인으로 이동. 삭제 개별삭제를 위해 a태그를 이용해 새로운 서블릿을 만들어 하이퍼링크를 걸 수 있도록 해준다. 삭제하게 만들 조건을 어떻게 걸 것인가, 그게 중요하다. 잘못 선택하면 엄한 다른 메세지가 삭제되는 문제를 일으킬 수 있다. 그럼 뭐가 좋을까? 우리는 이미 설정해놓은 녀석이 있다. 바로 시퀀스 넘버. list.get(i)번째에 있는 getNum을 찾아서 넘겨줘야 한다. 우리가 맨 처음 배웠던 get방식을 이용하는 ..
main에 가면 무조건 session에 있는 info에서 값을 가져온다. 로그인을 했으면 로그인한 정보가 있을 것이고 없으면 null로 나오게 설정을 해놓았다. 마찬가지로 이것을 이용해서 '나에게 온 메세지 확인하기'도 설정해보자. 하나의 메세지는 하나의 dto로 묶을 수 있다. 메세지 보내기할 때도 묶었듯이 dao로 묶어주도록 하자. 나에게 온 메세지는 하나일까? 그렇지 않고 가변적일 것이다. 여러 개를 받아와야하므로 '가변'과 '다수'를 충족하는 배열, ArrayList로 받아올 수 있게 코드를 만들어주는 것이 좋다. 나에게 온 메세지 확인하기 로그인을 하세요. 전체삭제하기 이제 여러분은 MessageDAO에 selectMessage를 만들어보도록 합시다. public ArrayList selectM..
이메일은 클라이언트가 직접 입력한게 아니므로 세션에서 info를 가져온다. 저번시간에 update 숙제를 내드렸습니다. 풀이시간을 가져볼까요? public int update(MemberDTO dto) { # 우리는 int값으로 되돌려줄 것이므로 리턴유형은 int. # 매개변수는 MemberDTO dto int cnt = 0; # 되돌려줄 리턴 초기값 설정 return cnt; # 리턴타입 명시까지. } 자, 먼저 메소드 기본 유형부터 만들고 난 다음에 가장 먼저 해야할 것은? getConnection(); 연결 메소드를 불러와서 db 연결부터 해줘야겠죠? 그리고 이건 업데이트입니다. 오랜만이라서 기억 안나겠지만 잘 다시 떠돌려볼까요? String sql = "update web_member set pw..