JSP Hibernate print "count tuple" 结果在本地页面?
JSP Hibernate print "count tuple" result in a local page?
我对此很陌生,不知道这个问题是否有意义。
如果可能,我正在尝试使用 jsp 在本地页面 (localhost:8080) 上打印“计数元组”?
学生实体
@Id
@Column(name="SNO")
private Integer sno;
@Column(name="PNO")
private Integer pno;
@Column(name="SNAME")
private String sname;
@Column(name="YEAR")
private Integer year;
@Column(name="DEPT")
private String dept;
学生资料库
我相信这是查询应该去的地方?在下面添加了代码。
@Override
@Query(
value = "SELECT * FROM STUDENT",
nativeQuery = true
)
List<StudentEntity> findAll();
@Modifying
@Transactional
@Query(
value = "INSERT INTO STUDENT(SNO, PNO, SNAME, YEAR, DEPT, //COUNT(SNO)) " +
"VALUES (:sno, :pno, :sname, :year, :dept, //:countTuple)",
nativeQuery = true
)
void saveOne(
@Param("sno") Integer sno,
@Param("pno") Integer pno,
@Param("sname") String sname,
@Param("year") Integer year,
@Param("dept") String dept
//@Param("dept") Integer countTuple
);
学生服务
public List<StudentEntity> findAll() {
return studentRepository.findAll();
}
public StudentEntity save(StudentEntity studentEntity){
studentRepository.saveOne(
studentEntity.getSno(),
studentEntity.getPno(),
studentEntity.getSname(),
studentEntity.getYear(),
studentEntity.getDept()
//studentEntity.getCountTuple()
);
return studentEntity;
数据库控制器
@GetMapping(value = "/student")
public ModelAndView stu() {
ModelAndView modelAndView = new ModelAndView("selectTest");
List<StudentEntity> students = studentService.findAll();
modelAndView.addObject("students", students);
return modelAndView;
}
selectTest.jsp
<c:forEach items="${students}" var="student">
<tr>
<td width="100">${student.getSno()}</td>
<td width="100">${student.getPno()}</td>
<td width="100">${student.getSname()}</td>
<td width="100">${student.getYear()}</td>
<td width="100">${student.getDept()}</td>
<!--<td width="100">$(student.getCountTuple()}</td>-->
</tr>
</c:forEach>
有几件事需要解决。
在 JSP.
中使用直接字段名称而不是 getter 方法
${student.sno}
使用 getter 设置器在实体 class 中添加 countTuple 字段。
从当前代码中删除小括号并放入大括号。
${student.countTuple}
我对此很陌生,不知道这个问题是否有意义。
如果可能,我正在尝试使用 jsp 在本地页面 (localhost:8080) 上打印“计数元组”?
学生实体
@Id
@Column(name="SNO")
private Integer sno;
@Column(name="PNO")
private Integer pno;
@Column(name="SNAME")
private String sname;
@Column(name="YEAR")
private Integer year;
@Column(name="DEPT")
private String dept;
学生资料库
我相信这是查询应该去的地方?在下面添加了代码。
@Override
@Query(
value = "SELECT * FROM STUDENT",
nativeQuery = true
)
List<StudentEntity> findAll();
@Modifying
@Transactional
@Query(
value = "INSERT INTO STUDENT(SNO, PNO, SNAME, YEAR, DEPT, //COUNT(SNO)) " +
"VALUES (:sno, :pno, :sname, :year, :dept, //:countTuple)",
nativeQuery = true
)
void saveOne(
@Param("sno") Integer sno,
@Param("pno") Integer pno,
@Param("sname") String sname,
@Param("year") Integer year,
@Param("dept") String dept
//@Param("dept") Integer countTuple
);
学生服务
public List<StudentEntity> findAll() {
return studentRepository.findAll();
}
public StudentEntity save(StudentEntity studentEntity){
studentRepository.saveOne(
studentEntity.getSno(),
studentEntity.getPno(),
studentEntity.getSname(),
studentEntity.getYear(),
studentEntity.getDept()
//studentEntity.getCountTuple()
);
return studentEntity;
数据库控制器
@GetMapping(value = "/student")
public ModelAndView stu() {
ModelAndView modelAndView = new ModelAndView("selectTest");
List<StudentEntity> students = studentService.findAll();
modelAndView.addObject("students", students);
return modelAndView;
}
selectTest.jsp
<c:forEach items="${students}" var="student">
<tr>
<td width="100">${student.getSno()}</td>
<td width="100">${student.getPno()}</td>
<td width="100">${student.getSname()}</td>
<td width="100">${student.getYear()}</td>
<td width="100">${student.getDept()}</td>
<!--<td width="100">$(student.getCountTuple()}</td>-->
</tr>
</c:forEach>
有几件事需要解决。
在 JSP.
中使用直接字段名称而不是 getter 方法${student.sno}
使用 getter 设置器在实体 class 中添加 countTuple 字段。
从当前代码中删除小括号并放入大括号。
${student.countTuple}