Java 관련
![[SpringBoot] Thymeleaf01](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdCIXq%2FbtrnvAEZTAj%2FvaKIrkgO4pXR3jIXkrZmBk%2Fimg.png)
[SpringBoot] Thymeleaf01
타임리프는 템플릿 이라고 할수있습니다. 보통 스프링부트를 뷰나 리엑트를 연결해서 쓰는경우가 많은데 Thymeleaf를 사용해보려고 합니다. 타임리프는 OGNL(Object-Fraph Navigation Language)라고 합니다. - 자바의 값에 접근하기 위한 오픈소스 표현식 언어 - JSP, Thymeleaf, Groovy 등 - 처음에 SpringBoot에서는 Thymeleaf를 주로 사용한다.(요즘에는 타임리프 사용 잘 안함) utiliy object #execInfo #messages #uris #conversions #dates #calendars #numbers #strings #objects #bools #arrays #lists #sets #maps #aggregates #ids ..
![[SpringBoot] 스프링부트에 DB연결하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVgwBU%2FbtrnvzTBOsr%2Fu8lo4DVAB4fKdvnYP5ok0K%2Fimg.png)
[SpringBoot] 스프링부트에 DB연결하기
프로젝트를 만들때 spring web과 Mybatis Framework를 체크해줍니다! Oracle Driver는 버전때문에 안되는 걸로 알고있지만 버전업데이가 되면서 이제는 되는지 한번 체크해서 테스트 해볼게요! pom.xml에 보면 mybatis가 추가되어있고 ojdbc8버전이 잡혀있네요! application.properties # server server.port=8787 # view spring.mvc.view.prefix=/WEB-INF/views/ spring.mvc.view.suffix=.jsp # encoding server.servlet.encoding.charset=UTF-8 server.servlet.encoding.force=true server.servlet.encoding...
![[SpringBoot] Spring Boot 기본 설정](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlwJMi%2Fbtrns2oHGgy%2FnlWBBNa3Sd2IMZPdJ4HmD0%2Fimg.png)
[SpringBoot] Spring Boot 기본 설정
spring.io로 이동해서 스프링 부트는 톰켓이 내장되어있어서 Jar파일이 기본적으로 설정이 되어있다. 내부 톰켓을 안쓰기 위해서는 따로 설정을 하고 War파알로 배포를 해야합니다. GENERATE버튼을 누르면 demo.zip파일이 다운로드됩니다. 임포트는 Existing Maven Projects로 합니다! 4.0.0 org.springframework.boot spring-boot-starter-parent 2.4.5 com.example demo 0.0.1-SNAPSHOT demo Demo project for Spring Boot 11 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-star..
![[Spring] JavaConfig(xml을 java로 변경)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmHVBo%2Fbtrnxk9fzCO%2F7ADtJSqzkUwoK0xsSDMGIk%2Fimg.png)
[Spring] JavaConfig(xml을 java로 변경)
10. com/mvc/update/config/ApplicationConfig com.mvc.update.config.ApplicationConfig를 만들어주세요! applicationContext.xml의 내용을 applicationConfig로 옮기려고합니다. xml파일의 이름은 Spring Bean Configuration File입니다. 클래스(.java)에 xml파일을 옮기기 위해서는 @Configuration 어노테이션이 필요합니다. context:property의 내용은 클래스 위에 @PropertySource 어노테이션을 작성하면됩니다. 그리고 필드를 선언해서 @Value어노테이션으로 값을 주입합니다. 자바에서 Bean태그를 사용하기 위해서는 @Bean 어노테이션을 사용합니다. ..
![[Spring] Spring JDBC](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvbPEp%2FbtrnvA52EJn%2F3QkqnVLuI5hM3fFbGpeGnk%2Fimg.png)
[Spring] Spring JDBC
Spring_32처럼 버전 업데이트를 한 상태의 프로젝트입니다! 05. pom.xml : spring-jdbc, ojdbc6 pom.xml로 가는거 보시면 감이 오시죠? 디펜던시 추가입니다. org.springframework spring-jdbc ${org.springframework-version} 버전번은 org.springframework.version으로 잡아주세요! com.oracle.database.jdbc ojdbc6 11.2.0.4 06. web.xml : applicationContext.xml, *.do, encodingFilter contextConfigLocation /WEB-INF/spring/appServlet/applicationContext.xml org.sp..
![Spring] update(버전설정 잡기)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcEj6FD%2Fbtrno5l593k%2Ff0QJ6ZyTyDEJriwB7HCRD0%2Fimg.png)
Spring] update(버전설정 잡기)
#스프링#spring#version#update#버전설정 01. web.xml : 2.5 -> 4.0 (new dynamic web project -> web module설정을 4.0, deploy descriptor 생성) 우선 Spring Legacy Project를 만듭니다! 그리고 다이나믹 웹 프로젝트도 만들어서 web.xml의 내용만 받아올 예정입니다. 4.0버전이 기본으로 설정이 되어있습니다. 톰켓9버전은 4.0까지 지원합니다. Generate wen.xml deployment descriptor체크하고 프로젝트를 만듭니다. 그런다음 web.xml에서 해당부분만 사용하여 아까만든 Legacy 프로젝트의 web.xml에 붙여주니다. 그러면 여기 버전이 4.0으로 바뀌..
![[Spring] 파일 업로드 / 다운로드(file upload / download)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyQczF%2FbtrnlmurO8Z%2FRePob9OA9mK2sdW58Ughk0%2Fimg.png)
[Spring] 파일 업로드 / 다운로드(file upload / download)
파일 업로드를 위한 프로젝트를 만들어 보겠습니다. 우선 legrcy 프로젝트를 만들어주세요! (저는 패키지 com.mvc.updown으로 만들겠습니다) pom.xml에 디펜던시를 추가해줍니다! commons-io.commons-io commons-fileupload.commons-fileupload io와 관련된것을 하기위해서 또 fileupload를 하기 위해 필요합니다! pom.xml maven repository에는 잘 나오는데 search.org에는 없을수도 있다고 합니다! web.xml로 이동합니다. web.xml 기존에 만들어져 있던 root-context.xml를 appServlet안으로 이동시키고 이름을 applicationContext.xml로 바꾸었습니다!(에러 이클립스 ..
![[Spring] security(비밀번호 암호화)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuxeAg%2Fbtrnpe3j4eY%2Fcf5v5q7vTxp6DqFGYDaJE0%2Fimg.png)
[Spring] security(비밀번호 암호화)
우선 mymemberregist.jsp에서 PW 부분 input type="password"로 바꿔주세요!! PW 27. pom.xml : spring-security-web org.springframework.security spring-security-web ${org.springframework-version} 28. /WEB-INF/spring/appServlet/security-context.xml (security) 29. web.xml 이제 Controller에서 @RequestMapping(value="registres.do", method=RequestMethod.POST) public String registRes(MYMemberDto dto) { logger.info("..
![[Spring] transation(트랜잭션 - 원자성)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdD9QNr%2FbtrnpzMSlvh%2FNg9GnPG3oJEGoC9vQwXbI1%2Fimg.png)
[Spring] transation(트랜잭션 - 원자성)
23. (MYBoard) dao, biz, controller MYBoardDao.java(interface)에 추상메소드 추가 public String test(); MYBoardDaoImpl.java(class)에 메소드 추가 @Override public String test() { return null; } MYBoardBiz.java(interface)에 추상메소드 추가 public String test(); MYBoardBizImpl.java(class)에 메소드 추가 @Transactional @Override public String test() { dao.insert(new MYBoardDto(0, "test", "transaction test", "transaction이 뭐였는지??..
![[Spring] Interceptor(인터셉터)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJaO6r%2Fbtrnlm03d9A%2F416wmCje6f0aWCyR8u7MI0%2Fimg.png)
[Spring] Interceptor(인터셉터)
21. com/mvc/upgrade/common/interceptor/LoginInterceptor (impl HandlerInterceptor) org.springframework.web.servlet패키지에 있는HandlerInterceptor를 상속받겠습니다! package com.mvc.upgrade.common.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.HandlerIntercept..