2016-07-04 48 views
-2

這是我需要調用的一些文件 第一個用戶通過first_name或last_name或兩者搜索它。 點擊搜索按鈕後,我們調用控制器,然後通過控制器我們調用服務和thrrough服務,我們調用studentRepository,並通過我們調用AbstractRepository.java的方法,即findByQuery,但如何調用該方法並retreve該實例,並顯示在jsp文件上搜索的名稱? 的index.jspjava,spring MVC,repository,Maven,

<form action="${pageContext.request.contextPath}/staff/student/searchStudent" method="post"> 
      <div class="form-group col-sm-3"> 
       <input type="text" name="firstName" class="form-control input-lg" placeholder="First Name" required/> 
      </div> 
      <div class="form-group col-sm-3"> 
       <input type="text" name="lastName" class="form-control input-lg"placeholder="Last Name" required/> 
      </div> 

      <input type="submit" class="btn btn-primary" value="Search" /> 
     </form> 

studentController.java

@RequestMapping(value = "/searchStudent", method = RequestMethod.POST) 
public ModelAndView searchStudent(@RequestParam(name = "firstName", required = true) String firstName, 
     @RequestParam(name = "lastName", required = true) String lastName, HttpServletRequest request) { 

    studentService.search(firstName, lastName); 
    ModelAndView mdlv = getView("add"); 

    return mdlv; 
} 

studentService.java

public Student search(String firstName, String lastName) 
{ 

    Student student = studentRepository.searchByName(firstName,lastName); 
    if(student != null) 
    { 
     System.out.println("Search Successfully done !"); 
    } 
    else 
    { 
     System.out.println("Wrong entries"); 
    } 



    return student; 

} 

studentRepository.java

@Repository("studentRepository") 
@Transactional 
public class StudentRepository extends AbstractRepository<Student, Long> { 

AbstractRepository.java

public StudentRepository() { 
     super(Student.class); 
     } 
    } 

    public List<T> findByQuery(CriteriaQuery<T> query) { 
    return this.entityManager.createQuery(query).getResultList(); 
} 

回答

1

StudentController(保存在ModelAndView找到學生):

Student student = studentService.search(firstName, lastName); 
ModelAndView mdlv = getView("add"); 
mdlv.addObject("student", student); 

return mdlv; 

,然後在添加視圖中,可以使用例如${student.name}顯示學生(假設你有吸氣getName()) ,或任何其他訪問者/獲取者。