프로젝트 7

Spring Boot Project(5) - 게시글 페이징, 필터링하기

Pageable을 이용하면 간단하게 Pagination 와 Sorting을 처리할 수 있다. PostsRepository public interface PostsRepository extends JpaRepository { Page findAll(Pageable pageable); @Query(value="select p from Posts p where p.subject = :subject and p.division = :division and p.is_progress = :is_progress") Page findAllByFiltering(Pageable pageable, @Param("subject") String subject, @Param("division") String division, @P..

BACK/SPRING 2023.01.24

Spring Boot Project(4) - JPA Auditing으로 생성/수정 시간 자동화

JPA Auditing으로 생성시간/수정시간 자동화하기 domain 패키지에 BaseTimeEntity 클래스를 생성한다. 이 클래스는 모든 Entity의 상위 클래스가 되어 Entity들의 createdDate, modifiedDate를 자동으로 관리한다. @Getter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) public abstract class BaseTimeEntity { @CreatedDate @Column(updatable=false) private String createdDate; @LastModifiedDate private String modifiedDate; @PrePersist public void onPr..

BACK/SPRING 2023.01.24

Spring Boot Project(3) - 게시글 CRUD

게시물 Entity domain 패키지를 만든다. 도메인이란 게시글, 댓글, 회원 등 소프트웨어에 대한 요구사항 혹은 문제 영역이다. @Getter @NoArgsConstructor @Entity public class Posts extends BaseTimeEntity { @Id @GeneratedValue(strategy= GenerationType.IDENTITY) @Column(name="post_id") private Long id; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="member_id") private Member member; @Column(length = 500, nullable = false) private String title; ..

BACK/SPRING 2023.01.24

Spring Boot Project(2) - 프로젝트 세팅, MySQL 연동하기

프로젝트 생성 프로젝트 설정을 해준다. 프로젝트에서 사용할 의존성을 추가한다. plugins { id 'java' id 'org.springframework.boot' version '2.5.6' id 'io.spring.dependency-management' version '1.1.0' } group = 'com.toy' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring..

BACK/SPRING 2023.01.24

Spring Boot Project(1) - 프로젝트 개요

이전에 다른 친구들과 함께 같이 슿프링부트 버킷리스트 공유 사이트를 만든 경험이 있다. 백엔드 여러명끼리 기능을 분담하여 나는 게시판, 댓글 CRUD, 공유 기능, AWS 배포 등을 맡아 담당하였다. 그 때는 스프링부트를 처음 시작하자마자 바로 프로젝트에 들어간거라 많이 미흡했고, 이해보다 기능 완성에 급급했던 것 같다. 이 후에 스프링부트를 좀 더 공부하고, 백엔드는 혼자로써 웹 사이트의 기능을 모두 구현해보고자 하는 마음이 들기 시작해 이 프로젝트를 시작하게 되었다. 주제는 학교 내 팀플의 팀원들을 모집할 수 있는 사이트이고, 전반적으로 웹의 기본적인 기능을 갖춘 사이트를 만들어 보고자 한다. 서버는 내가 스프링 부트로 구현하고, 프론트는 리액트를 사용해 프론트 담당 두분과 함께 작업했다. 1. 프로..

BACK/SPRING 2022.12.15

[JS] 바닐라 자바스크립트로 미니 가계부앱 만들기

미니 가계부앱 with vanilla javascript 바닐라 자바스크립트로 첫번째로 선택한 프로젝트는 가계부앱! 노마드코더 투두리스트 강의때 배웠던 내용들을 응용하였고 나머지는 구글링 해가며 코딩하였다. 실행 화면 (흔한 대학생의 가계부..) 기능 수입/지출, 종류, 금액, 내용 입력하면 전체 내역란에 리스트가 등록 => classList를 사용해 +버튼을 누르면 입력창이 나타남. 밑에서 위로 올라오는 css 애니메이션 사용 => 수입/지출은 라디오 버튼, 종류는 select 태그, 금액과 내용은 input태그로 각각 type은 number, text로 지정 => 지출 체크 시 금액은 입력 값이 양수든 음수든 모두 음수로 받음 => 가격이 양수인지 음수인지에 따라 빨간색, 초록색으로 색상 다르게 출력..

FRONT/JAVASCRIPT 2021.07.13