목록TIL (43)
어? 이게 되네
오늘 배운 것 서블릿과 jdbc 서블릿 : 자바 단에서 db를 연결하지 않고 화면단(도메인) 개발하는 것 jdbc:자바와 db를 연결해주는 것 url(도메인)-자바-db String.valueOf()와 toString()의 차이 toString()은 null값 반환 안함(널포인터익셉션 생길 수도 있음) String.valueOf()는 null값을 반환하여 if조건에서 처리 가능함 =>실무에서 이걸 많이 씀 !!! (toString() 쓰면 이걸로 딴지를 걸 수도 있음...무서워라..) 램의 구조 Static HEAP STACK 각각 구조가 무엇을 저장하는지 알아야 함 ! 삼항 연산자 조건식 ? 식1 : 식2 조건식이 참일 때 식1, 거짓일 때 식2 개발자는 삼항연산자를 잘 쓰면 진짜 개발을 잘 하는 것임..
오늘 배운 것 제이쿼리 ui 플러그인 스크립트 적용 순서 중요함 !!! " target="_blank" rel="noopener">https://code.jquery.com/jquery-3.6.0.min.js"> 제이쿼리 ui 플러그인 중 다이얼로그 datepicker를 가지고 날짜값을 date로 변환하여 db에 insert가능? ajax통신 통해서 !!! 모달 : 팝업창이 시스템 독점 (끝내기 전에는 다른 일을 못함) 기본은 모달리스임 $(function(){ $("#a").dialog({ buttons:{ submit:function(){},//ajax통신으로 db에 접근 reset:function(){}, cancle:function(){} }, modal:true }); $("#event_date..
오늘 배운 것 제네릭 - 컬렉션 프레임워크를 쓸 때 자료형을 명시함 wrapper 클래스 ( 기본 자료형을 객체화 시켜주는 클래스) boolean Boolean char Character byte Byte short Short int Integer long Long float Float double Double 람다식 모던스크립트에서 이름없는 함수, 화살표 함수를 사용한 것처럼 자바에서도 이름없는 함수나 화살표 함수를 사용할 수 있는데 이것을 람다식이라고 함! 쓰레드 가능하면 두 개 이상의 메소드가 동시에 실행되도록 스케쥴링 해주는 기술 (멀티쓰레드) class MyThread extends Thread{ public void run(){ ~~~~ } } MyThread a = new MyThread()..
오늘 배운 것 Git : 형상 관리 시스템 (버전 관리 시스템) 목적 - 협업/형상관리/버전관리 git 용어 commit : 하나 또는 다수의 파일에 대한 변경 내용을 저장할 때마다 새로운 commit을 생성함 commit message : commit을 생성할 때마다 왜 변경했는지에 대한 이유를 설명하는 메시지를 제공해야 함 branch : 테스트를 해보거나 새로운 기능을 개발하기 위해 사용할 수 있는 따로 떨어진 독립적인 commit들 master branch : 새로운 git프로젝트를 만들 때마다 master라는 기본 branch가 생성됨. 배포할 준비가 되면 작업이 최종적으로 마무리 되는 branch feature branch : 새로운 기능을 개발할 때마다 작업할 branch를 만드는데 이를 f..
카카오로그인 카카오 로그인은 인증에 대한 처리를 카카오에게 맡기는 것 카카오가 제공하는 함수를 통해 카카오에 올바른 회원이 맞는지 아닌지만 우리한테 알려줌 동의항목에 설정한 정보만 활용할 수 있음 ! 그 나머지 우리 서비스에 필요한 로그인과 관련된 코딩은 우리가 해야함!(인가에 대한 처리!) 스프링시큐리티도 하고싶고 카카오 로그인 처리도 하고싶다면 카카오 로그인 처리부분은 permitAll로 설정해야 함! 그리고 카카오 로그인에 성공하면 자동으로 시큐리티 로그인 처리를 하도록 해야 함! 그래야지만 받을 수 있는 서비스들을 받을 수 있음 ! ---------------------------------------------------------------------------------------------..
º커넥션 풀 일정한 양의 데이터베이스 풀을 만들어놓고 사용자들에게 요청이 오면 제공하는 것 ºdao 인터페이스에서 메인 클래스 명시해줄 때 이렇게 써줘야 함 ! º컨트롤러의 서비스이름과 타임리프 적용할 html이름이 똑같아야함! 쿼리스트링과 uri방식의 차이 알고 가기 ㄴ타임리프에서 html에서 컨트롤러로 get방식으로 가져오는 법 ! get방식과 post방식 제대로 구분하기 ${}과 {}의 차이 : ${}는 표현언어 input 태그에 값을 나타낼 때는 th:value이고 그 외는 th:text ----------------------------------------------------------------------------------------------------------------------..
오늘 배운 것 Thymeleaf html에서도 html 태그에 속성을 추가해 페이지에 동적으로 값을 추가하거나 처리할 수 있다. 컨트롤러에서 상태유지한 거를 안고 jsp 한테 가는 것처럼 html한테도 가고싶어서 타임리프를 씀! 즉 타임리프는 jsp를 대신하는 것임 jsp에서는 controller에서 상태유지한 것을 jstl태그와 표현식을 이용해서 출력했다면 타임리프에서는 컨트롤러에서 상태유지한 것을 타임리프를 이용해서 출력하는 것 ! 나머지 ajax통신은 똑같이 jquery 쓰면 됨!(XmlHttpRequest해도 되고 JQuery Ajax하면 됨) 타임리프 세팅 스프링 스타터 프로젝트에서 타임리프 선택=>html만들 때 templates 폴더에다가 생성하고 html태그 옆에 링크 써주기, 각각의 값 ..
오늘 배운 것 스프링시큐리티를 쓰겠다고 환경설정을 하면 userDetailService를 구현한 클래스의 메소드로 온다 ! 스프링 시큐리티를 통할 때는 form태그에 히든 인풋으로 특수한 값을 환경설정 해줘야 하고 아이디에는 username, 비밀번호에는 password라고 name값을 줘야 함! 스프링시큐리티에서 로그인한 회원을 상태유지하는 법 어떠한 컨트롤러에서 SecurityContextHolder의 getContext()라는 메소드의 또 메서드 체이닝으로 .getAuthentication()까지 호출하여 authentication객체를 만들고 그 객체에서 로그인한 사용자의 아이디나 사용자넘버 등을 상태유지하거나 세션에 실어줄 수도 있다 !!!!!!!! 스프링시큐리티 통해서 아예 세션에 사용자를 등..