본문 바로가기

전체 글524

[Spring] CRUD에서 Delete 구현 및 적용 오늘은 CRUD에서 마지막인 Delete를 직접 구현 및 적용 시켜보겠다. 배울 때는 쉬웠던 것 같은데 막상 적용하려니까 잘 기억이 남지 않지만, 이렇게 해야만 오류를 겪어보면서 새로운 도약을 할 수 있지 않을까? 자 그럼 시작해보자. MemerMpp.xml 가짜 삭제 UPDATE infrMember SET ifmmDelNy = 1 WHERE 1=1 AND ifmmSeq = #{ifmmSeq} // 진짜 삭제 DELETE FROMinfrMember WHERE 1=1 AND ifmmSeq = #{ifmmSeq} 진짜삭제와 가짜삭제를 나눠주는 이유는 가짜삭제는 DelNy를 0에서 1로 바꿔주면서 데이터만 안보이게하지만, 워크벤치에는 데이터를 남게 하도록 하기위해서 사용하는 것이다. 그렇게하면 개발자에게도 고.. 2022. 4. 1.
[Spring] Validation 적용시키기 오늘은 자그마치 6시간이라는 삽질을 하엿다. 하... 쉽지않네.. 결과값 이런식으로 이름에 빈칸이 들어갔을때 경고창이 나오도록 해주는 기능이다. MemberForm.jsp $("#btnSubmit").on("click", function() { /* if(!checkNull($("#shIfcgName"), $("#shIfcgName").val(), "코드그룹이름을 입력해 주세요!")) return false; */ if(!checkNull($("#ifmmName"), $("#ifmmName").val(), "이름을 입력해주세요")) return false; if(!checkNull($("#ifmmId"), $("#ifmmId").val(), "아이디를 입력해주세요")) return false; if(!c.. 2022. 4. 1.
[오늘의집 ] ajax를 이용한 로그아웃 구현 저번에는 로그인을 하였으니 이번에는 로그아웃을 한번 구현해보자. aJax를 이용하여 구현할 것이다. indexView.jsp sessSeq: sessName: sessId: 위에 부분은 값을 받아오고, 버튼에대한 코드이다. 여기서 주의해야할점은 버튼에 맞는 id 값을 꼭 새겨줘야되고 ajax 에구동시키는 한줄짜리 구동코드가 필요하다. MemberController.java @ResponseBody @RequestMapping(value = "/member/loginProc") public Map loginProc(Member dto, HttpSession httpSession) throws Exception { Map returnMap = new HashMap(); Member rtMember = ser.. 2022. 3. 31.
[IT] 직업에대한 생각과, 개발자에대한 나의 통찰 9,490일이 살아오면서, 직업에대한 나의 통찰? 그리고 개발자라는 직업에대한 이야기를 적어보고자한다. 이 글은 내가 지금것 살아보면서 느끼고 경험한것을 바탕으로 적는 글이기 때문에, 지극히 주관적일 수 있다. 만약 이 글을 읽는 사람들은 그냥 재미로 글을 읽어줬으면 좋겠다. 사람은 누구나 돈을 많이 벌고 싶고, 자본주의 사회는 돈이 결국에는 살아가는데 필수적이다. 특히나 대한민국 같은 나라는 미국을 모델로하는 극진적인 자본주의 사회라고 할 수 있겠다. 왜 이야기를 꺼냈느냐, 베이비 부모 세대들은 보통 대학을 나오지 못한 사람들이 많다. 그래서 자기 자식은 대학을 나왔으면 하는 바램이 많았고, 어느순간부터 이 대학이라는것이 현대판 신분이 되어버린듯 하다. 예를들어 누군가를 얘기 할 때 "아 걔 서울대 나.. 2022. 3. 30.
[IT] 네이버페이 사용하면서 느낀 잘못된 점 다들 알거다, 네이버페이, 카카오페이, 다 엄​청 쉽게 간편결제가 가능하다. 하지만 이곳에서 카카오에서 느꼇던 치명적인 단점을 발견하였다. 바로 공룡기업들의 갑질이다. 본인들의 서비스가 많아지고, 확장을 하다보니 서비스 인력을 충당이 함께 따라오지 못하는것 같다. 특히나 네이버페이를 구매하게되면 구매자의 정보를 판매자에게 보내게된다. 그러면 구매자의 정보는 판매자에게 노출이 되게된다. 둘째는 정말 큰 것인데 판매자와 구매자간에 일어난 분쟁은 네이버페이가 책임을 지려고 하지않는다. 그냥 너네둘이 좋게좋게 잘 해결하라 이런 마인드이다. 결정적인 이유를 찾아보면 네이버페이는 현재 봇챗(botchat)으로 해결하거나, 이메일을 직접 보내는 형태이다. 즉, 전문 상담원이 없다는 것이다. 이렇게 서비스 할거면 차라.. 2022. 3. 30.
[Spring] c:out 태그 란? c:out 태그에대해 알아보자 c:out c:out 태그는 자바에서의 System.out.println 메서드, JSP와 비슷한 역할을 가진다. 어떤 값을 입력받던지 간에 콘솔이 아닌 화면에 문자열로 바꾸어서 보여주는 역할입니다. 얼핏 보면 그렇게 유용한 기능을 하는 태그는 아닌 것처럼 보이긴 하지만 사용해야 하는 상황이 있습니다. 먼저 c:out 태그의 사용법을 알아보고 c:out 태그를 사용하는 이유에 대해 알아보겠습니다. ⭐ c:out은 문자열로 나타낸다는것을 잊지말자. c:out 태그 사용방법 c:out은 value에 있는 출력값을 출력하는데, escapexml이 비어있다면 true을 보낸다. 그리고 value=출력값에서 데이터를 찾을 수 없을 경우 default="출력값"에서 데이터를 대체하게된다. 2022. 3. 29.
[Spring] POST 방식과 GET 방식 차이 지금까지 우리는 GET방식으로 늘 사용해왔다. 하지만 POST방식도 이제는 알아야한다. GET 방식을 간단하게 예를 들어보자면 https://chocoboy.tistory.com/manage/newpost/?type=post&returnURL=%2Fmanage%2Fposts%2F# 이런식으로 주소창에 페이지 정보가 다 담겨있으면 GET 방식이라고하고 https://chocoboy.tistory.com/manage/newpost/이런식으로 정보에대한 뒷부분이 보이지 않도록 숨겨놓은걸 POST방식이라고한다. 보는것처럼, GET 방식은 보안에 취약하고, POST 방식은 보안적으로 보인다. 그렇다고 무조건 POST 방식을 쓰는것이 아니라, 필요에 따라서 GET 방식도 쓰기도하고, POST 방식도 쓰기도 한다. .. 2022. 3. 28.
[Bootstrap] 부트스트랩 공백의 개념 오늘은 부트스트랩의 공백에 대해서 알아보자 bootstrap 의 공백(Spacing) 부트스트랩 기반 템플릿을 사용하던 도중 여러가지 클래스들을 만나게 되었다. py-1 라는 클래스가 궁금해서 시작된 포스팅 Box model 박스모델 bootstrap의 공백의 자세한 클래스들을 알아가기 전에, 먼저 박스 모델부터 잠깐 살펴보도록 하자! 박스 모델은 HTML의 엘리먼트들은 (사각형 모양을 의미하는)박스의 형태를 가지고 있는 것을 말한다. 박스의 크기와 박스간의 간격을 정의하는 다양한 속성이 있다. margin : border를 기준으로 박스의 여백을 지정, 시각적인 요소는 없음 border : 박스의 테두리 padding : 테두리와 content간의 간격 content : 엘리먼트 안에 포함되는 컨텐츠 .. 2022. 3. 25.