目录
myeclipse或者eclipse使用问题的解决
注意最上面的别名声明
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
servlet 中
List<Cust> list = service.findAll();;
request.setAttribute("list",list);;
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function checkAll(allC){
var otherCs = document.getElementsByName("delId");
for(var i=0;i<otherCs.length;i++){
otherCs[i].checked = allC.checked;
}
}
</script>
</head>
<body style="text-align: center;">
<h1>客户列表页面</h1><hr>
<form action="${pageContext.request.contextPath}/BatchDelServlet" method="POST">
<table border="1" width="100%">
<tr>
<th><input type="checkbox" onclick="checkAll(this)"/>全选</th>
<th>客户姓名</th>
<th>客户性别</th>
<th>出生日期</th>
<th>手机号码</th>
<th>电子邮箱</th>
<th>客户爱好</th>
<th>客户类型</th>
<th>描述信息</th>
<th>修改</th>
<th>删除</th>
</tr>
<c:forEach items="${list}" var="cust">
<tr>
<td><input type="checkbox" name="delId" value="${cust.id}" /></td>
<td><c:out value="${cust.name}"/></td>
<td><c:out value="${cust.gender}"/></td>
<td><c:out value="${cust.birthday}"/></td>
<td><c:out value="${cust.cellphone}"/></td>
<td><c:out value="${cust.email}"/></td>
<td><c:out value="${cust.perference}"/></td>
<td><c:out value="${cust.type}"/></td>
<td><c:out value="${cust.description}"/></td>
<td><a href="${pageContext.request.contextPath}/CustInfoServlet?id=${cust.id}">修改</a></td>
<td><a href="${pageContext.request.contextPath}/DelCustServlet?id=${cust.id}">删除</a></td>
</tr>
</c:forEach>
</table>
<input type="submit" value="批量删除"/>
</form>
</body>
</html>
idea中使用问题的解决方案
如果您是再idea中使用这些,请使用以下方式解决
习惯了eclipse和myeclipse开发的我们总是依赖于系统的插件,而当我想当然的以为IntelliJ IDEA 的jstl 的使用应该和myeclispe一样,当时使用起来却到处碰壁,完全找不到思路,网上查阅资料也是缺少一部分,下面我来总结了Idea jstl标签的引入和使用的全过程:
如果直接用jstl标签会报错:
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application所以需要引入标签
一、从网上下载jakarta-taglibs-standard-1.1.2.zip解压并把standard.jar和jstl.jar加入到你的项目中,
1、下载JSTL标签库的DTD文件
下载地址: http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
拉到最下面,找到最新的那一个也就是 "jakarta-taglibs-standard-1.1.2.zip",它下面的asc文件不用下载
或者直接点的下载地址:
http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/jakarta-taglibs-standard-1.1.2.zip
2、找到lib目录下的standard.jar和jstl.jar文件,复制文件,把它们粘贴到你的WEB_INF/lib目录下如图
下载页面官方下载 jakarta-taglibs-standard-1.1.2.zip
第一步解决了:org.apache.jasper.JasperException: Unable to load class for JSP这个报错
二、第一步会让你能使用jstl标签,但是idea还是会报错,因为它不认识这个标签,所以需要在设置里进行添加。
选择File—>Setting在Setting下找到languages&Frameworks—->Schemas and DTDs,在右边的External Schemas and DTDs框下点击+,然后在URI中填入http://java.sun.com/jsp/jstl/core 在explorer中找到解压文件的tld目录下的c.tld文件,并选择,到这里,你就可以结局idea不识别jstl的问题
三、在jsp页面头部加如下代码
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
这时候再在jsp 使用是没有问题的