Как сделать запрос на передачу параметра в хранилище crud? - PullRequest
1 голос
/ 30 января 2020

У меня есть веб-приложение, которое подключается к базе данных SQL и имеет несколько сущностей.

Основные таблицы:

  1. Сотрудники
  2. EmployeesxSkills ( сопоставление идентификатора определенного сотрудника с идентификатором определенного навыка)
  3. Умение
  4. SkillxRole (сопоставление идентификатора навыка с идентификатором роли)
  5. Роль

Я пытаюсь создать метод, который запрашивает роли на основе введенного пользователем имени, получает идентификатор роли, а затем запрашивает таблицу SkillxRole и возвращает массив строк всех навыков, связанных с этим идентификатором роли. .

Как выполнить запрос в хранилище crud, используя параметр, указанный пользователем. Это будет ввод с использованием html поля ввода с использованием ajax, а затем я предполагаю допустимую конечную точку.

Любая помощь будет принята с благодарностью. Ниже приведен мой код searchController, который я sh запрашиваю в своих репозиториях.

@Controller
public class SearchController {
      public EmployeeRepository employeeRepository;
      public RoleRepository roleRepository; 
      public SkillRepository skillRepository;   
      public roleSkillRatingsRepository roleSkillRatingsRepository;
      @Autowired
        public void  employeeRepository(EmployeeRepository employeeRepository){
            this.employeeRepository = employeeRepository;
        }
      @Autowired
        public void  roleRepository(RoleRepository roleRepository){
            this.roleRepository = roleRepository;
        }
      @Autowired
        public void  skillRepository(SkillRepository skillRepository){
            this.skillRepository = skillRepository;
        }
      @Autowired
        public void  roleSkillRatingsRepository(roleSkillRatingsRepository roleSkillRatingsRepository){
            this.roleSkillRatingsRepository = roleSkillRatingsRepository;
        }


      @ResponseBody
        public List<Employee> getAllemployees() {
            System.out.println(employeeRepository.findAll());
            return employeeRepository.findAll();
        }

      @ResponseBody
        public Map<String,Integer> getRoleSkills() {

            return null;
        }

Ролевый репозиторий

@Repository
public interface RoleRepository extends CrudRepository<Role, Integer> {

    List<Role> findAll();

    //something I found online but unsure how to apply this to my situation 
    @Query("select p from Person AS p"
               + " ,Name AS n"  
               + " where p.forename = n.forename "
               + " and p.surname = n.surname"
               + " and n = :name")
               String [] findByName(@Param("name") Name name);

    }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...