Develop 111

[Flutter] 커스터마이징 네비게이션 바 convex_bottom_bar 쉽게 사용해보기

convex_bottom_bar는 Flutter에서 사용 가능한 커스터마이징 가능한 하단 네비게이션 바 패키지입니다. 일반적인 하단 네비게이션 바에 독특한 애니메이션 효과와 함께 중간에 튀어나오는 버튼이 추가된 디자인을 제공합니다. 이 패키지는 특히 사용자 경험을 향상시키고, UI에 좀 더 활기를 불어넣는 데에 적합합니다. https://pub.dev/packages/convex_bottom_bar convex_bottom_bar | Flutter packageA Flutter package which implements a ConvexAppBar to show a convex tab in the bottom bar. Theming supported.pub.dev 패키지 설치pubspec.yaml 파일에..

Develop/Flutter 2024.09.28

타임리프(Thymeleaf) 현재 날짜 출력 및 format 변환

#calendars.createNow()는 타임리프(Thymeleaf)에서 제공하는 유틸리티 객체 중 하나로, 현재 날짜와 시간을 타임리프 자체적으로 생성할 수 있습니다. 이는 타임리프에서 서버에서 값을 넘기지 않고도 템플릿 내에서 현재 시간을 생성하여 사용할 수 있게 해줍니다.#calendars는 날짜와 시간과 관련된 유틸리티 객체로, 특히 #calendars.createNow()는 템플릿에서 현재 날짜와 시간을 얻을 때 유용합니다.#calendars.createNow() 사용 예제아래는 타임리프에서 #calendars.createNow()를 사용하여 현재 날짜와 시간을 출력하는 예제입니다. 현재 날짜와 시간 출력 현재 날짜와 시간: 현재 날짜 (yyyy-MM-dd 형식..

Develop 2024.09.28

[Flutter] flutter create 명령어 옵션 정리 및 예제

1. 기본 flutter create 사용법가장 기본적인 형태의 flutter create 명령어는 다음과 같습니다flutter create my_project위 명령어는 my_project라는 이름의 새 프로젝트를 생성합니다. 프로젝트가 생성된 후에는 디렉토리 내에 기본적인 구조와 샘플 앱이 포함된 상태로 프로젝트가 준비됩니다.2. --org 옵션: 조직 ID 설정--org 옵션은 프로젝트의 패키지명을 설정하는 데 사용됩니다. 주로 Android 패키지 이름이나 iOS의 번들 식별자에 사용됩니다. 도메인 이름을 역순으로 작성하는 것이 일반적입니다.flutter create --org com.example my_project이 명령어는 Android 패키지를 com.example.my_project로, ..

Develop/Flutter 2024.09.28

[Java] 현재 서버 도메인 정보 갖고오기

