使用JSP/SERVLET技术,结合EL/JSTL表达式,进行对象的增删改操作

前言

  1. 使用JSP/SERVLET技术,结合EL/JSTL表达式,完成汽车对象的增删改查操作,这里没有用到数据库,使用session存储数据
  2. 这里可能会有层穿越的现象,仅作为参考资料
  3. 此项目启动后进入add_car.jsp页面,添加汽车对象的相关属性,通过表单提交给Servlet程序,在Servlet程序中有一个存储汽车对象的对象数组,将相关数组,用session存储对象数组当做数据库,剩下的删除和修改都会在下面代码中体现,代码中包含笔记
  4. 不能使用eclipse中自带的浏览器测试,会出现IllegalArgumentException异常,暂不清楚原因,本人使用chrome浏览器进行测试
  5. 在eclipse中的Servers文件夹是Servlet程序的运行环境,删了可能导致Web工程缺少部分环境,JSP、Servlet等一系列Servlet相关代码将会报错

网页部分

  1. 添加汽车网页
<%@page import="com.abc.domain.Car"%>
<%@page import="java.util.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<% List<Car> carList =  (List<Car>) request.getAttribute("carList"); %>
	<div>
		<form action="cs?method=add" method="post">
			<label>车牌号:</label>
			<input type="text" name="id" value="闽A123456"/><br>
			<label>品牌:</label>
			<input type="text" name="brand" value="奔驰"/><br>
			<label>价格:</label>
			<input type="text" name="price" value=120000 /><br>
			<label>颜色:</label>
			<input type="text" name="color" value="蓝色" /><br>
			<input type="submit" value="提交"  />
		</form>
	</div>
	
</body>
</html>
  1. 更新汽车网页
<%@page import="com.abc.domain.Car"%>
<%@page import="java.util.*"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	
	<div>
		<form action="cs?method=add" method="post">
			<label>车牌号:</label>
			<input type="text" name="id" value="<%=request.getAttribute("id") %>"/><br>
			<label>品牌:</label>
			<input type="text" name="brand" value="<%=request.getAttribute("brand")%>"/><br>
			<label>价格:</label>
			<input type="text" name="price" value=<%=request.getAttribute("price")%> /><br>
			<label>颜色:</label>
			<input type="text" name="color" value="<%=request.getAttribute("color")%>" /><br>
			
			<input type="submit" value="提交"  />
		</form>
	</div>
	
</body>
</html>
  1. 展示汽车网页
<%@ page language="java" import="java.util.*,com.abc.domain.Car" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<!DOCTYPE html>

<html>
<head>
<%	ArrayList<Car> carList = (ArrayList<Car>)session.getAttribute("carList");%>

<meta charset="UTF-8">
<title>汽车管理</title>

<script>
	function add(){
		//添加方法做一个简单的页面跳转
		open("http://localhost:8080/demoweb/add_car.jsp",'_self');
	}
	
	function update(id){
		//修改方法可以传送参数,利用参数进行
		open("http://localhost:8080/demoweb/cs?method=update&name="+id,'_self');
	}
	
	function del(id){
		open("http://localhost:8080/demoweb/cs?method=delete&name="+id,'_self');
	}
	
</script>
</head>
<body>
	<div>
		<table border="1" cellspacing = "0";>
			<tr>
				<th>车牌号</th>
				<th>品牌</th>
				<th>价格</th>
				<th>颜色</th>
				<th>操作</th>
			</tr>
			
			<c:forEach var="car" items="${carList}" varStatus="idx">
				<tr>
					<td>${car.id}</td>
					<td>${car.brand}</td>
					<td>${car.price}</td>
					<td>${car.color}</td>
					<td><button οnclick="del('${car.id}')">删除</button><button οnclick="update('${car.id}')">修改</button></td>
				</tr>
			</c:forEach>
		</table>
		<button οnclick="add()">添加</button><br>
	</div>
</body>
</html>

Bean

package com.abc.domain;

public class Car {
   

	private String brand;
	private int price;
	private String color;
	private String id;

	public Car(String brand, int price, String color, String id) {
   
		super();
		this.brand = brand;
		this.price = price;
		this.color = color;
		this.id = id;
	}

	public Car() {
   
		super();
		// TODO Auto-generated constructor stub
	}

	public String getId() {
   
		return id;
	}

	public void setId(String id) {
   
		this.id = id
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java.lang.NoClassDefFoundError: jakarta/servlet/jsp/jstl/core/LoopTag是一个Java异常,表示在运行时找不到指定的。这个异常通常发生在使用JSP标签库时,缺少了相应的文件。 解决这个问题的方法是确保你的项目中包含了正确的JSTL库,并且这些库的版本与你的代码兼容。你可以按照以下步骤来解决这个问题: 1. 确认你的项目中包含了JSTL库。你可以在项目的构建路径或依赖项中查看是否包含了正确的JSTL库。 2. 检查JSTL库的版本。确保你使用JSTL库的版本与你的代码兼容。如果版本不匹配,可能会导致找不到的错误。 3. 检查JSTL库的路径。确保JSTL库的路径正确,并且可以被项目正确访问到。你可以检查路径是否正确,并且确保库文件存在于指定的路径中。 4. 清理和重新构建项目。有时候,清理和重新构建项目可以解决一些编译或构建相关的问题。你可以尝试清理和重新构建你的项目,然后再次运行看看是否还会出现这个错误。 5. 检查路径。确保你的项目的路径正确设置,并且可以找到JSTL库中的。你可以检查路径是否正确,并且确保JSTL库中的文件可以被正确加载。 6. 检查部署环境。如果你的项目是部署在服务器上的,确保服务器上也安装了正确的JSTL库,并且配置正确。 这些是解决java.lang.NoClassDefFoundError: jakarta/servlet/jsp/jstl/core/LoopTag异常的一些常见方法。根据你的具体情况,你可以尝试其中的一种或多种方法来解决这个问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值