attach 테이블로 따로 이미지 관리jspform태그action="/경로"method ="post"enctype="multipart/form-data"input태그type="file"name"vo랑 같게 작성"multiple (선택) ⇒ 여러 이미지 첨부 할 때 사용submit ⇒ 제출voMultipartFile ⇒ 파일 한개만 저장MultipartFile [ ] ⇒ 파일 여러개 저장 package kr.or.ddit.vo;import org.springframework.web.multipart.MultipartFile;import lombok.Data;@Datapublic class LprodVO { private int lprodId; private String lprodGu; private ..
☆.。.:*・°☆.。.:*・°☆.
날짜 형식 객체 생성 (SimpleDateFormat 객체)SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");⇒ 2024-05-11 날짜 형식 지정다른 날짜 형식 설정SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");⇒ 2024.05.11 날짜 형식 지정날짜 객체 생성(java.util)Date date = new Date();날짜 형식에 맞게 날짜 넣기String str = sdf.format(date); return str.replace("-", File.separator);return str.replace("-", "\\"); 위 코드랑 같은 의미File.separator ⇒ \\ 윈도우 경로..
사용예시 한 사람이 여러 카드 가지고 있을 경우(1:N)한 사람이 이력서 여러개 있을 경우 (1:N)자바빈 클래스 생성package kr.or.ddit.vo;import java.util.ArrayList;import java.util.Date;import org.springframework.format.annotation.DateTimeFormat;import lombok.Data;//POHO가 약해짐@Datapublic class MemberVO { private Address address; //1:1 관계 private List cardList; //MEMBER : CARD = 1: N 관계}Create class 'Address' 클릭package kr.or.ddit.vo;import..
Date 객체시간 꺼내기let hours = ('0'+today.getHours()).slice(-2);분꺼내기let minutes = ('0'+ today.getMinutes()).slice(-2);//분초꺼내기let seconds = ('0'+today.getSeconds()).slice(-2);//초시간+분+초 합치기let timeString = hours + ":" + minutes + ":" + seconds;원본function fnCt(){let today = new Date(); let hours = ('0'+today.getHours()).slice(-2); let minutes = ('0'+ today.getMinutes()).slice(-2);//분 let seconds = ('0'..
Data() 객체 생성let today = new Data();Data() 객체에서 연,월,일꺼내기연let year= today.getFullYear();월let year= today.getMonth();일let year= today.getDate();배열자르기 slicehttps://lavender1122.tistory.com/182 배열 자르기 - slice([begin(,end)])배열 자르기배열 일부분을 잘라내어, 새로운 배열로 리턴하기 위해서 slice() 함수 사용begin : 잘라낼 배열 시작end :잘라낼 배열의 종료, end index의 값이 잘라낼 배열에 포함되지 않음end 생략되면, blavender1122.tistory.comlet month = ('0' +(today.getMont..
배열 자르기배열 일부분을 잘라내어, 새로운 배열로 리턴하기 위해서 slice() 함수 사용begin : 잘라낼 배열 시작end :잘라낼 배열의 종료, end index의 값이 잘라낼 배열에 포함되지 않음end 생략되면, begin 부터 배열 끝까지 잘라냄예시const arr = ['a','b','c','d'];const arr1 = arr.slice(1, 3); // [ 'b', 'c' ]const arr2 = arr.slice(1); // ['b', 'c', 'd']const arr3 = arr.slice(-3, -1); // ['b', 'c']arr1 [1](b) 부터 시작해서 [3] (d)전에 끊어짐[0][1][2][3]abcdarr3 [-3](b)부터 시작해서 [-1](d)전에 끊어짐-4-3-2-..
@Controller스프링 프레임워크에게 웹 브라우저의 요청(request)를 받아들이는 컨트롤러 라고 알려주는것스프링은 servlet-context.xml의 context:component-scan의 설정에 의해 이 클래스를 자바빈으로 객체 등록(메모리 바인드)@PathVariable URL 경로 상의 경로 변수가 여러 개일 때 PathVariable 애너테이션을 사용하여 특정한 경로 변수명을 지정 @ResponseBody @GetMapping("/register/{userId}/{coin}") public String registerByPath2( @PathVariable("userId") String userId, @PathVariable("coin") int coin ) { log..
URL 경로 상의 경로(path) 쿼리 파라미터 정보로부터 요청 데이터를 취득스프링프레임워크에서는 파라미터를 매개변수로 받을 수 있음@ResponseBody 없으면 /views/success.jsp @ResponseBody 있으면 "success" 데이터 응답@ResponseBody@GetMapping("/register/{userId}")public String registerByPath(@PathVariable(value="userId") String userId) { log.info("registerByPath"); log.info("userId:"+userId); return "success";} @ResponseBody @GetMapping("/register/{userId}..
void타입 호출하는 URL과 동일한 뷰 이름을 나타냄 => mav.setViewName("goHome0101")@GetMapping("/goHome0101")public void home0101() { log.info("home0101"); //return "goHome0101"=> /views/goHome0101.jsp}@GetMapping("/sub/goHome0102")public void home0102() { log.info("home0102"); // /views/sub/goHome0102.jsp => 생략함}String 타입뷰 파일의 경로와 파일이름 나타냄@GetMapping("/sub/goHome0203")public String home0203() { log...
serialize()표준 URL 인코딩 표기법, 텍스트 문자열 생성form 태그 대상으로 serialize() 사용하면 폼 객체들 한번에 받을 수 있음 ⇒ form 모든 값 쉽게 받음ajax에 data 값 세팅할 때 사용let data=$("#frm").serialize();serializeArray()name와 value 형태 담아서 인코딩json문자열로 인코딩할 준비가 된 객체의 js배열로 만듬(인덱스 존재)let dataArray=$("#frm").serializeArray(); let data=$("#frm").serialize(); let dataArray=$("#frm").serializeArray(); let param={}; dataArray.map(function(data,i..