분류 전체보기 (120) 썸네일형 리스트형 0904 STS설치부터 27장 이전에 이클립스에서 sTS를 설치한거는 프로젝트 생성도 안되고 spring 프로젝트 열어서 보는것도 안된다 https://dist.springsource.com/release/STS/index.html https://dist.springsource.com/release/STS/index.html Spring Tool Suite 3.9.12 3.9.12.RELEASE (Mrz 12, 2020) Spring Tool Suite 3.9.11 3.9.11.RELEASE (Dez 16, 2019) Spring Tool Suite 3.9.10 3.9.10.RELEASE (Sep 19, 2019) Spring Tool Suite 3.9.9 3.9.9.RELEASE (Jun 18, 2019) Spring Tool Su.. [Mybatis 설치, 설정 xml 파일] 23장 xml 파일에서의 동적쿼리문 23장 ORM 으로 sQL안쓰고 객체 지향 데이터베이스를 쓰는데 장비가 좋아야 쓸수 있음 미국 네카라쿠배당토 이런데 만 씀 우리나라에서는 sql쓰고 유지보수가 쉬워서 MyBatis쓴다. MyBatis 소스코드와 쿼리를 분리한다. XML파일로 빼서 관리, 코드가 복잡하면 논리적인 오류가 발생할 가능성이 높아지기 때문이다. SQL문과 자바코드가 섞여서 불편하다 -> pstmt로 ? - > MyBatis로 쿼리 구성 sql 구문 실행 CRUD insert Delete update --> 정수리턴 select -> 필드/ 값 쌍으로 나옴 select의 결과가 객체로 Bean으로 나올수도있고 Map으로 나올수도있다 현업에서는 DataBase 연동은 무조건 DataSource로 해서 DBCP에서 연결 객체를 집어와.. [AOP][web.xml,action-servlet.xml 스프링] 책 20~21장 의존성주입 ! 객체는 하나이고 여러개의 클래스에서 선언한 참조변수에 대입한다. a,b,c,d, 클래스의 각각의 boardService에는 컨테이너에 생성된 하나의 변수만이 대입된다. 함수사이의 공유: 멤버변수 DI구조에서는 멤버변수를 통해 공유 데이터를 공유하지 못함 class A { int a ; void insert(){ a=0; } void update(){ a=1; } void delete(){ sysout(a); //불가! } } DI구조에서는 매개변수를 통해서 공유데이터를 주고 받는다. 인자로 받지않으면 서로다른 스레드에 의해서 꼬여서 변경된다. DI는 객체가 한개!!! 20장 트랜잭션 - > 정상적이지 않게 종료된 작업은 다시 되돌리는 하나의 논리적인 최소단위 AOP - > 공통화기능으로 만.. [MVC 패턴 정리(AJAX)]xml을 이용한 스프링 controller 호출방법 form을 갖고 호출 --> jsp 로 출력을 해줬다 setAttribute 로 전달한키를 갖고 값을 출력한다. 1. get 2. post json을 갖고 호출 -> 순수 문자열로 출력, 서버에서 전달할 키값으로 js를 통해 값을 출력한다. controller 는 model의 수행결과를 view에 전달해주던가 아니면 문자열로 결과를 전달! view는 출력만을 담당한다 , 다음 실행을 위한 링크 출력도 담당한다. 입력값 설정을 잘 해줘야한다. 링크 출력 get/ post -> 페이지를 이동한다 js - > ajax로 불러줄수있다. 동적으로 화면에 반영할 수있다. 면접 질문!!!!! 서버에 전달하고 페이지를 다시 받아오면 데이터의 크기가 크기때문에 오래 걸린다. 이런부부을 없애기.. AJAX(js:fetch)를 이용한 게시글 더보기 만들기 더보기 정리 fetch로 하는 더보기 내 테이블에서는 게시판과 공지사항이 한테이블에 있기 때문에 boardtype이라는 구분 속성을 둔다. 공지사항에서 맨처음에는 10개만 출력이 되었다가 다음번에는 10개 출력된 페이지의 맨아래의 게시글의 번호를 가져와서 그 다음번호 부터 10개를 출력하도록 sql문을 작성한다. 그러니까 이 sql문은 넘어오는 boardid값이 있을때는 boardid값 다음부터 10개를 출력하도록 하고 아닐때는 그냥 처음부터 10 개를 가져오도록 해야한다. select * from( select * from board where boardtype='공지사항' and boardid < 400185 order by boardid desc ) where rownum response.json(.. [페이징 - 상속관계없는][제목으로 게시글 검색하기] 페이징 정리~ 페이징을 위한 DTO에 선언 되어야하는 변수 정리~ //페이징 private int pageNo = 1; //현재 페이지 번호 private int totalCount; // 전체건수 private int totalPageSize; // 전체 페이지 수 private int pageLength = 10; // 한페이지의 길이 private int navSize = 10; //페이지 하단에 출력되는 페이지의 항목수 private int navStart = 0; //페이지 하단에 출력되는 페이지 시작번호 private int navEnd = 0; // 페이지 하단에 출력되는 페이지 끝 번호 전체 게시글의 갯수를 가져와서 전체 페이지 건수를 계산해주고 네비게이터를 계산해준다. 전체 페이지 건수 .. [DI] final private Vehicle vehicle ; - > 런타임중 변경되는 것을 미연에 방지 이를 controller의 service 객체나 service의 DAO 객체에 사용한다. --단. private이라고 해서 논리에 상관 없이 getter/setter를 제공하면 쓰레기 코드다 내 정보를 전부 오픈하는 꼴이다. 강한결합도 한 상황에만 적용되어 끝내는거 확장성 낮음 느슨한 결합도 인터페이스 객체를 통해서 외부에서 객체를 생성해 사용하는것 https://velog.io/@gillog/Spring-DIDependency-Injection-%EC%84%B8-%EA%B0%80%EC%A7%80-%EB%B0%A9%EB%B2%95 [Spring] DI(Dependency Injection) 세 가지 방법 .. Ajax 웹페이지를 다시 리로딩하지 않아도 된다 특정 영역의 데이터만 수정가능! --> js innerHTML , dom API를 이요해서 데이터 변경가능 xmlHttpRequest 엔진이 있다 -> 사용하기 힘들고 복잡 이걸 쉽게 변환 한게 fetch라는 ajax이다. --> 위의 엔진을 사용 jquery 방식은 겁나 어렵 axios node.jsㄴ에서사용 fetch - > 자바 스크립트 6부터 내장 라이브러리로 있고 가볍고 빠름 IE11에서는 지원하지 않는다. 타이머 설정해서 프로그래머가 제한 걸수 있다 전송 방식 설정해줘야함 fetch(전달할 주소, 전달할 데이터) .then(위에께 성공하면 받아옴(텍스트면 text(), json)) .then(위에께 성공하면 변수명=> 실행문해서 넘겨받은 데이터 접근 가능.. 이전 1 2 3 4 5 6 ··· 15 다음