ssm整合:查询书籍功能
我们编写controller层:BookController
@Controller
@RequestMapping("/book")
public class BookController {
@Autowired
@Qualifier("BookServiceImpl")
private BookService bookService;
@RequestMapping("/allBook")
public String list(Model model){
List<Books> list = bookService.queryAllBook();
model.addAttribute("list",list);
return "allBook";
}
}
接下来我们配置首页index.jsp和allBook.jsp
index.jsp:
allBook.jsp:
我们现在直接测试:
点击链接:
我们发现bean不存在,现在排错:
1.查看bean是否注入成功!
可以跳转
说明bean注入成功
2.Junit单元测试,看我们的代码是否能够查询出来结果!
没问题
3.问题一定不在底层,是spring出了问题!
4.SpringMVC整合的时候没有调用到Service层的bean:1.applicationContext.xml没有注入bean
2.web.xml中,我们也绑定过配置文件
我们更改web.xml,原来配置的是spring-mvc.xml
接下来我们测试:
点击链接:
成功!!!!
接下来我们优化页面:
index.jsp
<style>
a{
text-decoration: none;
color:black;
font-size:18px;
}
h3{
width: 180px;
height: 38px;
margin: 100px auto;
text-align: center;
line-height: 38px;
background: deepskyblue;
border-radius: 5px;
}
</style>
美化后:
allBook.jsp
我们先导入bootstrap
<%--BootStrap美化界面--%>
<link href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div class="container">
<div class="row clearfix">
<div class="col-md-12 column">
<div class="page-header">
<h1>
<small>书籍列表 -----显示所有书籍</small>
</h1>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-md-12 column">
<table class="table table-hover table-striped">
<thead>
<tr>
<th>书籍编号</th>
<th>书籍名称</th>
<th>书记数量</th>
<th>书籍详情</th>
</tr>
</thead>
<%--书籍从数据库中查询出来,从这个list中遍历出来:foreach--%>
<tbody>
<c:forEach var="book" items="${list}">
<tr>
<td>${book.bookID}</td>
<td>${book.bookName}</td>
<td>${book.bookCounts}</td>
<td>${book.detail}</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
</div>
美化后: