사용된 기술 Spring Framework, Spring Boot, Spring JPA, MYSQL
기능 카테고리, 범위, 현재 위치 좌표 x,y를 입력하여 카카오 API로 부터 위치를 받아 무작위로 선정하여 위치 정보를 보여줌
게시글 저장, 삭제, 수정 기능
DTO Articles @Id
@Column(name="ARTICLE_ID")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long article_id;
@Column(name="X",nullable = false)
private double x;
@Column(name="Y",nullable = false)
private double y;
@Column(name="TITLE",length = 255)
private String title;
@Column(name="image",nullable = true)
private byte[] image;
@Column(name="createdDate",nullable = true)
private Date createdDate;
@ManyToOne!
@JoinColumn(name="Place_id")
private Places place;
@Column(name="PASSWORD")
private String password;
@Column(name="CONTENT",nullable = true)
private String content;
Places @Id @Column(name="ADDR")
private String Place_id;
@Column
@OneToMany(mappedBy = "place",cascade = CascadeType.ALL)
private List<Articles> articles;
작동 원리
작동 예시
- 랜덤위치 받기
bigfilter: 추천 받을 카테고리 ex) 공원, 편의점, 문화시설 등 x,y : 현재 위치의 xy 좌표 dis : 현재위치로 부터 탐색할 최대 범위 m 단위이다. 결과값 place_name: 위치 이름 x, y: 무작위 위치의 x,y좌표 addr: 무작위 위치의 주소 article_links: 현재 무작위 위치에 대한 게시글 id 리스트 url: 현 무작위 위치에 대한 카카오 지도 url info: 현 무작위 위치에 대한 대략적인 정보들
게시글 작성 article_id는 무작위 생성 만약 place 데이터베이스에 현재 무작위 장소에 대한 정보가 없을시 새로 생성후 저장