问题描述
实验内容
基于MVC,实现简单的书籍信息管理,其中,模型 (M) 采用一般的JavaBean、视图 (V)采用JSP、控制 (C) 采用Servlet实现。另外,对于视图部分的JSP中,需要提供两种版本,即一般的Scriplet (Java代码)和EL。
实验介绍
本实验将实现基于MVC实现简单的书籍信息管理功能,包括书籍信息的列表、添加、删除和修改功能;
数据库连接可以采用JDBC。需要操作的数据表book的结构为:
bid :书籍id,int; name:书名,varchar(50);
authors :作者,varchar(30); publisher:出版社,varchar(30);
publishdate:出版日期,datetime; price:(书籍)价格,float。
视图部分的JSP代码,需要提供EL和Scriplet两个版本。
本实验可以参考第7章中的代码。MVC架构示意图如下:
环境要求
Java EE服务器:Tomcat 6.0
数据库服务器:MySQL 6.0
集成开发环境:MyEclipse 8.5
实验指导
步骤1:采用JavaBean实现MVC的模型(M)部分。可以尝试将与数据库连接(UTIL)、存取数据库功能(DAO)与业务数据Bean(VO)分离;
步骤2:采用JSP实现MVC的模型视图(V)部分。先参考教材第7课中的代码基于EL实现,然后翻译成对应的Scriptlet代码;
步骤3:采用Servlet实现MVC模型的(C)部分,实现对请求数据的读取,通过调用模型部分的JavaBean实现相应业务逻辑,然后产生相应输出以及页面跳转。
一、整体说明
1.MVC模型设计如图所示:
2、数据处理流程图
二、代码展示
1.booklist.jsp
说明:实现对数据库的删除,修改功能,跳转到增加书籍的页面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>书籍列表</title>
<script language="javascript">//定义删除的函数
function deleteConfirm() {
var k=window.confirm('确认要删除吗?');
//alert(k);
return k;
}
</script>
</head>
<body>
<h1>书籍列表</h1>
<table>
<tr>
<td>书号</td>
<td>书名</td>
<td>作者</td>
<td>出版社</td>
<td>价格</td>
</tr>
<c:forEach var="book" items="${booklist}">
<tr>
<td>${book.bookid}<