在Java Web开发领域,Struts和JSP是两把利器。Struts作为MVC模式的一种实现,主要负责控制层;而JSP则用于展示层。这两者结合,可以实现一个功能完善、结构清晰的Web应用。本文将围绕Struts与JSP的增删改查(CRUD)实例,为大家详细讲解如何实现一个简单的Web项目。

1. 项目背景

为了让大家更好地理解本文内容,我们先来构建一个简单的项目背景。假设我们需要开发一个图书管理系统,该系统具有以下功能:

struts,jsp增删改查实例_Struts&JSP增删改查实例详解实战教程与方法分享  第1张

  • 查询图书信息:用户可以输入书名、作者或出版社,查询相关图书。
  • 添加图书信息:管理员可以添加新的图书信息。
  • 修改图书信息:管理员可以对现有图书信息进行修改。
  • 删除图书信息:管理员可以删除不再需要的图书信息。

2. 环境搭建

在开始之前,我们需要搭建一个开发环境。以下是所需软件及版本:

  • Java:JDK 1.8
  • IDE:IntelliJ IDEA 或 Eclipse
  • 服务器:Tomcat 9.0
  • 框架:Struts 2.5.16、Hibernate 5.4.11、MySQL 5.7

3. 项目结构

项目结构如下:

```

src

├── com

│ └── myapp

│ ├── action

│ │ ├── BookAction.java

│ │ └── BookListAction.java

│ ├── dao

│ │ └── BookDao.java

│ ├── entity

│ │ └── Book.java

│ └── struts.xml

├── webapp

│ ├── css

│ ├── js

│ ├── img

│ ├── index.jsp

│ ├── bookList.jsp

│ ├── addBook.jsp

│ └── editBook.jsp

└── pom.xml

```

4. 实现步骤

4.1 创建实体类

我们需要创建一个实体类`Book.java`,用于表示图书信息:

```java

package com.myapp.entity;

public class Book {

private Integer id;

private String name;

private String author;

private String publisher;

// 省略getter和setter方法

}

```

4.2 创建数据访问层

接下来,我们需要创建一个数据访问层`BookDao.java`,用于实现图书信息的增删改查操作:

```java

package com.myapp.dao;

import com.myapp.entity.Book;

import java.util.List;

public interface BookDao {

List findBooks(String name, String author, String publisher);

void addBook(Book book);

void updateBook(Book book);

void deleteBook(Integer id);

}

```

4.3 创建业务逻辑层

然后,我们需要创建一个业务逻辑层,用于处理具体的业务需求。在这个例子中,我们只需要实现一个`BookAction.java`类:

```java

package com.myapp.action;

import com.myapp.dao.BookDao;

import com.myapp.entity.Book;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class BookAction {

private BookDao bookDao = new BookDao();

public String list(HttpServletRequest request, HttpServletResponse response) {

List books = bookDao.findBooks(null, null, null);

request.setAttribute("