오늘 진행한 일정

- PHP 블로그
  - 검색 UI 수정 완료

  - 로고 파일 사이즈 수정 완료

 

- JSP

  - 페이지네이션 구현 중

JSTL과 EL 

 

 

 

JAVA


Int는 null을 받을 수 없지만, Integer는 null을 받을 수 있다.
- ALT + SHIFT + R : 자바에서는 참조하는 이름 모두 바꾸기( 웹브라우저에서는 CSS 새로고침 )

 

내일 할 일

- JSP 페이지네이션 구현하기.

- 블로그에 못 올린 기술 관련 글 작성하기.

'Records' 카테고리의 다른 글

2021-07-15 ( JSP, Mysql )  (0) 2021.07.16
2021-07-14 ( JSP )  (0) 2021.07.14
2021-07-12 ( PHP 블로그 개선 )  (0) 2021.07.12
2021-07-09 ( JSP )  (0) 2021.07.09
2021-07-08 ( JSP )  (0) 2021.07.08
오늘 진행한 일정

- PHP BLOG ( 최종본 완성 )
  - 게시물 상세 페이지에 작성자명, 카테고리 보여주도록 로직 수정.
  - 게시물 리스트, 상세, 수정 페이지, 로그인 페이지 UI 개선.

 

내일 할 일

- JSP COMMUNITY 사이트 제작 이어가기.

'Records' 카테고리의 다른 글

2021-07-14 ( JSP )  (0) 2021.07.14
2021-07-13 ( PHP, JSP )  (0) 2021.07.13
2021-07-09 ( JSP )  (0) 2021.07.09
2021-07-08 ( JSP )  (0) 2021.07.08
2021-07-06 ( PHP, Front )  (0) 2021.07.06

 

오늘 진행한 일정

JSP COMMUNITY
- 게시물 상세페이지 수정/삭제 버튼 권한에 따라 보이도록 구현.
- 게시물 수정/삭제 권한 체크.
- 게시물 리스트 페이지, 검색 파라미터에 대한 로직 구현.
- 총 게시물 수에 JSP number format 적용

 

 

 

 

JSP COMMUNITY

- extra 필드가 필요한 이유.
  - extra 필드의 값은 DB에 따로 저장하지 않는다.
  
  - 현재 코드가 SQL쿼리의 결과를 가져오는 방식
    - SQL쿼리와 클래스를 받는 함수 selectRows는 ```List<T> ```를 반환하고, selectRow는 ```<T>```(클래스 객체)를 반환한다. 공통적으로 클래스는 Repository의 함수에 의해서 정의된다. return값이 객체를 담은 리스트, 클래스 객체이기 때문에, SQL 쿼리로 존재하지 않는 필드의 값(M.nickname)을 불러올 수 없기 때문이다.
      - (요약) 객체에서 해당 필드가 없으면 호출할 수 없다. 
  
  - extra__actorCanModify, extra__actorCanDelete의 활용
    - delete와 modify의 권한을 통제한다.
    - detail에서는 수정, 삭제 버튼 각각을 보여줄지 말지 결정한다.
- ResultData 객체가 갖고 있는 정보
  - from()을 통해 호출하게 되며, resultCode, msg, body(출력을 위해 쓰일 변수를 Map 타입으로 보유), isSuccess(), isFail()을 가지고 있다.

 

 

 

내일 할 일

- 게시물 리스트 페이징 처리 구현하기.

'Records' 카테고리의 다른 글

2021-07-13 ( PHP, JSP )  (0) 2021.07.13
2021-07-12 ( PHP 블로그 개선 )  (0) 2021.07.12
2021-07-08 ( JSP )  (0) 2021.07.08
2021-07-06 ( PHP, Front )  (0) 2021.07.06
2021-07-05 ( CSS )  (0) 2021.07.05
오늘 진행한 일정

- JSP_COMMUNITY 62강까지 구현 (수정 삭제 시 권한 체크)

 

 

 

좋은 습관

- 작업 전
  - git pull로 최신버전을 불러와서 작업하는 습관.


- 주석 사용하는 습관.


- DB comment 달기


- DB 빽업하기

 

 

 

JSP COMMUNITY

- public static void main은 TOMCAT 안에 있고, TOMCAT은 @WebServlet 등 어노테이션들을 읽어옴으로써 내가 작성한 코드들과 연결이 되게된다.


- 로그인 회원 세션은 어떤 방식으로 불러오는가.
  - Controller에서 Json형태로 변환해서 setSession, BeforeActionInterceptor에서 getSession 후 Json형태에서 Member 객체로 변환해서 rq의 loginedMember 관련 변수들 초기화.


- ResultData 구조와 동작 방식
  - 사용자의 request에 대해 success, fail로 나뉘고, Service에서 매개인자로 넣은 값(resultCode, msg, body(Map<String, Object>))에 의해 Controller로 넘어올 값이 분기된다. Controller는 값에 따라 분기된 동작을 실행한다.


- Interceptor의 실행 순서
  - BeforeActionInterceptor를 통해 세션값을 저장하고, NeedLoginInterceptor가 이 값을 호출한다.

 

 

