노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.




Duplicate files copied in APK META-INF/LICENSE



<메시지>


Error:FAILURE: Build failed with an exception.




* What went wrong:


Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.


> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException:

Duplicate files copied in APK META-INF/LICENSE


 File1: C:\Users\admin\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-annotations\2.7.3\e250c11c1329c7b6b62442a9743befad78be553c\jackson-annotations-2.7.3.jar


 File2: C:\Users\admin\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-databind\2.7.2\84ffa765dd258dbab8695963c41308b054f3a1cb\jackson-databind-2.7.2.jar


 File3: C:\Users\admin\.gradle\caches\modules-2\files-2.1\com.fasterxml.jackson.core\jackson-core\2.7.3\1499b854ae9f370409792db5af1b552dc7d9682f\jackson-core-2.7.3.jar


* Try:
Run with --stacktrace option to get the stack trace.
Run with --debug option to get more log output.



< 조치 >



Add following into respective build.gradle file

android {

...

packagingOptions { exclude 'META-INF/ASL2.0' exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/MANIFEST.MF' }
}


참고 : http://stackoverflow.com/questions/33923461/how-do-i-resolve-duplicate-files-copied-in-apk-meta-inf

블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


윈도우 10 USB 부팅 디스크 만들기


준비물 : 빈 USB ( 최소 4GB )



1. SW 다운로드  : https://www.microsoft.com/ko-kr/software-download/windows10


2. 다운로드 : "지금 도구 다운로드" 선택


3. 실행


이후 단계에서

사용할 미디어는 "USB 플래시 드라이브"를 선택...

블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.

Android Chat SDK

순위권 Tread 비교


     -순위권
        zendesk ( or  zopim )
        liveperson
        twilio
        cometchat
        sendbird

     -순위권외
        conversity
        applogic
        azstack
        velaro
        snapengage
        purechat
        boldchat
        clickdesk
        comm1000
        smartsupp
        kayakoengage
        livehelpnow
        websitealive


https://www.google.com/trends/explore?q=zendesk,liveperson,twilio,cometchat,sendbird



Zendesk vs Salesforce vs Freshdesk: Comparison of Top 3 Help Desk Solutions

1.Freshdesk


2.Zendesk


3.Salesforce


https://financesonline.com/zendesk-salesforce-freshdesk-comparison-of-top-3-help-desk-solutions/


블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Android HelloWorld 만들기


Android Studio를 실행하고,


1. create a new project



2. project name & company domain

Application name : My First App

Company Domain : example.com


3. Target Android Devices 선택 , Minimum SDK 선택


4. Add an Activity to Mobile , Empty Activity 선택


5. Customize the Activity , 기본값으로.. Finish


https://developer.android.com/training/basics/firstapp/creating-project.html




실행



Available Virtual Devices에 AVD(Android Virtual Device)추가 하기


Tools -> Android -> AVD Manager 선택


1. Create Virtual Device...



2. Select Hardware, Nexus 6를 선택


3. Select Image , API 22를 선택


4. AVD , Finish


실행 2





https://developer.android.com/training/basics/firstapp/running-app.html

블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Android Studio 설치 ( Windows )


- 안드로이드를 위한 공식 IDE


설치 설명 동영상 (40초 짜리)

https://developer.android.com/studio/install.html


1. 다운로드 파일을 실행

2. 셋업 마법사를 따라서 Android Studio와 필요한 SDK tools를 설치






파일 받기 링크

https://developer.android.com/studio/index.html


사이즈 예) 2.2.0.12 버젼 ( 1615 MB )



사용자 화면 /  User Interface

https://developer.android.com/studio/intro/index.html



1. toolbar

2. navigation bar

3. editor window

4. tool windows

5. status bar


Project Structure ( 보기형식을 Android로 선택시 )

모든 build 스크립트는 최상위 레벨의 Gradle Scripts아래에 보관된다.

1.manifests : AndroidManifest.xml를 보관

