목록분류 전체보기 (174)
The Debugging Chronicles : "코드의 미학"
package test;import org.springframework.context.support.AbstractApplicationContext;import org.springframework.context.support.GenericXmlApplicationContext;public class Client { public static void main(String[] args) { //컨테이너 구동 코드 AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext.xml"); //컨테이너를 사용(구동)하기 위해 .xml이 필요하다 Phone phone = (Phone)factory.g..
스프링 컨테이너는 객체를 즉시 로딩한다.(pre-loading) 근데 실제로 사용하면 로딩하도록 (lazy-loading)지연 로딩으로 설정을 변경해보자! 사용자는 서비스 접속할 때 지연되는 것은 기다린다 하지만 서비스 사용중에 지연되는 것은 대부분 기다리지 못한다. 멤버 변수의 초기화는 생성자가 한다. 근데멘버 변수인데, 생성자에서 초기화하지 않는 특이한 경우가 있다.init() 함수에서 초기화하는 경우이다. 스프링에서 함께 호출하기 위해 init-method를 추가해준다 로그를 보면 이를 자바 코드로 바꾸게 되면 어떤 객체가 메모리에 단 1개 존재한다."싱글톤" 패턴이 유지된다. 스프링 프레임 워크는 (스프링 컨테이너)싱글톤 패턴을 유지시킨다. 디폴트 값이 싱글톤이다그래서 프로토타입으로 바꾸면..
프레임워크 = 틀, 뼈대개발 양식을 개발자들에게 제시***개발자들의 역량이 획일화 혼자만 잘하는 개발자가 왜 위험한가?1. 협업을 해야함2. 말을 안하고 자기가 혼자 다 개발함3. 만약 퇴사한다면?? 따라서 회사는 회사는 협업이 가능한 개발자를 선호한다.똑같이 개발한다면 일관성 유지 용이,쉬운 관리, 구현 시간 단축, 개발비용이 최소화 된다.또한 유지 보수가 용이하니 재사용성이 증가한다. 그럼 Spring 프레임워크가 무엇인가?한마디로"IoC와 AOP를 지원하는 경량의 프레임워크"입니다.여기서 알아야할 것은 3가지이다1. IoC 2.AOP 3. 경량이다 1. IoC제어의 역전(Inversion of Control)이라고 한다. 제어는 무언가를 관리하는 능력을 이야기한다.그럼 무언가는 무엇일까? 바로..
Name: project 이름type : 라이브러리 관리를 무엇으로 할래 원래는 grade인데 한 동안 Maven의존성 주입, 라이브러리 주입dependency는 spring의 핵심!!라이브러리를 처음에 설치하는 것예전에는 라이브러리를 직접 설치해야했는데 이제는 스프링이 대신해준다. spring의 핵심이 되는 것은1. Dependency 의존성2. AOP 관점지향프로그래밍 1. 자바 작업을 하는 공간 >>>백단 작업하는 곳src/main/java >>> java 코드 작성하는 곳src/main/resource >>> 설정 작성하는 곳 2. src> main > webapp >>> 앞단 작업하는 곳 3. pom.xml == Spring 설정 파일.xml 이라고 끝나는 파일은 "설정 파일" 뭔가가 자동으..
어플 설치 방식 >> Spring Boot플러그인 설치 방식 >> Spring Framework 구조 spring tools 4 인스톨 하면 된다 그리고 이 다음에서 한번더 뜨는데accept 해주면 된다 mySQL은 맥북이어서 homebrew 오픈 소스로 설치했다.다음 링크에서 확인하시길! m1 mac에서 mysql 설치하기https://clolee.tistory.com/49 Mysql 설치 및 테이블 생성하기(💻맥북 버전)https://velog.io/@mingle_1017/Mysql-%EC%84%A4%EC%B9%98-%EB%B0%8F-%ED%85%8C%EC%9D%B4%EB%B8%94-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0%EB%A7%A5%EB%B6%81-%EB%..
금요일에 중간 평가 발표가 있을 예정이다 페이지네이션 기능 구현을 맡아서 하였기 때문에 발표를 할 예정이다. 회사도 초청해서 오실 예정이신데 많이 떨린다.ㅜㅜ 발표문도 작성하는 중인데 외워서 떨지 않고 할 수 있을 지 걱정이다 말을 잘하는 것을 넘어서 사람을 설득하는 능력이 있다는 건 참 큰 능력인 것 같다.
오늘은 자기 전에 이것만 보고 자 자 이번주 금요일에 중간 프로젝트 발표가 있다.기업도 초청해서 오신다고 한다.한 동안 프론트 하느라 잊고 있던 자바 기본 아니 기초 질문들을 보면서 기억을 되짚어 보자!
1. 혼자 일해본 경험에 자기소개에 넣기'저는 어떤 프로젝트를 어떤 기술 언어와 스택으로 혼자 A 부터 Z 까지 해 보았는데요 이 경험을 통해서 무엇 무엇을 배웠습니다'즉 혼자 프로젝트한 경험을 살려 주면 좋다. 2. 학습 가능성스타트업 뿐만아니라 대기업도 기술 환경이나 사업환경이 계속 바뀌기 때문에 개발자가 계속해서 학습을 하고 있는지가 중요하다. '저는 백엔드 개발자이고 어떤 언어와 어떤 스택이 기반인데 이것에 그치지 않고 최신 트렌드인 어떤 언어와 모듈을 공부하고 있고 주말에는 사이드 프로젝트를 하고 있습니다. 그래서 계속해서 저의 기술 블로그나 깃허브에 누적하고 있고 다른 개발자 네트워크를 통해서 공부를 하고 있습니다.' 3. 협업 능력회사에서 개발자들에 대한 가장 큰 우려는 협업이 안될 것 같..
CKEditor에서 연결하는 도중에 500에러가 났다. 내용을 확인해 보니 경로에서 에러가 나고 있는 것 같았다. 로그를 찍어봐도 입력한 경로로 잘 불러오는 것 같은데 오류가 나서 다시 코드를 다음 과 같이 변경해주었다. String UPLOAD_DIRECTORY = request.getServletContext().getRealPath("/uploads/"); 해결 방안: 가장 일반적인 사용방법으로 현재 서비스가 돌아가고 있는 서블릿의 경로를 가져온다.만약 웹서비스가 "C:\web\WebContents" 에서 구동중이라면 해당 경로를 반환한다.파일 업로드 위치가 "C:\web\WebContents\upload\" 와 같이 실제로 서블릿 구동경로 안에 디렉토리가 포함되어 있을때 사용하면 된다.