[英]Java, Spring MVC, repository, Maven,
这是我需要调用的一些文件。
第一个用户通过 first_name 或 last_name 或两者搜索它。
单击搜索按钮后,我们调用控制器,然后通过控制器调用服务,通过服务调用studentRepository
并通过它调用AbstractRepository.java
的方法,即findByQuery
但是如何调用该方法并检索该实例并在 jsp 上显示搜索到的名称档案?
索引.jsp
<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>
学生控制器.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;
}
学生服务.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;
}
学生资料库.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();
}
在StudentController
(将找到的学生保存在ModelAndView
):
Student student = studentService.search(firstName, lastName);
ModelAndView mdlv = getView("add");
mdlv.addObject("student", student);
return mdlv;
然后在添加视图上,您可以使用例如${student.name}
(假设您有 getter getName()
)或任何其他访问器/getter 来显示学生。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.