2.java : Java 소스코드와 JUnit 테스트 코드를 보관

3. res : 소스코드가 아닌 모든 리소스를 보관, 예를들면 XML layout, UI 문자열 그리고 bitmap 이미지



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Xamarin + Firebase with FireSharp


- firebase 계정 생성 (또는 로그인) : firebase.google.com ( 구글 통합후의 Home URL )

  : 신규 프로젝트 생성

 


- 데이타 베이스 access key


- 접근 허용은 테스트임으로 전체 허용 ( 실제 서비스는 바람직하지 않음)


Xamarin Studio ( with Visual Studio)에서 Xamarin.Forms를 생성하면서


* Error : Could not install Package, FireSharp 2.0.4 ".NetPortable"

packages.config의 portable-net45+wp8+...등을 지원하지 못하는 경우로, 프로젝트 옵션에서 Targeting을 제외해야 한다.



원문 : http://qiita.com/mah_lab/items/772a05c37d3454803568



Introduction to Xamarin.Forms



- Xamarin 프로젝트 생성 ( Xamarin.Forms )

: Xamarin Studio 다운로드시에 Visual Studio 사용을 선택하면, VS에 필요한 부분만 추가됨



원문 : https://developer.xamarin.com/guides/xamarin-forms/getting-started/hello-xamarin-forms/quickstart/



Tutorial : Get Started with Xamarin in Visual Studio


-Setting Up Visual Studion and Xamarin : C#/.NET (Xamarin 4.1.1)

-Xamarin vs. Xamarin.Forms

-Create a New Xamarin.Forms Project

-Adding a View

-Testing Xamarin App on Android


원문 : https://stormpath.com/blog/tutorial-get-started-with-xamarin-in-visual-studio



Trend 비교 그래프 - Android Studio




'Application, App > Xamarin' 카테고리의 다른 글

모바일 개발 환경 Trend 변화  (0) 2016.10.03
(1) 소개 - Xamarin  (0) 2016.05.20
블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Mobile App Development 관련 Trend


주제 또는 검색어


자마린(xamarin)의 인기가 급등하였으며, 높다.


주요 개발 환경 비교

-Ionic Framework

-Apache Cordova

-Phone Gap

-Xamarin

Xamarin와 PhoneGap의 역전 현상은 눈에 띄게 나타난다.


Xamarin과 연동되는 Framework

- CometChat SDK

- Twilio API

- signalR

- SendBird

'Application, App > Xamarin' 카테고리의 다른 글

HelloWorld Xamarin  (0) 2016.10.04
(1) 소개 - Xamarin  (0) 2016.05.20
블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.

2016년 상위 5종의 PHP 프레임웍들...


왜 PHP 프레임웍을 사용하는가?

Less code and faster development
Great Community support
Performance Tools
Suitable for teamwork
MVC pattern
Utilities and libraries
proper code and file organization
Form validation
Database abstraction
Email, Calender and pagination


인기 PHP 프레임웍

1.PHALCONPHP

2.LARAVEL

3.SYMFONY

4. YII FRAMEWORK

5. CAKE PHP

etc. Zend Framework, CodeIgniter


Trend ( 2004 ~ 2016 )


왜 Larevel은 2016년에 최고의 PHP 프레임웍이 되었나?


Best feature

-Routing System(Restful)

-Unit Testing

-Database Query Builder

-Cashing

-Artisan Console

-Http Middleware


Ref :


Top 5 Best PHP Frameworks for 2016 To Become a Master Developer

https://webandmobiletech.wordpress.com/2016/01/01/top-5-best-php-frameworks-for-2016-to-become-a-master-developer/

Why Laravel Is Best Php Framework In 2016?

http://www.amarinfotech.com/why-laravel-is-best-php-framework-in-2016.html

블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Firebase and backend logic ( 번역 )


- Question 

Parse에서 다른 서비스를 고려중이다. Firebase에 어떻게 백엔드 로직을 만들 수 있나?

서버측(또는 트리거)에서 모든 값을 검증하는 것을 원한다.

