Spring Boot allows creating standalone Spring applications with minimal configuration. It makes assumptions about dependencies and provides default configurations. It aims to provide a faster development experience for Spring. Some key Spring Boot components include auto-configuration, core functionality, CLI, actuator for monitoring, and starters for common dependencies. To use Spring Boot, create a project with the Spring Initializr, add code and configurations, then build a jar file that can be run standalone.
This document discusses Spring Boot and how it provides automatic configuration for common web application functionalities like JPA, security, and Spring MVC. It also covers how Spring Boot uses starter dependencies to select libraries automatically and provides tools like the CLI and Spring Initializr. The document then demonstrates creating a basic Spring Boot application and discusses testing Spring Boot applications using techniques like mocking Spring MVC and integrating tests.
Spring boot is a great and relatively a new project from Spring.io. The presentation discusses about basics of spring boot to advance topics. Sample demo apps are available here : https://github.com/bhagwat/spring-boot-samples
The document discusses OAuth2 and Spring Security. It provides an overview of OAuth2 concepts including the four main roles (resource owner, resource server, client, and authorization server), four common grant types (authorization code, implicit, resource owner password credentials, and client credentials), and how to implement OAuth2 flows in Spring Security. Sample OAuth2 applications using Spring Security are also mentioned.
This document provides an overview of developing a web application using Spring Boot that connects to a MySQL database. It discusses setting up the development environment, the benefits of Spring Boot, basic project structure, integrating Spring MVC and JPA/Hibernate for database access. Code examples and links are provided to help get started with a Spring Boot application that reads from a MySQL database and displays the employee data on a web page.
This document discusses different types of data binding in Angular, including interpolation, property binding, event binding, and two-way binding. Interpolation is used to display data in templates. Property binding passes data from the component to an element property. Event binding handles user interactions by passing events from the template to event handler methods. Two-way binding uses ngModel to establish bidirectional data flow between a component and view. The document also provides examples of parent to child component communication using input binding to pass data from parent to child components.
Spring Boot allows creating standalone Spring applications with minimal configuration. It makes assumptions about dependencies and provides default configurations. It aims to provide a faster development experience for Spring. Some key Spring Boot components include auto-configuration, core functionality, CLI, actuator for monitoring, and starters for common dependencies. To use Spring Boot, create a project with the Spring Initializr, add code and configurations, then build a jar file that can be run standalone.
This document discusses Spring Boot and how it provides automatic configuration for common web application functionalities like JPA, security, and Spring MVC. It also covers how Spring Boot uses starter dependencies to select libraries automatically and provides tools like the CLI and Spring Initializr. The document then demonstrates creating a basic Spring Boot application and discusses testing Spring Boot applications using techniques like mocking Spring MVC and integrating tests.
Spring boot is a great and relatively a new project from Spring.io. The presentation discusses about basics of spring boot to advance topics. Sample demo apps are available here : https://github.com/bhagwat/spring-boot-samples
The document discusses OAuth2 and Spring Security. It provides an overview of OAuth2 concepts including the four main roles (resource owner, resource server, client, and authorization server), four common grant types (authorization code, implicit, resource owner password credentials, and client credentials), and how to implement OAuth2 flows in Spring Security. Sample OAuth2 applications using Spring Security are also mentioned.
This document provides an overview of developing a web application using Spring Boot that connects to a MySQL database. It discusses setting up the development environment, the benefits of Spring Boot, basic project structure, integrating Spring MVC and JPA/Hibernate for database access. Code examples and links are provided to help get started with a Spring Boot application that reads from a MySQL database and displays the employee data on a web page.
This document discusses different types of data binding in Angular, including interpolation, property binding, event binding, and two-way binding. Interpolation is used to display data in templates. Property binding passes data from the component to an element property. Event binding handles user interactions by passing events from the template to event handler methods. Two-way binding uses ngModel to establish bidirectional data flow between a component and view. The document also provides examples of parent to child component communication using input binding to pass data from parent to child components.
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
도커 무작정 따라하기
- 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커의 기본 개념부터 설치와 사용 방법까지 설명합니다.
더 자세한 내용은 가장 빨리 만나는 도커(Docker)를 참조해주세요~
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
XSS is much more than just <script>alert(1)</script>. Thousands of unique vectors can be built and more complex payloads to evade filters and WAFs. In these slides, cool techniques to bypass them are described, from HTML to javascript. See also http://brutelogic.com.br/blog
Progressive web apps (PWAs) are a new type of application that combines the best of the web and the best of native apps. PWAs use newer web platform features and service workers to deliver app-style experiences to users. Some key benefits of PWAs include providing responsive and reliable experiences that load instantly and feel like regular apps to users, while also being able to reach users on any device via a web URL rather than an app store. PWAs aim to reduce the barriers between the web and native apps.
어떻게 하면 배포 프로세스를 빠르게 개선할 수 있을까요?
git branch를 푸시하고 개별 테스트 서버를 만드려면 어떻게 해야 할까요?
쿠버네티스와 GitOps, Argo CD를 이용한 배포 방법을 소개 합니다.
Open Infrastructure & Cloud Native Days Korea 2019 발표자료
원본 슬라이드 다운로드 - http://bit.ly/subicura-gitops
The document discusses Node.js and Express.js concepts for building web servers and applications. It includes examples of creating HTTP servers, routing requests, using middleware, handling errors, templating with views and layouts, and separating code into models and routes.
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)LanarkSeung
프로덕션 환경에서 클라이언트 사이드 렌더링을 고집하기란 힘든 일입니다. 서버를 통해 웹사이트를 제공하면서도 React의 편리함을 누리려면 서버 사이드 렌더링(SSR)을 구현해야 하는데요. Create-React-App을 그대로 유지하면서 SSR을 구현하는 과정을 보여드리고자 합니다. TypeScript로도 가능합니다!
The JavaScript programming language is a multi-paradigm language that is misunderstood due to its name, design errors in early implementations, and use in web browsers. It is a functional language that uses objects, prototypes, and closures. Values in JavaScript include numbers, strings, Booleans, objects, null, and undefined. All other values are objects.
Welcome to presentation on Spring boot which is really great and relatively a new project from Spring.io. Its aim is to simplify creating new spring framework based projects and unify their configurations by applying some conventions. This convention over configuration is already successfully applied in so called modern web based frameworks like Grails, Django, Play framework, Rails etc.
This document provides an overview of ExpressJS, a web application framework for Node.js. It discusses using Connect as a middleware framework to build HTTP servers, and how Express builds on Connect by adding functionality like routing, views, and content negotiation. It then covers basic Express app architecture, creating routes, using views with different template engines like Jade, passing data to views, and some advanced topics like cookies, sessions, and authentication.
Spring Boot is a framework that makes it easy to create stand-alone, production-grade Spring based Applications that can be "just run". It takes an opinionated view of the Spring platform and third-party libraries so that new and existing Spring developers can quickly get started with minimal configuration. Key features include automatic configuration of Spring, embedded HTTP servers, starters for common dependencies, and monitoring endpoints.
- React is a JavaScript library for building user interfaces that uses a virtual DOM for faster re-rendering on state changes.
- Everything in React is a component that can have states, props, and lifecycle methods like render(). Components return JSX elements.
- Props are used for passing data to components in a unidirectional flow, while states allow components to re-render on changes.
- The render() method returns the view, accessing props and state values. Forms and events also follow React conventions.
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method again.
After watching this you will be able to give answer on following Questions
What is lombok?
Why to use project Lombok?
How to integrate/plug lombok project jar with you Eclipse ID?
How to use lombok maven project?
What is @Getter/@Setter annotation in Lombok java?
How Project Lombok works?
What is @NonNull annotation?
What is @ToString annotation?
How to generate Equals and Hashcode using Lombok?
Check all lombok java example
What are the benefits/advantages of using lombok?
NGRX provides tools for implementing Redux patterns in Angular applications. The key components are:
- The Store holds the single source of truth application state as plain JavaScript objects and uses reducers to immutable update state in response to actions.
- Actions describe state changes and are dispatched to the Store which passes them to reducers. Reducers pure functions that return new state.
- Selectors allow slices of state to be accessed.
- Additional libraries provide debugging with devtools, routing integration, side effect handling, and entity management functionality. Files can be organized by domain or feature module.
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis
도커 무작정 따라하기
- 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커의 기본 개념부터 설치와 사용 방법까지 설명합니다.
더 자세한 내용은 가장 빨리 만나는 도커(Docker)를 참조해주세요~
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
XSS is much more than just <script>alert(1)</script>. Thousands of unique vectors can be built and more complex payloads to evade filters and WAFs. In these slides, cool techniques to bypass them are described, from HTML to javascript. See also http://brutelogic.com.br/blog
Progressive web apps (PWAs) are a new type of application that combines the best of the web and the best of native apps. PWAs use newer web platform features and service workers to deliver app-style experiences to users. Some key benefits of PWAs include providing responsive and reliable experiences that load instantly and feel like regular apps to users, while also being able to reach users on any device via a web URL rather than an app store. PWAs aim to reduce the barriers between the web and native apps.
어떻게 하면 배포 프로세스를 빠르게 개선할 수 있을까요?
git branch를 푸시하고 개별 테스트 서버를 만드려면 어떻게 해야 할까요?
쿠버네티스와 GitOps, Argo CD를 이용한 배포 방법을 소개 합니다.
Open Infrastructure & Cloud Native Days Korea 2019 발표자료
원본 슬라이드 다운로드 - http://bit.ly/subicura-gitops
The document discusses Node.js and Express.js concepts for building web servers and applications. It includes examples of creating HTTP servers, routing requests, using middleware, handling errors, templating with views and layouts, and separating code into models and routes.
Create-React-App으로 SSR을 구현하며 배운 점 (feat. TypeScript)LanarkSeung
프로덕션 환경에서 클라이언트 사이드 렌더링을 고집하기란 힘든 일입니다. 서버를 통해 웹사이트를 제공하면서도 React의 편리함을 누리려면 서버 사이드 렌더링(SSR)을 구현해야 하는데요. Create-React-App을 그대로 유지하면서 SSR을 구현하는 과정을 보여드리고자 합니다. TypeScript로도 가능합니다!
The JavaScript programming language is a multi-paradigm language that is misunderstood due to its name, design errors in early implementations, and use in web browsers. It is a functional language that uses objects, prototypes, and closures. Values in JavaScript include numbers, strings, Booleans, objects, null, and undefined. All other values are objects.
Welcome to presentation on Spring boot which is really great and relatively a new project from Spring.io. Its aim is to simplify creating new spring framework based projects and unify their configurations by applying some conventions. This convention over configuration is already successfully applied in so called modern web based frameworks like Grails, Django, Play framework, Rails etc.
This document provides an overview of ExpressJS, a web application framework for Node.js. It discusses using Connect as a middleware framework to build HTTP servers, and how Express builds on Connect by adding functionality like routing, views, and content negotiation. It then covers basic Express app architecture, creating routes, using views with different template engines like Jade, passing data to views, and some advanced topics like cookies, sessions, and authentication.
Spring Boot is a framework that makes it easy to create stand-alone, production-grade Spring based Applications that can be "just run". It takes an opinionated view of the Spring platform and third-party libraries so that new and existing Spring developers can quickly get started with minimal configuration. Key features include automatic configuration of Spring, embedded HTTP servers, starters for common dependencies, and monitoring endpoints.
- React is a JavaScript library for building user interfaces that uses a virtual DOM for faster re-rendering on state changes.
- Everything in React is a component that can have states, props, and lifecycle methods like render(). Components return JSX elements.
- Props are used for passing data to components in a unidirectional flow, while states allow components to re-render on changes.
- The render() method returns the view, accessing props and state values. Forms and events also follow React conventions.
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method again.
After watching this you will be able to give answer on following Questions
What is lombok?
Why to use project Lombok?
How to integrate/plug lombok project jar with you Eclipse ID?
How to use lombok maven project?
What is @Getter/@Setter annotation in Lombok java?
How Project Lombok works?
What is @NonNull annotation?
What is @ToString annotation?
How to generate Equals and Hashcode using Lombok?
Check all lombok java example
What are the benefits/advantages of using lombok?
NGRX provides tools for implementing Redux patterns in Angular applications. The key components are:
- The Store holds the single source of truth application state as plain JavaScript objects and uses reducers to immutable update state in response to actions.
- Actions describe state changes and are dispatched to the Store which passes them to reducers. Reducers pure functions that return new state.
- Selectors allow slices of state to be accessed.
- Additional libraries provide debugging with devtools, routing integration, side effect handling, and entity management functionality. Files can be organized by domain or feature module.
하이퍼레저 페이지 단위 블록 조회(How to retrieve data more than totalQueryLimit)
- 블록 데이터 조회가 한 번의 요청에 10만건으로 제한이 되는 제약이 있는 상황에서 이를 페이징처리하여 조회할 수 있는 방법을 다룹니다.(It deals with how block data queries can be paged and queried in situations where there is a limit of 100,000 requests per time request.)
The document provides instructions for setting up Kubernetes on two VMs (master and worker nodes) using VirtualBox. It describes the minimum requirements for the VMs and outlines the steps to configure networking and install Kubernetes, container runtime (containerd), and CNI (Flannel). The steps covered include setting up NAT and host-only networking in VirtualBox, configuring the hosts file, installing Kubernetes packages (kubeadm, kubelet, kubectl), initializing the master node with kubeadm, joining the worker node to the cluster, and deploying a sample pod.
The document provides instructions for deploying a smart contract to a Hyperledger Fabric network using the test network. It describes installing required tools, starting the test network, creating a channel, installing and approving a chaincode package on the channel, and interacting with the deployed chaincode. Key steps include packaging the Java chaincode, installing it on peer nodes from Org1 and Org2, approving the definition from Org1, and invoking/querying transactions on the channel.
This document discusses using the Confluent REST Proxy to interact with a Kafka cluster when a Kafka client library is not available. It provides instructions for installing the REST Proxy, configuring it to connect to an existing Zookeeper and Kafka deployment, and examples of sending and receiving messages to topics using REST APIs. The REST Proxy provides an alternative to using a Kafka client directly when client libraries are not options, but it has fewer configuration options and may not perform as well for high volumes of traffic.
Kafka monitoring using Prometheus and Grafanawonyong hwang
Kafka Cluster를 모니터링 하기 위한 Prometheus 설정을 가이드하고, 이를 시각화하기 위해 Grafana를 연동하는 방법을 설명합니다.
Guide Prometheus settings for monitoring the Kafka Cluster and explain how to work with Grafana to visualize them.
Web Application Development with Quasar Framework
In this tutorial, You can see a rough development process with Quasar Framework which is known as front-end framework with VueJS components.
- Frontend : Quasar (based on Vue.js)
- Backend : Google firebase
- Result
* Web Page : https://checkin.wonyong.net
* Play Store : https://play.google.com/store/apps/details?id=org.kopochecker.app
- Youtube (Korean) : https://www.youtube.com/watch?v=HEttw-RSXxg&list=PLlWoe5hcgrk4qQVIBxDA3d-5ZRfYuITxb
The document provides instructions for setting up a Kubernetes cluster with one master node and one worker node on VirtualBox. It outlines the system requirements for the nodes, describes how to configure the networking and hostnames, install Docker and Kubernetes, initialize the master node with kubeadm init, join the worker node with kubeadm join, and deploy a test pod. It also includes commands to check the cluster status and remove existing Docker installations.
Hyperledger Fabric practice material for Korea Polytechnics students
- Build Your First Network
- Chaincode Development
- Chaincode Devolopment via IBM Blockchain Platform
- Balance Transfer
- Vote system example using 'Balance Transfer' tutorial
The document provides instructions on Docker practice including prerequisites, basic Docker commands, running containers from images, committing container changes to new images, logging into Docker Hub and pushing images.
It begins with prerequisites of having Ubuntu 18.04 or higher and installing the latest Docker engine and Docker compose. It then explains that Docker runs processes in isolated containers and uses layered images.
The document demonstrates basic commands like docker version, docker images, docker pull, docker search, docker run, docker ps, docker stop, docker rm and docker rmi. It also shows how to commit container changes to a new image with docker commit, tag and push images to Docker Hub. Other topics covered include docker exec, docker save/load, docker
Blockchain technology is the backbone of the Bitcoin and it can be used in many other disciplines. This presentation will introduce with basics like transaction, hash, crypto scheme.
This presentation is for anyone who wants to know about overall picture of Blockchain technology.
2. Intro
http/https request
80, 443 port
response
Ngrok agent
NAT / Firewall
외부와 양방향 통신 가능한 고정IP이 없는 경우에
Ngrok의 터널링 기능을 활용하면, 운영환경을 개발서버에서 시뮬레이션 할 수 있음
centos7
3. Nginx 설치
• yum install을 위한 nginx.repo 파일 생성 및 편집
# vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
# yum install -y nginx
4. Nginx 구동
• 서비스 구동 및 접속 확인
# systemctl start nginx
# systemctl enable nginx
6. Ngrok 구동
• 서비스 구동 및 접속 확인
# ngrok http 80
이 주소로 접속하면 Ngrok 중계서버가 나의 서버를 연결해 준다는 의미
이 주소는 리부팅 등 실행시마다 변동됨 (무료 계정)
또한, 8시간 정도만 주소가 유지됨 (실행 이후 주소 고정을 원할 경우 ‘인증토큰’을 추가해줘야 함 다음 장)
7. Ngrok 인증 토큰 추가
• Ngrok 회원 가입 필요
• 토큰 추가는 무료
• 무료 계정은 분당 요청 : 분당 약 40회까지 허용
유료 계정은 분당 약 120회
회원 가입 후 ‘Your Authtoken’ 메뉴 이동하여 토큰 확인
# ngrok config add-authtoken “인증 토큰”
Ngrok 서비스 중지 후 위 명령어 실행 Ngrok 서비스 실행
8. Ngrok 인증 토큰 추가
인증 토큰 추가 후, 재시작한 Ngrok 서비스에서
변경된 접속 주소 확인 후, 해당 주소로 접속
‘Visit Site’ 버튼 클릭
9. 외부 도메인 연결 + https 적용
준비사항 : 도메인 준비
예> 가비아 이벤트용 도메인 1년에 2,000원
[참고]
10. 도메인 등록 및 CNAME 설정
• 도메인 등록 및 CNAME 설정 후 nslookup으로 등록여부 확인
- 최초 도메인 등록時 DNS전파에 일정 시간 소요 (0분~00분)
12. certbot을 활용한 인증서 발급
• certbot certonly -d [도메인명] --manual --preferred-challenges dns
# certbot certonly -d server.kopo.online --manual --preferred-challenges dns
거의 모든 스텝을 ‘Y’로 입력 진행하다가,
우측의 DNS TXT 필드 입력 문구가 나오면
DNS관리에서 입력 및 저장을 먼저 완료하고
엔터를 입력해야 정상 진행됨
14. nginx에 인증서 설정 및 ssl 서비스 등록
• vi /etc/nginx/conf.d/default.conf
• nginx -s reload
server{
listen 443 ssl;
server_name server.kopo.online;
root /usr/share/nginx/html;
index index.html;
ssl_certificate /etc/letsencrypt/live/server.kopo.online/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server.kopo.online/privkey.pem;
}
15. 로컬에서 자체 테스트
로컬 개발서버에서 hosts파일을 임시로 편집하여 로컬 브라우저로 접속하였을때 정상여부를 확인
정상이면 hosts파일은 원상복구
16. 인증서 자동 갱신 크론탭 등록
# crontab -e
0 0 1 * * root systemctl stop nginx && certbot renew -q && systemctl start nginx
매달 1일에 인증서 갱신 시도
17. 외부 도메인과 Ngrok 연계
• server.kopo.online 도메인을 Ngrok으로 연계하기 위해서는
유료 계정을 사용해야 한다.
18. 외부 도메인과 Ngrok 연계
• 유료 계정 가입 후 아래 링크로 이동
25$/month, 1년 단위 계약시 20$/month
• https://dashboard.ngrok.com/cloud-edge/domains
27. 외부 도메인과 Ngrok 연계
• 서버에서 /etc/hosts 파일에 server.kopo.online을 추가해야 하는 이유
상기 내용 미반영시,
서버 외부 브라우저 접속시 인증서 불일치 경고 발생(서버내에 있는 브라우저는 정상 접속)
추정 사유> server.kopo.online 접속 -> ngrok 중계, ngrok 인증서 교환 -> 로컬 서버 응답 ->
응답시 server.kopo.online을 참조하는데 위와 같이 설정하지 않으면 다시 ngrok 서버 및 해당
인증서로 연계하여 접속 주소와 인증서의 불일치가 발생하게 됨 (상기 그림)