Langsung ke konten utama

Postingan

Menampilkan postingan dari Mei, 2022

Spring Rest Advance Search Generator

Description Di tutorial ini saya akan sharing cara cepat buat api search filter dengan bantuan liblary spring-filter , spring-filter ini akan membuatkan sebuah Spesification yang nantinya kita gunakan untuk filter di repositorynya, untuk filter field nya dia akan mengikuti properti entitynya. Feature Spring-Filter Menggunakan operator sama dengan : Request :   /cars?search=color:Red Mengunakan operator tidak sama dengan ! Request :   /cars?search=color!Red   Menggunakan operator lebih besar dari   > Request :   /cars?search=creationyear>2017 Menggunakan operator kurang dari   < Request :   /cars?search=price<100000 Menggunakan operator like   * Request :   /cars?search=brand:Aston* Menggunakan operator   OR Request :   /cars?search=color:Red OR color:Blue Menggunakan operator   AND Request :   /cars?search=brand:Aston* AND price<300000 Menggunakan kurung buka ( ) Request :   /cars?search=( brand:Niss...

org.hibernate.TransactionException: JDBC begin transaction failed:

Issue org.hibernate.TransactionException: JDBC begin transaction failed: Solution Tambahkan settingan ini di file application.properties  spring.datasource.dbcp.test-while-idle = true spring.datasource.dbcp.time-between-eviction-runs-millis = 3600000 spring.datasource.dbcp.validation-query = SELECT 1 source:  https://stackoverflow.com/questions/22684807/spring-boot-jpa-configuring-auto-reconnect   https://stackoverflow.com/questions/60427372/occasionally-getting-jdbc-begin-transaction-failed-then-recovers-automatically

bad value for type long

Issue ini masalah di column yang data typenya text (saya menemukan masalah ini di database Postgresql) yang tidak bisa diconvert ke string . Solution tambahin @Lob dan @Type(type = "org.hibernate.type.TextType") di column yang bertipe data text . How To @Lob @Type ( type = "org.hibernate.type.TextType" ) @Column private String contentJson ; source: https://stackoverflow.com/questions/12647755/bad-value-for-type-long-postgresql-hibernate-spring

JPA Entity tanpa @Id

Issue Masalah ini terjadi ketika entity tidak memiliki @Id didalam entity, jadi di JPA mewajibkan dia memiliki @Id . Solution Solusinya mengganti @Id dengan  @EmbeddedId dan membuat class baru untuk class Id nya yg menyimpan entity relationship dengan tipe data sesuai dengan column di database. How To Class Entity Id  @Embeddable @Data public class FilmCategoryId implements Serializable { private static final long serialVersionUID = - 4161332004787248098L ; @Column ( name = "film_id" , nullable = false ) private Integer filmId ; @Column ( name = "category_id" , nullable = false ) private Integer categoryId ; } Class Entity @Entity @Table ( name = "film_category" ) @Data public class FilmCategory { @EmbeddedId private FilmCategoryId id ; @MapsId ( "filmId" ) @ManyToOne ( fetch = FetchType . LAZY , optional = false ) @JoinColumn ( name = "film_id...

Port Manager di mac

Description Port Manager adalah aplikasi untuk melihat port yang sedang terbuka dan kita bisa memanage port tersebut seperti kill dan open via browser. Feature 1. Lihat port dan aplikasi yang jalan di port tersebut, kita juga bisa lihat PID( Processed ID ) dari port tersebut. 2. Open port via browser. 3. Kill port yang sedang running. How To Install 1. Download aplikasinya di link ini  https://portmanager.app/ , jika anda tikan ingin donasi ketika download beri 0 2. download dan install setelah diinstall open port dan Port Manager akan ada di top bar seperti ini

Incorrect error: incompatible types: cannot infer type-variable(s) T#1,CAP#1,T#2

Issue ini terjadi ketika build di intelliJ, tp aman ketika run jar, ini terjadi karna compiler tidak disupport lombok jadinya di lombok tidak bekerja. Solution tambahkan satu line ini di  'Shared build process VM options:' -Djps.track.ap.dependencies=false lalu mvn clean package source: https://stackoverflow.com/questions/65128763/java-you-arent-using-a-compiler-supported-by-lombok-so-lombok-will-not-work-a

Install Node dengan NVM di Mac

Description NVM( Node Version Manager ) adalah shell digunakan untuk install dan manage NodeJs di Linux, users Mac bisa menginstall NVM dengan homebrew. Install Homebrew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" Install NVM di Mac OS brew update brew install nvm Buat folder untuk NVM di home mkdir ~/.nvm sekarang config enviropment variable, jika menggunakan bash edit file ~/.bash_profile , dan jika menggunakan zsh pakai file ~/.zshrc . disini saya contohkan di bash . vim ~/.bash_profile lalu tambahkan script dibawah ini. export NVM_DIR=~/.nvm source $(brew --prefix nvm)/nvm.sh Press ESC + :wq untuk mengsave file. sekarang load enviropment yang telah kita tambahkan file diatas dengan printah dibawah. source ~/.bash_profile NVM telah terinstall di mac OS kalian. Install Node dengan NVM check semua versi yang tersedia di NVM. nvm ls-remote install node nvm install node ## Installing versi terbaru nvm install 14 ## I...

IntelliJ My Favorite Plugin

MapStruct MapStruct  untuk mempermudah bekerja dengan MapStruct ada beberapa fitur seperti  Features:  1. Completion for Properties and Enum Constants 2. Go To Declaration from annotation 3. Find Usages JPA Buddy JPA Buddy  untuk mempermudah bekerja dengan JPA, ini support untuk framework Hibernate,EclipseLink,SpringData,MapStruct,Lombok,Liquibase,Flyway Features:  1. Create JPA entities and data-related objects fast 2. Easily manage database migration 3. Generate entities from existing tables in the database 4. Make sure your code will not fail at runtime Sonarlint Sonarlint  plugin untuk mengendus code yang tidak efesiend( smell code ) di code kita.

Cara Install psql tanpa install postgres full di Mac OS

Description Ada kebutuhan dimana kita ingin install software client untuk memanagement database postgres seperti console, backup, restore, dll. How To:  Install libpqbrew install libpq Update PATH if use zsh: echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.zshrc source ~/.zshrc if use bash: echo 'export PATH="/usr/local/opt/libpq/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile resource:  https://stackoverflow.com/questions/44654216/correct-way-to-install-psql-without-full-postgres-on-macos