생각하는 방식은

1) nodejs server를 만든다. 물론 express를 사용한다.

2) (비지니스) 로직를 다루는 미들웨어를 만든다.

3) App에서 Rest요청을 보낸다. 그것은 미들웨어를 작동시킨다.

4) firebase의 nodejs sdk를 사용해서 http request의 파라미터에 따라 값을 변경한다

5) app firebase handler에서 변경된 내용을 감지하도록 구현한다.

* 1번에서 전송하면, node server에서 http req를 받아 firebase에 업뎃하고,

2,5,1번에게 반영된다.


다른 좀 더 쉬운(방법)게 있나요? parse에서 클라우드 코드를 사용했고, (비지니스)로직은 클라이언트 측보다 서버측에 있길 원한다.


- Answer 1

Firebase Application의 일반적인 (시스템)구성은 "Where does Firebase fit In your app?"이라는 블로그 포스트에 아주 잘 정의가 되어 있다.

Pattern1 : 100% Firebase-powered apps

많은 Firebase중심의 app은 오직 client code로만 구성이 된다.


Pattern2 : Firebase-powered app with server code

오직 client code만으로 불가능한 경우에 해당한다. ( 3rd party API등을 사용)


Pattern3 : Existing app with Firebase-powered features

큰 사이트등을 위한 일반적인 패턴이다.

( 기존에 있던 모든 기능을 갖는 app을 재작업하려는 계획이 없을때등 )


원하는 (시스템)구성은 Pattern3에 가장 근접하다. client측 code는 Firebase나 node.js서버 양족으로 직접 통신을 한다.


또한 높게 추천하는 것은 Pattern2를 고려 하라는 것이다. 클라이언트와 서버 사이의 모든 상호작용은 firebase를 통하는 것이다. 이 구성의 아주 좋은 예제는 Flashlight search integration이다.


- monitor multiple Firebase paths and index data in real time

- communicate with client completely via Firebase

(client pushes search terms to search/request and read results from search/result )

- clean up old, outdated requests


클라이언트가 search query를 firebase database에 쓴다. 서버가 요청을 대기하고, 쿼리를

수행하고 결과를 (firebase) database에 써 준다. 클라이언트는 결과를 기다린다.


간단하기 서버에 사용되기 위한 (코드) 윤곽

이 마지막 접근 방식은 Client가 Server와 절대로 직접 통신하지 않는다. 걱정해야 하는 모든 잠재적인 문제들을 제거한다. 이런 이유로 이런 방식을 종종  server대신에 "bots"으로 언급한다.


- Answer 2

이렇게 하는 것이

- 모든 입력은 검증하는 ".validate rules" 를 사용하라. 이것을 위해 서버는 필요가 없다.

- 만약 실행해야 하는 작업이 있다면, Firebase Queue를 사용하라


만약 이와 같이 사용하지 않는 다면, 2가지 문제점이 생길거다.

- 직접 포스트한것 만을 사용하려면, 서버에서 권한 객체를  취하는것이 약간 까다로워진다.

-  만약에 단순하게  firebase app을 변화를 감지하고 반응하는 인스턴스로 사용하면(위의 Pattern 2), 아마도 확장성 문제를 갖게 될 것 이다.
백엔드가 확장되서 2개의 인스턴스가 되면, firebase편집은 그것들의 trigger task가 될 것이다.  각 인스턴스는 변경되었다는 통보를 받게되고, 동일 task가 서로 실행되어,
결과 객체에 추가/교체를 서로 하고, 요청 객체를 서로 삭제하려고 할 것 것이다.

이런 문제점들을 피하기 위해 Firebase Queue를 사용해라.



REF :

http://stackoverflow.com/questions/35360421/firebase-and-backend-logic



추가 링크

Mobile App Backend Services

https://cloud.google.com/solutions/mobile/mobile-app-backend-services


-mobile app을 위해서 backend를 만들때 고려할 부분들

