분류 전체보기
2020.04.14-15 MVC(3) (파라미터 받아오기2, 커맨드 객체)
어제 @RequestParam int data1 이렇게 클라이언트한테서 받아오는 방법이 있었다. 만약 data가 1,2,3,4,5 이렇게 여러개 있다면 일일이 다 선언해주는 것이 아니라 map 을 이용해 한 번에 받아올 수가 있다. public String test1(@RequestParam Map map, @RequestParam List data3 ) { String data1=map.get("data1"); String data2=map.get("data2"); String data33=map.get("data3"); System.out.println("data1 : "+data1); System.out.println("data2 : "+data2); System.out.println("data3 ..
2020.04.13 MVC(2) (파라미터 받아오기)
라밑지난번 스프링때 배웠던 것을 다시 복습하는 느낌이다. 컨트롤러에서 @RequestMapping(value="/경로", method=RequestMethod.GET) 식이며 경로는 요청된 곳에서 보내는 경로이다. 예시로 index.jsp 에서 test 이렇게 보내면 이제 value="/test" 로 받게되는 것이다. 그런데 이제 여러개가 경로가 /sub/test1 /sub/test2 이렇게면 그 Class 위에 @RequestMapping(value="/sub") 를 적어서 한 번에 처리해줄 수가 있다. method=RequestMethod.POST/GET 으로 GET,POST 구분을 해줄 수도 있지만 @GetMapping(value="/test") @PostMapping(value="/test") 이..
2020.04.10 static에 대해서 & MVC(1)
클래스를 설계할 때, 멤버변수 중 모든 인스턴스에 공통적으로 사용해야하는 것에 static을 붙인다. static이 붙은 멤버변수는 인스턴스를 생성하지 않아도 사용할 수 있다. 메모리에 올라가는 단계에서 자동적으로 생성되기 때문이다. static이 붙은 메서드 안에서는 인스턴스 변수를 사용할 수 없다. 메서드 내에서 인스턴스 변수를 사용하지 않는다면 static을 붙이는 것이 좋다. 속도가 빠르기 때문이다. ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ servlet jsp jstl springmvc 를 maven repository를 검색해서 나오는 곳에서 검색을해서 해당되는 코드를 복사해서 pom.xml에 붙여놓는다. 다음과 같이 xml의 build 태그 밑에 붙인다. 그리고 Dispatcher Servlet 클래스를 Spr..
2020.04.08 자바 훑기 (String 클래스, StringBuilder 클래스, 각종 Collection)
지금까지 C,C++,Python 만 주구장창 이용해왔었고, 코딩문제도 C++ 로 풀곤 하였었는데, 이제 자바 기반의 프로그램을 할 것이기 때문에 자바와 친해지고 코딩문제도 자바로 푸는 것이 도움이 될 것이라고 생각해서 자바 언어를 다시 공부한다. String 클래스에 대해. String str1=new String("abc"); String str2=new String("abc"); str1.equals(str2) ==> 같다. String str1="wow"; String str2="wow"; 같은 인스턴스를 참조한다. 위의 new 는 그렇지 않다. String str1="Coffee"; String str2="Bread"; String str3=str1.concat(str2); str3 ==> Cof..
2020.04.07 Spring(7) - JDBC 및 오류(ORA-28040,ORA-01017),템플릿, 커넥션풀
감격이다... jdbc 연결 jsp 공부할 떄부터 안됐었는데 오늘 끙끙 붙잡고 겨우됐다!!!! 카페인의 힘인가 .. ㅜㅜㅜ 다음과 같이 driver, url, userid, userpw, conn pstmt rs를 선언해두자. url 에서 'orcl' 부분은 sid 값을 써주면된다. conn은 연결하기 위한 객체 pstmt는 sql문을 써서 담아주기 위함이며 rs 같은 것은 select 으로 결과값 갖고온다 JDBC 는 드라이버 로딩 -> DB 연결 -> SQL 작성 및 전송 -> 자원해제 의 순서를 거친다. Class.forName(driver)를 통해 드라이버를 로딩하고. conn 객체를 이용하여서 url, userid, userpw 를 파라미터로 하여 연결을 한다. String sql 을 선언하여서..
2020.04.06 Spring(6)
만약 회원정보를 수정하려고 할 떄에 로그인이 되어있는 상태라면 수정페이지로 이동하겠지만 그렇지 않다면 다른 페이지 예로들어 메인 페이지로 하던가 해야할 것이다. 이 때에 다른 페이지로 전환하는 리다이렉트 기능을 이용한다. @RequestMapping(value = "/modifyForm") public String modifyForm(Model model, HttpServletRequest request) { HttpSession session = request.getSession(); Member member = (Member) session.getAttribute("member"); if(null == member) { return "redirect:/"; } else { model.addAttrib..
2020.04.05 Spring(5)
지난번에 memJoin 에서 커맨드방법으로 받아올 때에 jsp 에서 member.memId 이렇게 바로 써줬었다. 그런데 이제 다음과 같이 써줌으로써 다음과 같이 mem. 을 이용하여 사용할 수 있다. ModelAttribute는 또 어떻게 사용할 수 있냐면 메서드는 항상 공통적으로 어느메서드를 호출되던지간에 그 속성에 있는 이름을 그대로 view에서 이용할 수 있다는 것이다. 컨트롤러에 다음과 같이 지정을 해놓으면 memJoin.jsp 에서 저렇게 serverTime을 적어주면 나오게된다. 컨트롤러에서 뷰에 데이터를 전달하기 위해서 Model 이라는 객체를 사용했다. ModelAndView라는 객체도 있는데 이것은 데이터 뿐만이 아니라 데이터와 뷰의 이름을 같이 전달한다. 다음과 같은 차이가 있다. p..
2020.04.03 Spring (4)
mvc 헷갈리므로 기초적으로 흘러가는 것 정리 sts 다운해서 spring legacy project -> spring mvc project HomeController.java, servlet-context.xml, root-context.xml, web.xml, pom.xml 가 있음 pom과 root-context는 다른곳에서 복사해서 붙여넣자 web.xml 내에서 내부에 있는 은 전체 어플리케이션에 적용이되는 파라미터 값 저장이고, 내의 은 내의 서블릿에만 적용이 되는 파라미터 값 저장이다. DispatcherServlet을 appServlet으로 선언을 하면서 파라미터로 contextConfigLocation 안에 servlet-context.xml를 선언 contextConfigLocation ..