본문 바로가기

전체 글

(278)
EC2 에 mysql 8.0 설치하기 1. 설치 가능 여부를 확인하자 sudo yum list mysql* 2. 편의상 루트계정으로 해보자 sudo su 안해도 되긴 하는데 그럼 sudo 를 앞에 붙일 일이 많아진다. 3. mysql 설치 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 를 한 후 다음과 같이 입력하여 mysql 을 설치하자 yum install mysql-community-server 4. mysql 실행 및 상태 확인 sudo systemctl start mysqld 명령으로 실행을 시키고 sudo systemctl status mysqld 명령으로 실행 확인을 하자 5.charset 설정 vim /etc/my.cnf 을 하고 맨 밑에 다..
자바 8 과 자바 11의 특징 간단한 표 1. 자바 8은 왜 많이 쓰는 걸까? 자바 8부터 추가된 기능들이 그만큼 중요하기 때문이다. 그럼 그 중요한 기능들은 무엇일까? 중요성을 평가함에 있어 사람들의 주관이 많이 작용하겠지만 대부분의 사람들이 말하는것은 -- 함수형 프로그래밍의 도입 (함수형 인터페이스) -- 람다식 -- 스트림 api 의 도입 -- Optional 클래스 등장으로 nullpointExceition 방지 가능 등이 있다. 한편으로는 공공쪽 사업에서 쓰는 정부통합 프레임워크가 8버전까지만 지원이 되어서 많이 쓴다는 설도 있다. 또 자바 8버전 이후로는 유료화 되는 부분이 많아서라는 이유도 있다고 한다. 2. 자바 11의 특징 그럼 무조건 8은 좋은 것일까? 자바 8은 2014년에 나왔다. 성능면으로 보면 11이 더 좋..
URL 객체 2. 생성자 - URL(String url_object) 문자열 url_object로 지정된 자원에 대한 URL 객체 생성 - URL(String protocol, String host, int port, String file) 프로토콜 식별자, 호스트 주소, 포트번호 ,파일 이름이 지정된 URL 객체 생성 3.메소드 content, file ,host , path ,port, protocol 에 대한 getter가 있다. 그 외에는 InputStream openStream() : URL 주소와 연결한 뒤 연결로부터 입력받을 수 있는 InputStream 객체를 리턴한다. URLConnection openConnection() : URL 주소의 원격 객체에 접속한 뒤 통신가능한 URLConnection ..
@PostConstruct 란? 스프링 빈의 생성자에 대한 어노테이션이다. 1. @PostConstruct 란? 의존성 주입이 이루어진 후 초기화를 수행하는 메서드에 적용을 한다. 즉, 어떤 스프링 빈이 자신의 생성자로 초기화 되기 전에 실행되어야 하는 메서드에 적용되는 어노테이션이다. 이 메서드는 다른 리소스에서 호출되지 않는다해도 수행이된다. WAS 가 띄워질 때 @PostConstruct로 설정된 메소드가 실행된다. 예를 들어보자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public class Foo { @Inject Logger LOG; @PostConstruct public void fooInit(){ LOG.info("This will be printed; LOG has already been inje..
메시지 큐 (Message Queue)란? 1. 메시지 큐란? 요약하자면, 미들웨어에서 쓰는 메시지 전달 방식중 하나이다. 미들웨어는 어플리케이션들의 중개자가 되어 어플리케이션간의 데이터 통신을 가능하게 해주는 소프트웨어다. 이런 미들웨어중 Message Oriented Middleware 라는 미들웨어도 있다. MOM 이라고 하는 이런 미들웨어는 메시지 API 를 사용해 어플리케이션 간의 비동기식 데이터 교환을 가능하게 해준다. 이런 MOM 을 구현한 시스템을 Message Queue 라고 한다. 서로 다른 프로세스나 프로그램 사이에서 메시지를 교환할때 Advanced Message Queue Protocol 을 이용한다. 위의 AMQP 는 Message Oriented Middleware 를 위한 프로토콜이다. 이 프로토콜은 wire-prot..
FrameWork 와 SpringFrameWork 1. 프레임워크란 무엇일까 프레임 = 틀 , 표준, 구조 워크 = 동작, 행동, 일 합치면 뭐가 될까 틀에 맞는 동작이나 행동이다. 즉, 프레임워크는 표준 구조를 구현하는 클래스와 라이브러리의 모임이다. 주된 목적은 소프트웨어의 구체적인 부분의 설계와 구현을 재사용할 수 있게끔 하기 위해서이다. 프레임워크를 이용한 개발은 목적에 따라 효율적으로 구조를 짜놓는 개발이다. 2. 장점과 단점 장점은 -- 코드를 처음부터 일일이 짜지 않아도 되어 효율적이다. 시간과 비용, 생산성이 올라간다. -- 품질이 좋아진다. 반복작업이나 실수하기 쉬운 부분을 어느정도 보완해준다. -- 유지 보수에 좋다. 회사 입장에서는 체계적이고 형식이 정해져 있어 유지보수에 용이하다. -- 확장성이 좋다. 새롭게 업데이트 된 항목들을 ..
@ModelAttribute , @RequestParam , RedirectAttributes 1. @ModelAttribute controller의 메소드들을 보면 가끔 @ModelAtrribute 어노테이션이 붙은 파라미터를 볼 수 있다. 그러면 이 어노테이션이 붙은 파라미터의 타입의 객체가 생성이된다. 이때 이 객체는 비어있다. 이때 그 빈 객체의 클래스에는 @Getter 와 @Setter가 정의되어 있어야된다. 사용자가 요청한 쿼리스트링의 값들이 이 생성된 빈 객체에 setter를 통해 주입이된다. 예를 들어 파라미터가 이렇게 있다고 하자 @ModelAttribute("modelName") SomeClass someClass 그럼 SomeClass에 사용자가 요청을 하면서 서버로 넘겨준 값들이 SomeClass 객체에 바인딩 된다. 그리고 Model 에 modelName 이라는 이름으로 객..
Request 의 방식의 종류 Request 의 방식 메소드는 GET, POST, PUT, DELETE, OPTIONS,HEAD 등 많지만 일단 먼저 대표적인 메소드인 GET과 POST에 대해서 알아보자 1. HTTP 웹은 HTTP를 이용해 통신을 한다. HTTP는 보내는 데이터를 '패킷' 이라 표현을 한다. 패킷은 크게 header 와 body 로 이루어져 있다. 2.GET GET 방식은 데이터를 URL 뒤에 붙여서 보낸다. URL 뒤에 ? 를 통해 URL 의 끝을 알리면서 key 와 value 형식의 문자열이 뒤에 붙는다. URL에 문자가 붙으므로 HTTP 패킷의 헤더에 포함되어 서버에 요청된다. 헤더에 들어가기 때문에 Body는 비어있게 된다. 헤더의 Content-type 은 body의 데이터 설명이기 때문에 역시 비어있다. ..