Limit on-device data storage
Synchronize data across multiple devices
Handle the offline case gracefully
Send notifications and messages
Minimize battery drain


- design patters , Cloud Platform을 사용하는 다양한 방법



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


하나의 메모리 누수를 잡기까지

실행중인 프로세스를 연결하기


jmap

> jmap -histo:live <pid> | more

num    # instances    #bytes    class name  
----------------------------------------------
1:    3062256    677810312    [C  
2:    3176949    76246776        java.lang.String  
3:    29959    32072704        [I  
4:    380080    27365760        xxx.xxx.common.model.xxxx

위의 연결 방법이 거부 당할때

> jmap -F -dump:live, format=b, file=heap.bin <pid>


참조 : http://d2.naver.com/helloworld/1326256



힙 덤프 분석

Eclipse/이클립스 Memory Analyzer ,

다운로드 : Eclipse Marketplace 


덤프 파일 분석 분석


덤프 파일을 읽어서 ( File -> Open Heap Dump ) 분석을 진행...

Dominator Tree, Top Consumers등의 정보를 확인하여, 가장 큰 원인을 찾아 본다.


참조 : http://www.vogella.com/tutorials/EclipseMemoryAnalyzer/article.html



Java Memory Analysis

메모리 분석 힙(Heap)


jhat

> jhat -J-mx2048m heap.bin   [http://localhost:7000/]


참조 : http://kwonnam.pe.kr/wiki/java/memory



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Spring Boot 소개 , JPA / MySQL , Maven



프로젝트 생성하기 ( start.spring.io )

Maven Project에서 Packaging은 War로 변경하고, Web/JPA/MySQL Dependency를 선택한다. Generate Project 버튼을 누르고, Zip파일을 다운로드 한다.


다운로드 Zip 파일은 원하는 프로젝트 폴더에 Unzip를 한다.


프로젝트 Import하기

Project from Folder or Archive를 선택하고, Next를 누른다.


*Perspective는 Spring환경으로 설정을 해야 한다.



아래와 같은 pom.xml를 확인할 수 있다.


application.properties에 MySQL 관련 정보를 추가 한다.

* url의 database는 생성이 되어 있어야 한다. ( table은 자동 생성됨 )

#
# mysql connection
#
spring.datasource.url=jdbc:mysql://localhost:3306/test_spring_boot
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.hibernate.ddl-auto=update

-hibernate.ddl-auto는 상용서비스(실제 서비스용)에서는 사용하지 않는게 맞다.

validate : validate the schema, makes no changes to the database.

update : update the schema

create : creates the schema, destroying previous data ( app재시작시에 모두 재생성됨)

create-drop : drop the schema at the end of the session

Class/Interface 작성 ( control, model, dao - Package )

@Entity, @Id, @GeneratedValue, @Column를 사용

@Controller, @Autowired, @RequestMapping, @ResponseBody를 사용




실행 결과


1) 전체 리스트 조회


2) 추가하기

3) 다시, 전체 리스트 조회

4) 자동 생성된 Table




관련 이슈 논의 stackoverflow

http://stackoverflow.com/questions/27981789/how-to-use-spring-boot-with-mysql-database-and-jpa

블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Spring Boot Actuator


Actuator는 매우 도움을 주는 라이브러리로 어플리케이션의 자세한 런타임정보를 제공한다.


pom.xml ( Maven )에 추가 하기


<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-actuator</artifactId>
    <version>1.3.3.RELEASE</version>
</dependency> 


Application Health 호출 ( http://localhost:8080/health )



그외 정보들


URL
Desc
env Exposes properties from Spring’s ConfigurableEnvironment.
beans Displays a complete list of all the Spring beans in your application.
configprops Displays a collated list of all @ConfigurationProperties.
dump Performs a thread dump.
health Shows application health information (when the application is secure, a simple ‘status’ when accessed over an unauthenticated connection or full message details when authenticated).
logfile Returns the contents of the logfile (if logging.file or logging.path properties have been set). Only available via MVC. Supports the use of the HTTP Range header to retrieve part of the log file’s content.
metrics Shows ‘metrics’ information for the current application.
mappings Displays a collated list of all @RequestMapping paths.
trace Displays trace information (by default the last few HTTP requests).



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.

이클립스, Spring Starter Project 사용시

( New -> Spring  -> Spring Starter Project )

HTTP response code : 403 발생


1) eclipse 발생 에러 메시지


