Невозможно использовать CrudRepository с Spring Data JPA - «нельзя ссылаться из статического контекста» - PullRequest
0 голосов
/ 01 марта 2019

Я работаю над проектом, в котором мне нужно использовать Spring Data JPA для доступа к моей базе данных.
Для этого я следовал этому руководству: https://spring.io/guides/gs/accessing-data-mysql/

Я адаптировал пример, приведенный в моем проектено, к сожалению, я получаю «нельзя ссылаться из статического контекста».

Мой объект:

import javax.persistence.Entity;


@Entity
public class JobList {
    private int total, page, limit;

    public int getTotal() {
        return total;
    }

    public void setTotal(int total){
        this.total = total;
    }

    public int getPage() {
        return page;
    }

   public void setPage(int page){
        this.page = page;
   }

   public int getLimit() {
        return limit;
   }

   public void setLimit(int limit){
        this.limit = limit;
   }

}

Мой репозиторий:

import org.springframework.data.repository.CrudRepository;

public interface JobListRepository extends CrudRepository<JobList, Integer> {

}

Мой контроллер:

@Controller
@RequestMapping(path="/demo") 
public class HomeController {

    @Autowired
    private JobListRepository jobListRepository;

    @GetMapping(path="/add")
    public @ResponseBody String addNewJobs () {
        JobList jobList = new JobList();
        jobList.setLimit(50);
        JobListRepository.save(jobList);
        return "Saved";
    }

    @GetMapping(path="/all")
    public @ResponseBody Iterable<JobList> getAllJobs() {
        return JobListRepository.findAll();
    }

}

И когда я пытаюсь скомпилировать:

HomeController.java: на нестатический метод save (S) нельзя ссылаться из статического контекста. HomeController.java: нестатическийНа метод findAll () нельзя ссылаться из статического контекста

Я не могу понять эту ошибку, поскольку addNewJobs () и getAllJobs () не являются статическими.

Спасибо.

...