전체 글
-
[Spring] @RequestBody와 @ResponseBody를 사용해 JSON 형식의 데이터 주고받기Spring 2023. 8. 31. 20:46
Dispatcher-servlet.xml... ...HTTP Request의 body 데이터를 json 형식의 파라미터로 받아서 객체로 매핑해주는 @RequestBody와 객체를 json 형식의 데이터로 매핑해서 Response의 body에 제공하기 위해서 사용하는 @ResponseBody를 사용하기 위해서, xml 설정 파일에 코드를 추가합니다. web.xml myapp contextConfigLocation classpath*:myapp/spring/context-*.xml org.springframework.web.context.ContextLoaderListener dispatcherServlet org.springframew..
-
MySQL 서버 연결 및 url 출력하기Database 2023. 7. 3. 20:49
로그인$ mysql -uroot -p --host=localhost --socket=/tmp/mysql.sock$ mysql -uroot -p --host=127.0.0.1 --port=3306$ mysql -uroot -p$ mysql -u [username] -p 첫 번째 방식은 MySQL 소켓 파일을 이용해 접속하는 예시입니다. macOS의 MySQL 기본 소켓 파일 경로는 '/tmp/mysql.sock'입니다. 두 번째 방식은 TCP/IP를 통해 127.0.0.1(로컬 호스트)로 접속하는 예시입니다. 원격 호스트에 있는 MySQL 서버에 접속할 때는 반드시 두 번째 방법을 사용해야 합니다. 호스트와 포트를 입력하지 않는 세 번째 방식은 기본값으로 호스트는 localhost가 되며 소켓 파일을 사..
-
스프링 IoC 컨테이너와 빈의 생성Spring 2023. 6. 26. 21:32
스프링 프레임워크에서 스프링 IoC 컨테이너에 의해서 관리되는 객체를 빈(Bean)이라고 합니다. 그리고 컨테이너는 빈을 생성할 때 의존성을 주입합니다. org.springframework.context.ApplicationContext 인터페이스를 구현해서 Spring IoC 컨테이너를 생성할 수 있습니다. 컨테이너는 configuration metadata(XML 또는 애노테이션 기반의 자바 코드를 통해 나타냄.)를 읽어서 빈의 인스턴스화, 구성, 그리고 조립을 담당합니다. 애노테이션(Annotation) 기반의 컨테이너 생성 AppConfig.java @Configuration public class AppConfig { @Bean public MyService myService(MyReposito..
-
CLI 없이 Xcode Workspace에 Cordova Custom Plugin 추가하기iOS 2023. 6. 23. 10:16
보통은 아래와 같은 방법으로 커스텀 플러그인을 추가합니다. 하지만 여의치 않은 경우(Cordova-based project가 없거나 플러그인을 배포하지 않은 상황) Command Line Interface 없이 Xcode Workspace에 파일 복사 및 추가 코드를 작성함으로써 플러그인을 포함해야 할 때도 있습니다. $ cordova plugin add 커스텀 플러그인 이름 $ cordova plugin add URL $ cordova plugin add ../path/to/my/plugin/relative/to/project --link config.xml cordova_plugins.js ... // plugin.xml 내용 적용 { "id": "cordova-plugin-custom.CustomP..
-
Swift를 사용해서 Cordova Custom Plugin 만들기 (2)iOS 2023. 5. 25. 17:39
Swift를 사용해서 Cordova Custom Plugin 만들기 (1)에 이어서 clobbers 요소에 대해서 알아보고, iOS 플랫폼의 native view를 띄워보겠습니다. 플러그인 프로젝트의 Swift 코드 @objc(presentModalView:) func presentModalView(_ command: CDVInvokedUrlCommand) { print("presentModalView: called.") let viewController = UIViewController() let label = UILabel() label.translatesAutoresizingMaskIntoConstraints = false label.text = "Hello world!" label.font = ...
-
Swift를 사용해서 Cordova Custom Plugin 만들기 (1)iOS 2023. 5. 25. 03:13
Cordova 프로젝트에서 iOS 플랫폼의 메서드를 호출하고, 문자열을 수신하여 출력하기 위해서 간단한 Cordova Custom Plugin을 만들어보겠습니다. 플러그인 컴포넌트를 만들어내기 위해서, plugman을 설치해야 합니다. plugman은 플러그인 생성과 구성 및 관리를 도와주는 command line tool입니다. $ npm install -g plugman Create plugin using plugman $ plugman create --name CordovaSamplePluginSwift --plugin_id com.yeolmok.samplepluginswift --plugin_version 0.0.1 create 메서드는 플러그인의 뼈대를 만들어주는 메서드입니다. plugin.xm..
-
Swift Package에 GitHub Actions 사용하기iOS 2023. 5. 5. 16:08
GitHub Actions는 빌드, 테스트, 배포 파이프라인을 자동화할 수 있는 CI/CD(continuous integration & continuous delivery) 플랫폼입니다. 이 글의 아래에서는 GitHub Actions를 사용해서 간단한 Swift Package에 CI를 적용해보려고 합니다. 쉽게 말해서, 깃허브 저장소에 새로운 내용을 push 할 때, 트리거 되어 실행되는 스크립트를 작성해보겠습니다. GitHub Actions의 컴포넌트로는 다음과 같은 것들이 있습니다. Workflow Event Job Action Runner Workflows Workflow는 하나 이상의 job으로 구성되어 그것들을 수행하는 자동화 프로세스입니다. YAML 파일(형식: *.yml)에 정의되어 이벤트가..