IO Exception : Server returned HTTP response code : 403 for URL :

http://start.spring.io



2) 검색 결과 답변들


You are getting a HTTP 403 Forbidden from the spring.io HTTP server. I can access your URL and download the archive - maybe you have a restrictive proxy or firewall in your way?


http://stackoverflow.com/questions/33378088/spring-tool-suite-error



3) 의심 증상


이클립스 내장 브라우저에서 접속시에 CAPCHA를 확인하는 페이지로 넘어간다.

아마도 spring.io의 특정 URL을 요청시에 redirect가 발생하면서 정상 처리가 안되는것 같다.



4) 확인 할것


사용중인 IP를 검색하고, blacklist에 등록되어 있는지 여부를 확인

http://whatismyipaddress.com/blacklist-check



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Spring Boot 소개 및 HelloWorld 작성


- Spring Boot Application 작성 하기

- Spring Boot(Jar)를 War 배포/전환 하기


Spring은 수년간 좋은 프레임웍이었지만 결점은 거의 없었다. 이 강좌에서, Spring Boot의 소개는 Spring Boot가 얼마나 결점들을 해결하면서 최신 현대적인 소프트웨어 아키텍처를 지원하는지를 보여준다.

저자는 2014년말경 부터 spring boot를 사용했으며, 최신버젼 1.3.3으로 이 문서를 작성했다.


What is Spring Boot ?

한 문장으로, Spring Boot는 Spring Framework에서 XML Configuration을 빼고, 통합된 서버를 제공한다.


Spring Boot Components


- Spring Boot Auto Configure

스프링 프로젝트를 다양하게 자동 구성하는 모듈. Batch, Data JPA, Hibernate, JDBC등의 프레임웍을 감지할 수 있다. 감지하게 되면, 자동 구성을 하고, (생성된) 프레임웍은 다소 필수적인 기본(구성)값을 갖는다.

- Spring Boot Core ,  Spring Boot CLI ,  Spring Boot Actuator

이 프로젝트가 추가 되면, 어플리케이션을 확실하게 기업 특성(보안, 지표, 기본 에러 페이지등)이 가능하게 한다.

- Spring Boot Starters ,  Spring Boot Tools


How to use Spring Boot


다른 글에서 어떻게 사용하고 어떻게 Spring Boot를 실행하는지를 보여주겠지만, 여기서는

아래 절차를 따라하는 것이 필요하다.


- 초기 설정을 생성하기 위해 스프링 초기화를 사용할 수 있다.

  : start.spring.io를 방문하거나 이클립스/IDEA에서 쓸 수있는 STS(Spring Tool Suite)를 사용해서 Spring Boot Starters를 선택한다.

  : start.spring.io를 사용하게 되면, zip파일을 다운로드해야 하고, workspace를 구성해야한다.


- 빌드Tool 로써 Maven 또는 Gradle를 선택할 수 있다.

- 필요한 code를 추가한다.

- mvn clean package를 사용하거나 이클립스/IDEA에서 빌드하고 jar를 생성하라.

- 기본으로 JAR는 통합 Tomcat server에 포함되고, JAR를 실행하므로써, 프로그램을 사용할 수 있다.


http://www.adeveloperdiary.com/java/spring-boot/an-introduction-to-spring-boot/



How to Create Spring Boot Application Step By Step


1) Create Spring Boot Application using start.spring.io 

- 선택 : Web(필수), Actuator(옵션)

옵션 선택후에 Generate Project를 누르면, 프로젝트가 다운로드 시작된다.

다운로드 완료후에 풀고, import를 한다.



