在这里我们是基于上篇的包结构继续写的,这是一个SpringBoot+Mybatis+JSP写的一个查询全部,并展示到JSP页面。
一、补全包结构
① 新建Controller
在这里我把增删改查单个查询的方法都写了。
package com.gaoge.controller;
import com.gaoge.impl.PersonServiceImpl;
import com.gaoge.model.Person;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.ArrayList;
@Controller
@RequestMapping("person")
public class PersonController {
@Autowired
private PersonServiceImpl personService;
@RequestMapping("insert")
public void insert(Person person){
personService.insert(person);
}
@RequestMapping("delete")
public void delete(int id){
personService.delete(id);
}
@RequestMapping("update")
public void update(Person person){
personService.update(person);
}
@RequestMapping("/findAll")
public String findAll(Model model){
ArrayList<Person> all = personService.findAll();
model.addAttribute("person",all);
return "show";
}
@RequestMapping("findid")
public String findId(int id,Model model){
Person person = personService.findId(id);
model.addAttribute("p",person);
return "show.jsp";
}
}
新建Service
package com.gaoge.service;
import com.gaoge.model.Person;
import java.util.ArrayList;
public interface PersonService {
void insert(Person person);
void delete(int id);
void update(Person person);
ArrayList<Person> findAll();
Person findId(int id);
}
新建Impl
package com.gaoge.impl;
import com.gaoge.mapper.PersonMapper;
import com.gaoge.model.Person;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@Service
public class PersonServiceImpl{
@Autowired
private PersonMapper personMapper;
public void insert(Person person) {
personMapper.insert(person);
}
public void delete(int id) {
personMapper.delete(id);
}
public void update(Person person) {
personMapper.update(person);
}
public ArrayList<Person> findAll() {
return personMapper.findAll();
}
public Person findId(int id) {
return personMapper.findId(id);
}
}
创建JSP页面
<%--
Created by IntelliJ IDEA.
User: pactera
Date: 2019/8/15
Time: 15:23
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Title</title>
<table border="1" align="center" width="500" height="200">
<tr>
<td>ID</td>
<td>姓名</td>
<td>老师</td>
<td>操作</td>
</tr>
<c:forEach items="${person}" var="p">
<tr>
<td>${p.id}</td>
<td>${p.name}</td>
<td>${p.teacher}</td>
<td><a href="springboot/WEB-INF/JSP/add.jsp">添加</a></td>
</tr>
</c:forEach>
</table>
</head>
<body>
</body>
</html>
在这里跟大家说下,我不知道你们有没有,我新建的SpringBoot项目是没有webapp文件目录的,这个需要自己去创建,而且创建JSP页面还需要配置一下,在这里给大家附上:在进行这个步骤的前提是需要先在src/main下创建webapp/WEB-INF这两个文件夹。
点击+号,再展示的列表里会有一个web选择之后去更改一下Deployment Descriptors的path,修改成你这个项目下的web文件夹下的web.xml,至于下面那个Web ResourceDirectors则是改成你该创建好的wenapp下的WEB-INF。
然后就是通过访问http://localhost:9999/person/findAll就可以进项展示你数据库里面的数据了。
以下是我的查询结果: