2023-02-06-TIL

Today I Learned

Showing Different Response Depending on the Role and Privilege

스프링 시큐리티를 사용한다면 설정을 통해서 응답할 필드를 지정할 수 있다. 또한, 권한 별로 컨트롤러에 접근 가능여부를 설정할 수도 있다. 필드에 일일이 @JsonView 같은 애너테이션을 다는것 보다는 깔끔하게 컨트롤러를 분리하는 것이 나을것 같다. 다만, 그렇게 되면 권한 별로 분리되어야 하는 분기가 서비스, 레파지토리 계층까지 전이가 될 수 있는데, 그때마다 메서드를 분리할 것인지, 아니면 조건문으로 분기할 것인지를 또 고민해봐야 한다.

  • https://stackoverflow.com/questions/30894333/show-different-web-pages-and-elements-depending-on-the-user-role-and-privilege
  • https://www.baeldung.com/spring-security-role-filter-json
  • https://stackoverflow.com/questions/64378312/different-response-based-on-logged-user-role

RBAC(Role-Based Access Control)

  • https://www.okta.com/kr/identity-101/role-based-access-control-vs-attribute-based-access-control/

ACL

  • https://peemangit.tistory.com/33

JUnit5 @ExtendWith instead of @RunWith

  • https://cjred.net/2020-04-30-junit-5-runwith-extendwith/

RejectedExecutionException

  • https://sgdev.tistory.com/17

Spotify ERD

  • https://www.timjoo.com/spotify
  • https://blog.bruggen.com/2021/08/
  • https://dba.stackexchange.com/questions/235289/how-to-represent-the-relationship-between-artists-and-albums-in-an-entity-relati
  • https://drawsql.app/templates/koel
  • https://www.youtube.com/watch?v=ks-CS41AiQs

Xuggler vs FFmpeg

  • https://stackoverflow.com/questions/23784422/java-xuggler-play-video-while-combining-an-mp3-audio-file-and-a-mp4-movie
  • https://www.javacodegeeks.com/xuggler-tutorials
  • https://byul91oh.tistory.com/418
  • https://github.com/artclarke/xuggle-xuggler
  • https://groups.google.com/g/xuggler-users/c/lInnch7Q3yI?pli=1
  • https://stackoverflow.com/questions/8641238/xuggle-or-ffmpeg-newbie
  • https://www.wowza.com/community/t/a-confusing-array-of-differences-when-using-xuggler/37228
  • https://json2video.com/how-to/ffmpeg-course/ffmpeg-wrappers.html
  • https://ffmpeg.org/ffprobe.html

Java Heap Size Inside a Docker Container

  • https://www.baeldung.com/ops/docker-jvm-heap-size
  • https://alvinalexander.com/blog/post/java/java-xmx-xms-memory-heap-size-control/
  • https://stackoverflow.com/questions/417152/how-do-i-set-javas-min-and-max-heap-size-through-environment-variables
  • https://stackoverflow.com/questions/28327620/difference-between-java-options-java-tool-options-and-java-opts
  • https://docs.oracle.com/javase/8/docs/platform/jvmti/jvmti.html#memory
  • https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/envvars002.html

Package Structure

  • https://www.inflearn.com/questions/16046/%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%ED%8F%B4%EB%8D%94-%EA%B5%AC%EC%A1%B0%EC%99%80-%EA%B0%95%EC%9D%98-%EC%9D%BC%EC%A0%95%EC%97%90-%EA%B4%80%ED%95%98%EC%97%AC-%EC%A7%88%EB%AC%B8%EC%9D%B4-%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4
  • https://junjunrecord.tistory.com/m/133
  • https://www.slipp.net/questions/36
  • https://joanne.tistory.com/175
  • https://groups.google.com/g/ksug/c/3Xg1Y8rsExQ
  • https://freedeveloper.tistory.com/245
  • https://github.com/cheese10yun/spring-guide/blob/master/docs/domain-guide.md
  • https://github.com/cheese10yun/blog-sample/tree/master/lombok
  • https://umbum.dev/1206
  • https://cheese10yun.github.io/spring-guide-directory/
  • https://velog.io/@haron/Spring-Project-Structure
  • https://www.geeksforgeeks.org/spring-boot-code-structure/
  • https://stackoverflow.com/questions/40902280/what-is-the-recommended-project-structure-for-spring-boot-rest-projects
  • https://www.javaguides.net/2019/01/standard-project-structure-for-spring-boot-projects.html
  • https://medium.com/sahibinden-technology/package-by-layer-vs-package-by-feature-7e89cde2ae3a
  • https://www.oreilly.com/library/view/software-architecture-patterns/9781491971437/ch01.html
  • https://www.techyourchance.com/popular-package-structures/

Application Architecture

  • https://itzone.com.vn/en/article/entity-domain-model-and-dto-why-so-many/