예제 코드: 현재 도메인 정보를 가져와서 문장을 생성하는 코드import java.net.InetAddress;import java.net.UnknownHostException;public class DomainInfoGenerator { public static void main(String[] args) { try { // 1. 현재 시스템의 도메인 정보를 가져옴 String domainName = getDomainName(); // 2. 도메인 정보를 이용해 문장 생성 String domainMessage = createDomainMessage(domainName); ..

Develop/JAVA 2024.09.26

[Java] spring security 설정 csrf 특정 url 예외 처리

spring security 의 csrf 설정 시 csrf 값이 없으면 페이지가 정상적으로 로드되지 않고 403 forbidden 권한없음 에러가 발생 됩니다.  1. CSRF란?CSRF(Cross-Site Request Forgery)는 악의적인 사이트에서 사용자의 인증된 세션을 도용해, 사용자가 의도하지 않은 요청을 실행하도록 만드는 공격입니다. 이를 통해 공격자는 사용자 대신 원하지 않는 행동을 수행할 수 있으며, 예를 들어 게시글 삭제, 계정 변경, 금전 송금 등과 같은 중요한 작업이 이루어질 수 있습니다.2. CSRF 보호의 필요성CSRF 공격은 사용자의 권한을 이용하여 악의적인 요청을 보내는 방식이기 때문에, 이를 방지하지 않으면 중요한 정보를 탈취하거나 악성 행위를 수행할 수 있습니다. Sp..

Develop/JAVA 2024.09.26

[Java] GET POST 메서드 REST API 호출 서비스 만들기

Java에서 REST API 호출을 위한 GET 및 POST 방식을 지원하고, 파라미터를 JSON 형태로 넘길 수 있는 함수 import java.net.URI;import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.http.HttpResponse;import java.net.http.HttpHeaders;import java.net.http.HttpRequest.BodyPublishers;import java.net.http.HttpResponse.BodyHandlers;import java.time.Duration;import java.util.Map;import com.fasterxml.jackson.datab..

Develop/JAVA 2024.09.25

[Java] forEach 와 Stream API를 사용한 배열 처리

Java에서는 배열이나 리스트와 같은 컬렉션 데이터를 처리할 때 반복문을 사용하는 것이 일반적입니다.특히 Java 8 이후로는 forEach() 메서드와 Stream API를 통해 간결하고 함수형 스타일로 컬렉션을 처리할 수 있게 되었습니다.1. forEach() 메서드forEach() 메서드는 리스트의 모든 요소에 대해 특정 작업을 수행할 때 사용됩니다. 이를 통해 반복 작업을 간결하게 표현할 수 있습니다.문법list.forEach(element -> { // 각 요소에 대해 수행할 작업}); element: 리스트의 각 요소를 나타냅니다.->: 람다 표현식으로 요소에 대해 수행할 작업을 정의합니다.예시1. 리스트의 모든 숫자에 2를 곱하기import java.util.Arrays;import jav..

Develop/JAVA 2024.09.24

[JavaScript] map() 메서드 사용방법 및 활용 예제

JavaScript의 map() 메서드는 배열의 모든 요소에 대해 함수를 호출하고, 그 결과를 새로운 배열로 반환하는 매우 유용한 배열 메서드입니다. map() 메서드는 기존 배열을 변경하지 않고, 각 요소를 변형한 결과를 새 배열로 반환합니다.문법array.map(function(currentValue, index, array) { // return element for new array}, thisArg);currentValue: 배열에서 현재 처리되고 있는 요소입니다.index (선택 사항): 현재 처리되고 있는 요소의 인덱스입니다.array (선택 사항): map() 메서드를 호출한 배열입니다.thisArg (선택 사항): 콜백 함수 내부에서 this로 사용할 값입니다.특징map()은 새로운 배..

Develop 2024.09.24

[Flutter 플러터] 안드로이드 심사 중 "버전 코드는 이미 사용되었습니다. 다른 버전 코드를 사용해 보세요." 해결방법

안드로이드 앱 심사를 위해 버전 생성 후 업로드 할 때"버전 코드는 이미 사용되었습니다. 다른 버전 코드를 사용해 보세요." 라고 하면서업로드가 안되는 경우가 있습니다.이런 경우 {프로젝트 디렉토리}/android/app/build.gradle 에서 버전 정보를 수정해줘야 합니다. [참고 안드로이드 aab 빌드파일 만들기 ]2024.08.31 - [Develop/Flutter] - [Flutter 플러터] 안드로이드 Play Store 앱 배포를 위해 aab 파일 만들기 - MAC [Flutter 플러터] 안드로이드 Play Store 앱 배포를 위해 aab 파일 만들기 - MAC앱 디지털 서명Google Play 스토어에 출시하기 위해서는 반드시 앱에 디지털 서명을 해야 합니다.디지털 서명을 진행한 후..

Develop/Flutter 2024.09.17

[Flutter 플러터] 패키지명 변경 시 android 수정해야 할 내용 feat.FATAL EXCEPTION: main

안드로이드 어플 심사할 때 패키지명을 변경하라고 하는 경우가 있습니다flutter 로 프로젝트 생성 하면 기본 패키지가 "com.example.프로젝트명" 이렇게 됩니다.이때 example 을 패키지명으로 사용하지 말라고 하기 때문에 변경합니다.그리고 빌드를 하면 아래와 같은 오류가 발생 합니다. 오류 내용 : FATAL EXCEPTION: mainE/AndroidRuntime(14305): FATAL EXCEPTION: mainE/AndroidRuntime(14305): Process: com.taekistyle.avg_price, PID: 14305E/AndroidRuntime(14305): java.lang.RuntimeException: Unable to instantiate activity Co..

Develop/Flutter 2024.09.17