在Java Web开发中,Struts和JSP是两个非常经典的技术。Struts作为MVC模式的一种实现,主要负责控制层;而JSP则主要负责视图层。这两者之间的交互是实现Web应用功能的关键。本文将通过一个简单的实例,为大家详细介绍Struts与JSP交互数据的过程,并分享一些实战经验。
1. 项目背景
假设我们开发一个简单的在线商城,用户可以浏览商品、添加购物车、下单购买等功能。在这个项目中,我们将使用Struts作为控制层,JSP作为视图层,实现用户与系统的交互。
2. 技术选型
- Struts 2:用于实现MVC模式,负责控制层。
- JSP:用于实现视图层,显示页面内容。
- Servlet:用于处理请求,转发到相应的Struts控制器。
- JDBC:用于连接数据库,实现数据持久化。
3. 项目结构
以下是项目的目录结构:
```
src/
│
├── com/
│ └── example/
│ ├── action/
│ │ └── ProductAction.java
│ ├── dao/
│ │ └── ProductDao.java
│ ├── model/
│ │ └── Product.java
│ └── web/
│ ├── WEB-INF/
│ │ ├── action-config.xml
│ │ └── web.xml
│ └── pages/
│ ├── product/
│ │ ├── list.jsp
│ │ └── detail.jsp
│ └── cart/
│ └── list.jsp
│
└── db/
└── product.sql
```
4. 数据库设计
以下是商品表(product)的SQL语句:
```sql
CREATE TABLE product (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100),
price DECIMAL(10, 2)
);
```
5. 实现步骤
5.1 创建Struts控制器
在`com.example.action`包下创建`ProductAction.java`文件,实现Struts控制器。
```java
package com.example.action;
import com.example.dao.ProductDao;
import com.example.model.Product;
import java.util.List;
public class ProductAction extends ActionSupport {
private ProductDao productDao = new ProductDao();
private List
public String list() {
productList = productDao.findAll();
return SUCCESS;
}
public List
return productList;
}
public void setProductList(List
this.productList = productList;
}
}
```
5.2 配置Struts配置文件
在`WEB-INF/action-config.xml`文件中配置`ProductAction`。
```xml
文章链接:http://www.kaozx.cn/article/BLLtjl_rNQjjQKzkPGIoj