안녕하세요 오늘은 Spring을 사용하면서 어떻게 실행 시키는지 모르시는 경우가 많아 이렇게 글을 작성하게 되었습니다. 저는 IDE로 Intellij를 사용하고 있어서 Intellij로 설명을 드리도록 하겠습니다. 우선 Tocat을 설치해주셔야합니다. https://tomcat.apache.org/download-90.cgi\ Apache Tomcat® - Apache Tomcat 9 Software Downloads Welcome to the Apache Tomcat® 9.x software download page. This page provides download links for obtaining the latest version of Tomcat 9.0.x software, as well as ..
안녕하세요.. 오랜만에 Spring을 진행하면서 어처구니없는 문제를 마주했는데요.. Json형식으로 Response를 보낼때 아래와 같은 아래와 같은 convert 에러를 마주했습니다. 당연히 아래와 같이 jackson에 대한 의존성도 추가를 해주었지만 동일 한 에러가 발생했습니다. com.fasterxml.jackson.core jackson-databind 2.9.4 com.fasterxml.jackson.datatype jackson-datatype-jsr310 2.9.4 도대체 무엇이 문제인가를 찾았지만 도저히 문제가 없기때문에 이해를 하지 못했습니다... 하지만 이유는 의외로 간단했습니다. 바로 아래와 같이 라이브러리가 추가가 안되었기 때문이죠.... 그래서 아래와 같이 lib을 추가하고 실행한..
Spring 사용시 ajax를 사용하는 경우가 많이 발생한다 이때 데이터를 text로 받을 수도 있지만 json으로 받아야하는 경우도 발생한다 이때 우리가 알아야하는 하는것은 @ResponseBody , @RestController이다 @RestController 와 @controller 의 차이 @controller 일반적으로 View를 전달하기 위해 사용한다 @RestController 일반적으로 Rest full api를 구성하고 할때 사용하는 어노테이션으로 데이터를 전달하고자 할때 사용한다. 해당 어노테이션은 스프링 4점대부터 사용가능하며 이전 버전에서는 @responsebody를 통해서 데이터를 전달했다. ajax를 사용시 json형식으로 데이터 받기 pom.xml jackson을 추가해야 데이..
흔히 반복되는 css, js의 경우 별도의 resources 폴더에 jsp파일을 만들어 include로 불러와서 반복되는 코드를 줄이면서 사용할 수 있다. 이때 발생하는 실수가 실제 css ,js 파일의 경로를 입력하는 것이다. 모든 요청은 dispacherServlet을 거치게 되어있다 이때 해당 controller를 찾고 경로에 따라 실행을 하기 때문에 실제 css, js가 존재하는 경로는 잘못된 경로로 인식하게 되어 페이지에러가 난다. 이를 해결하려면 sevelrt-context.xml 에서 resources 를 설정하면된다 sevelrt-context.xml 아래의 코드의 뜻은 resources를 시작하는 모든 요청은 controller를 거치지 않고 resources폴더에서 바로 찾아라 라는 뜻..
mybatis를 통해 주어진 값에 따라 다르게 실행 할 수 있는 방법이 존재한다 대표적으로 , 이다 태그 사용 controller @Controller public class HomeController { @Inject SqlSession sqlSession; @RequestMapping(value = "pooney", method = RequestMethod.GET) public String pooney(@RequestParam String id) { System.out.println("id : "+ id); List list = sqlSession.selectList("list.selectlist" ,id); System.out.println(list); return "index"; } } xml w..
흔히 조건절은 , 태그가 대표적으로 존재한다. 단일 파라미터를 던져서 값에 따라 다르게 실행 시키고 싶은데 이때 when절에서 변수명을 잘못하여 getter 에러를 발생시키는 실수가 발생한다. getter 에러 발생 controller @Controller public class HomeController { @Inject SqlSession sqlSession; @RequestMapping(value = "pooney", method = RequestMethod.GET) public String pooney(@RequestParam String id) { System.out.println("id : "+ id); List list = sqlSession.selectList("list.selectlist..
resultMap 태그는 일반적으로 DTO클래스의 변수명과 DB 테이블의 필드명이 서로 일치 하지 않을 경우 사용한다 resultMap = (멤버변수 변수명 != DB테이블의 필드명) resultMap 사용법 controller @Controller public class HomeController { @Inject SqlSession sqlSession; @RequestMapping(value = "addlist", method = RequestMethod.GET) public String addlist() { System.out.println("addlist"); List list = sqlSession.selectList("list.selectlist"); System.out.println(list..
객체 안에 있는 콜렉션이나 객체에 값을 넣어야하는 경우가 발생한다 이때 mybatis의 collection 태그를 이용하여 해결 할 수 있다. collection 태그 controller @Controller public class HomeController { @Inject SqlSession sqlSession; @RequestMapping(value = "addlist", method = RequestMethod.GET) public String addlist() { System.out.println("addlist"); List list = sqlSession.selectList("list.selectlist"); System.out.println(list); return "index"; } } ..