내일 할 일

- JSP_COMMUNITY 63강부터 진행.

'Records' 카테고리의 다른 글

2021-07-12 ( PHP 블로그 개선 )  (0) 2021.07.12
2021-07-09 ( JSP )  (0) 2021.07.09
2021-07-06 ( PHP, Front )  (0) 2021.07.06
2021-07-05 ( CSS )  (0) 2021.07.05
2021-07-03 ( CSS, JavaScript )  (0) 2021.07.05

이클립스 그리고 STS에서는 코드를 찾아주는 강력한 기능이 있습니다.

 

사용 방법은 아래와 같습니다.

 

(1) Project Explorer에서 탐색을 원하는 파일을 클릭해서 Ctrl + h

(2) Customize를 통해 File Search 외에는 체크를 풀어줍니다.

 

(3, 4) Case sensitive( 대소문자 구분 ),  Selected resource in Project Explorer를 체크해줍니다.

 

(5) 검색할 코드를 대소문자 구분해서 입력하면, 어떤 파일의 몇 번째 줄에 해당 코드가 존재하는지 찾습니다.

 

 

 

 

 

 

 

 

오늘 진행한 일정

- PHP 블로그 개선
  - 302 방식으로 리디렉션 (구글 봇이 크롤링할 수 있도록)
  - article 테이블의 body 부분 longtext로 변경, 이미지 파일도 글 작성 시 넣을 수 있다.

  - sitemap 자동생성 및 1시간 간격으로 업데이트


- Jquery 기능을 이용한 탑바 및 사이드바 구현 연습

 

CSS

 - only-child / not only-child 
  - ~ li.active 안에 자식이 a태그 하나만이 아닌 태그
    - ul을 형제로 갖는 것(하위 메뉴가 존재하는 것)을 지목할 수 있다.

  .mobile-menu-box-1 ul > li.active > a:not(:only-child) {
  color:red;
  text-decoration:underline;
  }

 

 

JavaScript(Jquery)

1) siblings() : siblings는 형제를 가리킨다.
2) find() : find는 후손들을 탐색한다.

function MenuBox__show(){
  $('.menu-box-1 ul > li').click(function(){
    let $this = $(this);
    
//  1) siblings() 
    $this.siblings('.active').find('.active').removeClass('active');
    $this.siblings('.active').removeClass('active');
    
    if($this.hasClass('active')){
//    2) find()
      $this.find('.active').removeClass('active');
      $this.removeClass('active');
    }else{
      $this.addClass('active');
    }

 

 

 

내일 할 일

- Front 구현 시험

  - 사이드바 body 부분 제작부터 시작

 

'Records' 카테고리의 다른 글

2021-07-09 ( JSP )  (0) 2021.07.09
2021-07-08 ( JSP )  (0) 2021.07.08
2021-07-05 ( CSS )  (0) 2021.07.05
2021-07-03 ( CSS, JavaScript )  (0) 2021.07.05
2021-07-02 ( CSS )  (0) 2021.07.03
오늘 진행한 일정

- JavaSCript 69강까지 완성.




 

CSS

- transition에 여러 개의 속성을 넣을 때, ","를 붙이면 적용이 안 된다.


- CSS BEM 명명법
  - element에 이름을 부여할 때, 속해있는 block을 표기한다.
    - block의 구분은 element가 block의 필수 요소 일 때. (검증 필요)

 

내일 할 일

- 3단 메뉴 파트

- lg 상단바 제작

  - flex-wrap 이라는 것을 사용하는데, 어떤 방식으로 사용하는 것인지 익히기.

 

 

 

 

'Records' 카테고리의 다른 글

2021-07-08 ( JSP )  (0) 2021.07.08
2021-07-06 ( PHP, Front )  (0) 2021.07.06
2021-07-03 ( CSS, JavaScript )  (0) 2021.07.05
2021-07-02 ( CSS )  (0) 2021.07.03
2021-07-01 ( CSS )  (0) 2021.07.01

 

오늘 진행한 일정

- JavaScript 기초 69강까지 진행 ( 데스크톱 환경 / 모바일 환경에 대한 반응형 웹 )

 

 

JavaScript

- this 키워드

   // this는 클릭된 요소(.box-1클래스)를 의미한다.
   $('.box-1').click(fucntion(){
      $(this).addClass('active');
   });

 

TAILWIND CSS

1) h-full (= height: 100%) : 부모 요소의 height를 받아올 때 사용했다.


2) 탑바가 스크롤을 내렸을 때에도 따라다니게 하려면,
  .fixed inset-0 (bottom-auto)


3) 스크롤을 내렸을 때 배경색상이 변하는 효과
  background-image: linear-gradient(to bottom, #787878, #afafaf);

'Records' 카테고리의 다른 글

2021-07-06 ( PHP, Front )  (0) 2021.07.06
2021-07-05 ( CSS )  (0) 2021.07.05
2021-07-02 ( CSS )  (0) 2021.07.03
2021-07-01 ( CSS )  (0) 2021.07.01
2021-06-30 ( JAVA )  (0) 2021.07.01

+ Recent posts