서버 서비스

화면에서 출발한 요청을 수신하는 서버측 모듈 코드

화면에서 보낸 JSON 형식의 파라미터(body)와 해당 요청에 추가로 전달된 정보(header) 를 수신하는 메소드를 서버측에 작성합니다.

  1. 코드 위치

/SERVER/src/main/java/projectroom/module 아래 .java 파일로 위치합니다.

  • package 는 projectroom.module

  • @PRModule annotation 을 필수로 지정해야 합니다.

User.java
package projectroom.module;

import io.projectroom.framework.annotation.PRModule;
import io.projectroom.framework.vo.PRContext;
import io.projectroom.framework.vo.PRDataItem;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import projectroom.service.UserService;

import java.util.List;

@Slf4j
@PRModule
public class User {
    @Value("#{systemEnvironment['env']}")
    String env;

    @Value("${project.server.url}")
    String url;

    @Autowired
    UserService userService;

    @Transactional
    public PRDataItem getUserById(PRDataItem parameter, PRContext appContext) {
        //return new DataItem().append("name", "홍길동 입니다. 하이하이!!!" + env);
        PRDataItem result = userService.getUserById(parameter);
        if (result == null) {
            result = new PRDataItem();
        }
        result.put("url", url);
        return result;
    }

    public List<PRDataItem> getUsers(PRDataItem parameter, PRContext appContext) {
        return userService.getUsers(parameter);
    }
}
  1. URL 과 모듈, 함수

    1. 화면에서 호출에 사용하는 URL 은 서버 모듈의 구성과 관련 있습니다.

    2. URL 의 각 세그먼트는 서버 자원과 1:1 매핑을 이룹니다.

Last updated