* Eclipse에서 생성시 선택 화면

* Dependencies는 필요한 부분을 선택


2) Controller 작성 및 실행


@RestController
public class HelloRestController {


    @RequestMapping("/")
    public String index() {

         return "helloworld!";
    }

}

3) Run Spring Boot Application in Eclipse ( Run As -> Spring Boot App )




* 실행 오류 Dependencies에서 DB(MySQL, PostgreSQL)를 선택후에 설정을 하지 않는 

경우에는 다음과 같은 에러가 발생한다.

***************************
APPLICATION FAILED TO START
***************************

Description:

Cannot determine embedded database driver class for database type NONE


- application.properties에 아래와 같은 항목과 알맞게 우측 내용을 채워야 한다.

#DataSource settings : set here configuration for the database connection
#spring.datasource.url=
#spring.datasource.username=
#spring.datasource.password=
#spring.datasource.driver-class-name=org.postgresql.Driver



* Spring Boot,  jar -> war 배포로 변경


- Spring Boot Application -> Tomcat에 war 배포 하기


1) Application을 SpringBootServletInitializer으로 extends한다.

-- org.springframework.boot.context.web.SpringBootServletInitializer

-- org.springframework.boot.web.support.SpringBootServletInitializer

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class, args);
    }

}

2) pom,xml에서 war로 packing를 변경한다

<packaging>war</packaging>

3) pom.xml에서 tomcat dependency를 추가한다. ( spring-boot-starter-tomcat )

<dependencies>
    <!-- … -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
    <!-- … -->
</dependencies>

- 추가후 Maven -> Update Project 실행 필요


* 실행 오류 : The selection cannot be run on any server.


- tomcat server선택시에 상단의 붉은색 메시지 부분을 확인 후에 해제

 해제는 Project Facets


( start.spring.io 의 default설정 값으로 보임 )


참고 : 

http://www.adeveloperdiary.com/java/spring-boot/create-spring-boot-application-step-step/ ,

 [블로그개발_01] STS로 Spring Boot 웹 프로젝트 시작하기


http://camon85.blogspot.co.id/2015/12/spring-boot-war.html

Spring Boot war배포


http://stackoverflow.com/questions/35702975/how-to-deploy-a-simple-spring-boot-with-gradle-build-system-to-apache-tomcat

How to deploy a simple Spring Boot (with Gradle build system) to Apache Tomcat (real server, not embed server)?

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}
package hello;

public class Greeting {

    private final long id;
    private final String content;

    public Greeting(long id, String content) {
        super();
        this.id = id;
        this.content = content;
    }

    public long getId() {
        return id;
    }

    public String getContent() {
        return content;
    }

}
package hello;

import java.util.concurrent.atomic.AtomicLong;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class GreetingController {

    private static final String template = "Hello, %s";
    private final AtomicLong counter = new AtomicLong();

    @RequestMapping("/greeting")
    public Greeting greeting(@RequestParam(value = "name", defaultValue = "World") String name) {
        return new Greeting(counter.incrementAndGet(), String.format(template, name));
    }

}


http://stackoverflow.com/questions/32571437/why-am-i-getting-project-facet-cloud-foundry-standalone-application-version-1-0

Why am I getting “Project facet Cloud Foundry Standalone Application version 1.0 is not supported”?



블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,
노출되는 이미지가 불편하시겠지만 양해를 구합니다. 노출, 클릭등에 관한 자료로 활용 중입니다.


Spring 4 MVC , Apache Tiles 3


Apache Tiles 3와 Spring MVC의 통합과 Bootstrap 적용 예제



1. 실행 화면


2. 사이트 URL

http://www.techyari.in/2015/06/spring-mvc-and-apache-tiles-3-integration-tutorial-with-example.html


블로그 이미지

StartGuide

I want to share the basic to programming of each category and how to solve the error. This basic instruction can be extended further. And I have been worked in southeast Asia more than 3 years. And I want to have the chance to work another country.

,