- OpenAPI
- ๋ฆฌ๋ ์ค ๋ช ๋ น์ด
- SQL
- DATABASE
- Data Structure
- node js
- SSL
- C++
- docker
- spring ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
- Unity
- java error
- datagrip
- ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ
- spring์ผ๋ก https ์ ์ฉ
- Spring
- ์์คํ ์ํํธ์จ์ด
- Java
- RP 2๊ธฐ
- mysql
- MAKE US
- Quick Sort
- ํจ์คํธ์บ ํผ์คX์ผ๋์
- merge sort
- spring ์์ ๋ก๊ทธ์ธ
- GIT
- Rp2๊ธฐ
- @CreatedDate
- MethodArgumentNotValidException
- aligoapi
๋ชฉ๋ก์ ์ฒด ๊ธ (129)
YS's develop story

@Getter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) public abstract class BaseTimeEntity { @CreatedDate protected LocalDateTime createdAt; @Column(insertable = false) @LastModifiedDate protected LocalDateTime updatedAt; ..... .... ์์ ๊ฐ์ด createdAt ์นผ๋ผ์ ํ ์ด๋ธ์ ํํ์ด ์์ฑ๋ ๋ ์ต์ด์์ฑ๋ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ๊ฐ์ด ๋ฃ์ด์ง๋๋ก @CreatedDate ์ด๋ ธํ ์ด์ ์ด createdAt ํ๋์ ์ ์ฉ๋์ด ์์ต๋๋ค. ์๋๋๋ก๋ผ๋ฉด ์ด์ ์ด ์ํฐํฐ๋ฅผ ์ ์ฅํ ๋๋ง๋ค createdAt ํ๋๋ ํ์ฌ ..

docker-compose.yml ์ค์ ํ์ผ version: '3' services: travel-db: container_name: test build: context: ./database dockerfile: Dockerfile ports: - "3307:3306" restart: always healthcheck: test: [ "CMD", "mysqladmin" ,"ping", "-h", "localhost" ] timeout: 30s retries: 3 networks: - network networks: network: container_name -> ์ปจํ ์ด๋์ ์ด๋ฆ์ test๋ก ์ค์ ํฉ๋๋ค. build ์น์ : ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋น๋ํ๋ ๋ฐ ํ์ํ ์ค์ ์ ๋๋ค. context: ./database: ..

gradle์ ์ถ๊ฐ // dotenv-java implementation 'io.github.cdimascio:java-dotenv:+' . envํ์ผ ์์ฑํ์ฌ ์ต์๋จ์ ๋ฃ๊ธฐ GOOGLE_MAP_API_KEY=apikey . gitignore๋ก. envํ์ผ ๋ฑ๋ก # Ignore .env files .env ์๋์ ๊ฐ์ด ๋ฑ๋ก๋ secretKey ์ฌ์ฉ private static Dotenv dotenv = Dotenv.load(); private static final String API_KEY = dotenv.get("GOOGLE_MAP_API_KEY"); application.yml ํ์ผ์ import: optional:file:.env[.properties] ํญ๋ชฉ ์ถ๊ฐ spring: profiles: ..

^ ์์์ ์๋ฏธํจ ex) ^[.] ->.๋ก ์์ํ๋ค๋ฉด.. String string = "...!@BaT#*..y.abcdefghijklm"; string = string.replaceAll("^[.]", "X"); System.out.println(string); // -> X..!@BaT#*..y.abcdefghijklm ^a -> a๋ก ์์ํ๋ค๋ฉด.. String string1 = "apple"; string1 = string1.replaceAll("^a","X"); System.out.println(string1); // -> Xpple; ์ฃผ์ํ ์ ์ ๊ดํธ [] ์์ ^๊ฐ ์๋ค๋ฉด ๋ถ์ ์ ์๋ฏธ๋ก ์ฌ์ฉ๋ฉ๋๋ค. [^.] ->. ์ด ์๋๋ผ๋ฉด.. String string = "...!@BaT#*..y.abcd..

JSP, Tomcat ํ์ฉํ์ฌ MySQL ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ ์๋ ์ฌ์ดํธ์์ MySQL Connector์ plaform independent ์ ํ ํ ๋ค์ด๋ก๋ํด์ค๋๋ค. MySQL :: Download Connector/J MySQL Connector/J 8.0 is highly recommended for use with MySQL Server 8.0, 5.7 and 5.6. Please upgrade to MySQL Connector/J 8.0. dev.mysql.com ์ ๋ ํ๋ก์ ํธ์์ libํด๋๋ฅผ ๋ฐ๋ก ์์ฑํด์ ๋ค์ด๋ก๋ํ connector์ ํด๋์ ๋ฃ์ด์ฃผ์์ต๋๋ค. File - Project Structure Libraries ํด๋ฆญ ํ +๋ฅผ ๋๋ฌ ํด๋์ ๋ฃ์ด์ค mysql-connect.jar ํ์ผ์ ์ ..

โ Problem Insert๋ฌธ์ ํ์ฉํ์ฌ ํ ์ด๋ธ์ 1000๊ฐ๊ฐ ๋๋ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ผ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น์? Insert๋ฌธ์ 1000๋ฒ ์คํํ๋ ๊ฑด ๋งค์ฐ ๋นํจ์จ์ ์ผ๋ก ๋ณด์ ๋๋ค. ๐ Solution Procedure์ ํ์ฉํ๋ฉด ๊ฐ์ ์ฟผ๋ฆฌ๋ฌธ์ ๋ฐ๋ณต์ ์ผ๋ก ์คํํ ์ ์์ต๋๋ค. Person์ด๋ผ๋ ํ ์ด๋ธ์ ์๋์ ๊ฐ์ด sql๋ฌธ์ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ๋ฃ์ ์ ์์ต๋๋ค. CREATE PROCEDURE loopInsert() BEGIN DECLARE i INT DEFAULT 1; WHILE i

โ Problem ๋์์์ AWS S3 ์คํ ๋ฆฌ์ง์ ์ ์ฅ์ ํ๋ API๋ฅผ ์ค๊ณํ๊ณ TEST์๋ฒ์์ API์ ์ฌ์ฉํ์ฌ ์ ์ปดํจํฐ์ ์๋ ๋์์์ ์ ์ฅํ๋ ค๊ณ ํ ์คํธํ ๋ ์๋์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์ด๋ป๊ฒ ํด๊ฒฐํด์ผ ํ ๊น์? ๐ ๐ Solution Nginx์ ํ์ผ ์ ๋ก๋ ํฌ๊ธฐ๋ฅผ ์ค์ ํด ์ฃผ์ด์ผ ํฉ๋๋ค. ์ค์ ๋์ง ์์ ๊ฒฝ์ฐ 1M๊ฐ ํ์ผ์ ๊ฒฝ์ฐ ์๋ฌ๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค. ์๋์ ๊ฐ์ด Nginx์ ํ์ฉ ์ฌ์ด์ฆ๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ์ฐ์ ์ค์ ํ์ผ์ ์ด์ด ์ค์๋ค. vim /etc/nginx/nginx.conf http์ ํด๋นํ๋ ๋ธ๋ก์ ์๋์ ๊ฐ์ด ํ์ฉ ์ ํ์ ์ค์ ํด ์ค๋๋ค. http { ... .. client_max_body_size 100M; ... .. . } ์์ ๊ฐ์ด ์ค์ ์ ๋ง์ถ ํ, Nginx๋ฅผ ์ฌ์..