객체 지향 프로그래밍 Bus b= new Bus(); --> Bus 인스턴스를 Heap 메모리에 올라간다Bus : 레퍼런스 타입b : 참조변수 레퍼런스Bus() : 생성자객체지향 : 메모리에 올라가 있는 인스턴스를 객체라고 한다. 어떤 객체는 1개만 필요한 것도 있고, 여러개가 필요할 수 있다.- 초보자 : 객체가 아니라 클래스에 대해 집중한다. 라이브러리 vs 프레임워크차이 : 사용 주체가 누구인가?1. 라이브러리 : 내가 다른 사람이 작성한 클래스를 사용.2. 프레임워크 : 내가 만든 코드를 다른 주체가 사용하는 것.- Spring Framework : 스프링이 나의 코드를 사용해서 어플리케이션을 구동한다. 디자인 패턴- 객체 생성, 구조, 행위에 대한 내용을 정리한 것- UML : 클래스와 클래스간..
Java, Spring 학습 로드맵 [Spring을 공부하기 전에 알야할 지식]- Java ( JDK 8) : JDK 8 기본 문법은 알고 있어야한다 - Servlet / JSP : JEE 웹 프로그래밍1. 서블릿 : 라이프 사이클, 서블릿이 제공해주는 객체2. JSP : EL과 JSTL을 공부하기3. WAS : Servlet/ JSP를 구동할 수 있는 Mini WAS를 만들어볼 필요가 있다.(미니 서블릿, 정적 DATA) - SQL, DB1. DBMS : 데이터베이스 설치하고 연동하는 것에 대해서 알아야함.2. 데이터베이스 기본 이론3. JDBC 프로그래밍 : DB 프로그래밍. [Spring 학습]- Spring Core : DI, AOP, Bean 컨테이너 개념 - Spring MVC : Web 개발..
1. ubuntu 한글 버전 설치- $ vi Dockerfile : Dockerfile 생성. - Docker 파일에 코드입력 : https://goo.gl/xd1rz2 이곳에서 도커파일 관련 코드 복사해서 붙여넣고 wq! - $ docker-machine restart : 도커 머신을 다시 시작 - $ docker build --tag ko_ubuntu:latest ./ : 이렇게해서 최신 우분투 버전 가져온다 - !! 데몬 뭐시기 나오면 : eval $(docker-machine env 이미지이름) 실행 - $ docker images : 새로 생긴 ko_ubuntu 이미지를 확인할 수 있다. - $ winpty docker run -it --name ko_ubuntu ko_ubuntu //bin//..
docker container를 실행하기 위한 환경Docker란 무엇인가?도커는 로컬 노트북, 데스크탑에 별도의 운영체제를 설치할 수 있는 공간을 만드는 가상화 머신이다. 이 가상화 머신은 자기만의 IP 주소를 가지고, 여러 운영체제를 설치할 수 있다.1. Docker Tool Box 설치링크 : https://docs.docker.com/toolbox/toolbox_install_windows/설치 : 윈도우 운영체제는 DockerToolbox.exe를 실행한다. 디폴트 설정으로 인스톨 하면된다 내 노트북에는 D 드라이브->Programfiles 폴더에 Toolbox를 설치하였다.명령어docker-machine : 물리적인 가상화 PC를 제어할 때 사용하는 명령어docker : 해당 가상 머신 안에서 ..
회원과 질문간의 관계 매핑 및 생성일 추가1. Question 객체와 User 객체 관계 매핑User 관점: User 1명은 여러개의 Question을 할 수 있다. --> @OneToMany 관계Question 관점 : 반대로 Question은 여러개이면서 1개의 User와 맵핑된다 --> @ManyToOne Question 클래스는 User 객체를 멤버변수로 가지면서 @ManyToOne 관계를 맺는다.@JoinColumn(foreignKey = @ForeignKey(name = "fk_question_writer")) : Question에 참조되어 있는 User 아이디를 외래키로 가진다.2. LocalDateTime 이용하여 질문 일시 작성하기LocalDateTime 객체를 다음과 같이 Questio..
##Section 5. Advanced_Beyond_Basics29. Comparing Differences$ git diff 0785452 HEAD : 커밋 0785452와 HEAD(브랜치의 마지막 커밋)과의 차이를 비교할 수 있다.$ git difftool 0785452 HEAD : P4merge가 뜨면서 diff가 있는 모든 파일들을 띄워준다.파일을 변경했는데 어떤 부분이 변경되었는지 모를 때README.md 파일 변경했을 떄$ git diff : 가장 최근 변경된 파일과 HEAD를 비교해서 보여준다.30. Branching and Merge Types[Branch] - Branch = Timeline of Commits - Branch Names are labels - 브랜치는 [Type of M..
#섹션 415. Initialization- git init "원하는 폴더이름" : 사용자가 정한 이름의 깃 리포지토리가 생성된다 - $ git init demo : demo 폴더가 생성된다. - 디폴트 브랜치 master : 깃 리포지토리가 생성됬을 때는 디폴트로 마스터 브랜치로 설정된다. 16. Local Git States- working directory : 내가 현재 작성하고 있는 프로젝트 폴더. 어플리케이션의 모든 파일, 폴더를 가지고 있다. - Staging Area : Working directory에서 변경된 파일들이 Staging을 거쳐 Repository에 저장된다. - Repository(.git folder) : Commit 된 파일이 저장된다. Git history가 있다. 17..
Quick Install on Winows1) Git for Windows- official Website : http://Git-SCM.com - Download for Windows - 설치시 디폴트로 설정하고 인스톨하기 - 기호에 따라 - Checkout as-is / Commit Unix-style 를 설정할 수 있다. - 필수는 아니다. - Minimal Configuration : 사용자 이름, 이메일 - git config --global user.name "Your Name" - git config --global user.email "your@email.com" 2) NotePad++ 설치 : Git Bash에서 사용할 텍스트 에디터 - Website : http://Notepad-Plu..
안녕하세요~ 강정호에요추석연휴가 거의 다 끝나고 하루 남았네요. 추석 연휴는 매년 왜 이리 빨리 지나가는지.... ㅠㅠ연휴 동안 계획은 많이 짰는데 막상 돌이켜 보면 많이 지키지 못하네요 오늘은 C++의 벡터에 대해 알아보려고 해요. Vector의 특징Vector는 배열이다. Java의 Array라고 생각하면 쉬워요.길이를 변경할 수 있는 배열이다. 길이가 변경된다는 점에서 기존의 Java의 Array와는 차이가 있어요.#include [Vector 생성 예제]#include #include using namespace std;int main(){vector v1; //int형 vector를 v1에 저장한다. 이 때 길이는 0이다. vector v2(10); //길이가 10인 int형 vector vec..
@OneToOne 관계 레시피의 데이터 테이블 관계도 @Entity : 엔티티 클래스임을 지정하여 데이터 테이블과 맵핑된다.@Id : 해당 필드 변수를 PK로 지정한다.@GeneratedValue(strategy = GenerationType.IDENTITY) : 주키의 값을 이한 자동 생성전략을 명시하는 것에 사용된다. 선택적 속성으로 generator과 strategy가 있다. strategy = GenerationType.IDENTITY는 DB의 identity 컬럼을 이용한다는 것이다.@Lob : 긴 String 컨텐츠를 저장할 때 사용하는 어노테이션이다. @OneToOne(cascade=CascadeType.ALL) : 1대1 관계를 맵핑하고 삭제될 때 같이 삭제되는 것을 뜻한다.
[원격 서버에 배포하기] 1. AWS EC2 Linux 인스턴스 생성 : https://jojoldu.tistory.com/259?category=635883- 이 부분은 크게 차이가 없다. 2. EC2에 MySql 설치하기- $ sudo yum install mysql- $ mysql -u 계정 -p -h Host주소 : 계정은 모두 소문자이고 Host 주소는 AWS RDS 대쉬보드에서 확인하기- $ show databases; : 이것을 치고 들어가면 내가 생성한 데이터베이스가 보여야 성공 3. Java, Git 설치하기 현재(2018.01.14) EC2가 Java7이 기본버전이라 Java8로 버전업하겠습니다.AWS EC2에 접속하셔서 아래 명령어를 실행 합니다.sudo yum install -y j..
[코드 리팩토링] [객체에게 일을 많이 시키자] 보통 로그인시에 비밀번호를 비교할 때는 다음과 같이 get 메서드를 사용하여 비밀번호를 반환함.if(!password.equals(user.getPassword())){ System.out.println("Login fail"); return "redirect:/users/loginForm"; }하지만 이렇게 하면 비밀번호를 가져오고 비교하는 작업 2개를 해야한다.이 작업을 한 번에 하기 위해서는 User 객체에 matchPassword() 라는 메서드를 만든다.-- User 클래스 --public boolean matchPassword(String newPassword){ if(newPassword==null){ return false; } return ..
[자기 자신만 개인정보 수정할 수 있도록 하기]@GetMapping("{id}/form") public String updateForm(@PathVariable Long id, Model model, HttpSession session){ if(HttpSessionUtils.isLoginUser(session)){//개인정보 수정시 로그인 하지 않았을 때 막는 코드 System.out.println("미로그인 상태입니다. 로그인해주세요"); return "redirect:/users/loginForm"; } User sessionedUser=HttpSessionUtils.getUserFromSession(session); if(!sessionedUser.matchId(id)){ throw new Ille..
[로그인 상태에 따른 메뉴처리] 로그인 폼에서 유저 아이디와 비밀번호를 Post 방식으로 전송하여 Controller에서 받았다 [Controller]@PostMapping("/login") public String login(String userId, String password, HttpSession session){ User user=userRepository.findByUserId(userId); if(user == null){ System.out.println("Login fail"); return "redirect:/users/loginForm"; } if(!user.matchPassword(password)){ System.out.println("Login fail"); return "red..
[자동 배포]- Travis를 이용한 자동배포- S3 bucket에 파일들을 업로드 하는 방법.(Travis CI, S3를 이용한 자동 배포 : https://jojoldu.tistory.com/265?category=635883 ) language: java jdk: - openjdk8 services: - mysql branches: only: - master cache: directories: - '$Home/.gradle' before_install: - mysql -e 'CREATE DATABASE IF NOT EXISTS drinkit;' - mysql -u root -e "CREATE USER 'jiwon'@'localhost' IDENTIFIED BY 'jiwon';" - mysql -u ..
1-1강 : Spring boot 로컬 개발환경 세팅1. 로컬 개발환경 세팅 - 프로젝트 생성 : Spring Starter Project 생성 - 프로젝트 이름 정하기 : my-slipp - Type : maven, package : jar - Group : net.slipp - Artifact : my-slipp - Package : net.slipp - 디펜던시 추가 : Web, Mustache(템플릿엔진), devtools --> pom.xml에서 확인이 가능하다. 2. 서버 시작 : application.properties 에서 server.port='포트번호' 변경하고 서버를 구동.3. LiveReload - 크롬 앱 LiveReload를 설치한다. - 역할 : STS에서 변경사항이 생겼을 때..
- Total
- Today
- Yesterday
- 관계대수
- 유즈케이스
- 깃
- 개발자 회고
- Use case
- 항해플러스백엔드
- push_back
- ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
- Spring boot
- GIT
- 2023년
- Inception
- 부동산공부
- 재테크공부
- 깃허브
- 열반스쿨기초반
- resize
- 도커
- github
- 월급쟁이부자들
- docker
- 폭포수
- 인셉션
- front
- 파라메터
- 내년은 빡세게!!
- pop_back
- 항해플러스후기
- 항해솔직후기
- 월부닷컴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |