1. 从一个 JSP 页面跳转到另一个 JSP 页面时的参数传递

1)使用 request 内置对象获取客户端提交的信息

2)使用 session 对象获取客户端提交的信息

3)利用隐藏域传递数据

4)通过超链接传递数据

2. 从JSP 页面传递参数给 Servlet

1)使用 request 对象接受参数

2)使用 session 对象,url,form表单传递参数

3. 从 Servlet 向 JSP 页面中传递参数

从 Servlet 到 JSP 页面传递参数,可以使用 URL,request 对象,session 对象

4. 从一个 Servlet 向另一个 Servlet 传递参数

1)通过超链接和 form 表单传递数据

2)使用 setAttribute() 和 getAttribute() 方法传递参数

https://blog.csdn.net/Qiuzhongweiwei/article/details/76037324

5. 将后台数据库中查询的结果传递到JSP页面中

查询数据库后获得的结果是 ResultSet

递归 ResultSet 获得相应数据,然后将这些数据再依次存入列表中,最后将存放数据的列表以属性的方式封装到 request 或者 session 中,这样在 JSP 页面中就可以读取属性

...
try {
if (resultSet == null) {
response.sendRedirect("/pathogen/queryPathogen");
return;
}
while (resultSet.next()) {
QueryResult queryResult = new QueryResult();
queryResult.setTaxid(resultSet.getString("taxid"));
queryResult.setOrganismName(resultSet.getString("organism_name")); // 物种名称
queryResult.setGramStrain(resultSet.getString("gram_strain")); // 革兰氏分型
queryResult.setSuperkingdom(resultSet.getString("superkingdom")); // 分类地位
queryResult.setDisease(resultSet.getString("disease")); // 疾病名称
queryResult.setIsolationSource(resultSet.getString("isolation_source")); // 样本来源
queryResult.setEvidenceSupport(resultSet.getString("evidence_support")); // 收录来源
queryResultList.add(queryResult); // 将每条记录追加到列表中
};
request.setAttribute("queryPathogenResultList", queryResultList); // 将查询结果封装到 request 范围的属性中
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/JSP/queryPathogen.jsp");
requestDispatcher.forward(request, response); // 将 request 和 response 转发到相应的 JSP页面中
} catch (SQLException e) {
e.printStackTrace();
}

在 JSP 页面中读取封装到 request 中的数据

<%
if (request.getAttribute("queryPathogenResultList") != null ) {
%>
<div>
<h2>病原数据库检索结果</h2>
<%
if (((List<Object>)request.getAttribute("queryPathogenResultList")).isEmpty()) {
%>
未查询到结果!
<%
} else {
%>
<table border=1 >
<tr>
<c:if test="${requestScope.taxid == 'taxid' }" >
<th>taxId</th>
</c:if>
<c:if test="${requestScope.organismName == 'organismName' }" >
<th>物种名称</th>
</c:if>
<c:if test="${requestScope.gramStrain == 'gramStrain' }" >
<th>格兰氏分型</th>
</c:if>
<c:if test="${requestScope.rank == 'rank' }" >
<th>分类地位</th>
</c:if>
<c:if test="${requestScope.disease == 'disease' }" >
<th>疾病信息</th>
</c:if>
<c:if test="${requestScope.isolationSource == 'isolationSource' }" >
<th>样本来源</th>
</c:if>
<c:if test="${requestScope.dataSource == 'dataSource' }" >
<th>收录来源</th>
</c:if>
<c:if test="${requestScope.gcContent == 'gcContent' }" >
<th>GC含量</th>
</c:if>
<c:if test="${requestScope.refGenome == 'refGenome' }" >
<th>参考基因组</th>
</c:if>
</tr>
<c:forEach items="${queryPathogenResultList}" var="queryPathogenResult" >
<tr>
<c:if test="${requestScope.taxid == 'taxid' }" >
<td>${queryPathogenResult.taxid }</td>
</c:if>
<c:if test="${requestScope.organismName == 'organismName' }" >
<td>${queryPathogenResult.organismName }</td>
</c:if>
<c:if test="${requestScope.gramStrain == 'gramStrain' }" >
<td>${queryPathogenResult.gramStrain }</td>
</c:if>
<c:if test="${requestScope.rank == 'rank' }" >
<td>${queryPathogenResult.superkingdom }</td>
</c:if>
<c:if test="${requestScope.disease == 'disease'}" >
<td>${queryPathogenResult.disease }</td>
</c:if>
<c:if test="${requestScope.isolationSource == 'isolationSource' }" >
<td>${queryPathogenResult.isolationSource }</td>
</c:if>
<c:if test="${requestScope.dataSource == 'dataSource' }" >
<td>${queryPathogenResult.evidenceSupport }</td>
</c:if>
<c:if test="${requestScope.gcContent == 'gcContent' }" >
<td></td>
</c:if>
<c:if test="${requestScope.refGenome == 'refGenome' }" >
<td></td>
</c:if>
</tr>
</c:forEach>
</table>
<%
}
%>
</div>
<%
}
%>

JSP 页面跳转中的参数传递的更多相关文章

  1. Jsp页面跳转和js控制页面跳转的几种方法

    Jsp 页面跳转的几种方法 1. RequestDispatcher.forward() 在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servle ...

  2. JSP页面跳转

    JSP页面跳转  RequestDispatcher.forward() 服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到 ...

  3. 网站开发进阶(三十七)JSP页面跳转问题解决

    JSP页面跳转问题解决 PS:本篇博文质量欠佳,仅供个人学习之用. 前言 在做Web开发时,对别人的应用(jsp+servlet)进行服务器部署时出现了页面跳转无效的情况.但是项目在本地未出现此状况. ...

  4. AngularJS进阶(八)实现页面跳转并进行参数传递

    angularjs实现页面跳转并进行参数传递 注:请点击此处进行充电! Angular页面传参有多种办法,我在此列举4种最常见的: 1. 基于ui-router的页面跳转传参 (1) 在Angular ...

  5. JSP页面跳转方式

    JSP页面跳转方式 1.利用按钮+javascript进行跳转 <input type="button" name="button2" value=&qu ...

  6. 五种JSP页面跳转方法详解

    1. RequestDispatcher.forward() 是在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到另外一个 ...

  7. JSP页面跳转的几种实现方法

    使用href超链接标记      客户端跳转 使用JavaScript               客户端跳转 提交表单                        客户端跳转 使用response ...

  8. 异常之JSP页面跳转出错

    今天在开发过程中发现一个问题:在页面中使用了<jsp:forward>抛错Attempt to clear a buffer that's already been flushed!! 百 ...

  9. Springboot+MyBatis+mysql+jsp页面跳转详细示例

           SpringBoot与MyBatis搭建环境,底层数据库为mysql,页面使用JSP(官网上不推荐使用jsp),完成从数据库中查询出数据,在jsp页面中显示,并且实现页面的跳转功能. 项 ...

随机推荐

  1. 容器化部署Cassandra高可用集群

    前提: 三台装有docker的虚拟机,这里用VM1,VM2,VM3表达(当然生产环境要用三个独立物理机,否则无高可用可言),装docker可参见Ubuntu离线安装docker. 开始部署: 部署图 ...

  2. iOS解决cell重用问题

    在写sina 微博界面的过程中使用到了cell,那么就是在cell上添加一些控件,但是由于每条微博的内容都是不同的,所以在显示的过程中,出现了内容重叠的问题,其实就是UITableViewCell重用 ...

  3. 浅谈Android之Activity生命周期

     Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的.今天我们就来详细地聊聊Ac ...

  4. [记录] Vue中的dom操作

    使用过Vue的同学都应该有这样一个感觉,在vue中页面是基于数据驱动的,不需要我们自己操作dom,框架帮我们完成了这一步,事实上Vue官方也建议我们这样做 在绝大多数情况下是不需要操作dom就可以完成 ...

  5. 2018-2019-2 网络对抗技术 20165304 Exp5 MSF基础应用

    2018-2019-2 网络对抗技术 20165304Exp5 MSF基础应用 原理与实践说明 1.实践原理 1).MSF攻击方法 主动攻击:扫描主机漏洞,进行攻击 攻击浏览器 攻击其他客户端 2). ...

  6. python 打开文件基础 (笔记)

    1.打开文件:建立文件与程序的关联 open(filenname,mode) filenname:文件名(包括路径):mode :打开模式 模式 打开模式 含义 r 只读,文件不存在则报错 w 只写, ...

  7. Win10 for Docker 安装 K8S

    win 10 docker安装K8S中遇见的一些问题,记录下来方便自己以后避免采坑. 安装步骤: 1.安装Docker for windows.在docker官方下载,然后傻瓜式安装. 安装成功以后再 ...

  8. linux卸载erlang

    rpm -qa | grep erlang | xargs rpm -e --nodeps

  9. Java框架spring Boot学习笔记(十):传递数据到html页面的例子

    新建一个templates文件夹和index.html <!DOCTYPE html> <html> <head lang="en"> < ...

  10. PHP 浮点型转整型的一个奇怪现象

    起因 最近通过一个学长的题了解php弱类型的时候,发现了一个奇怪的现象. 正文 主要问题在这样一段代码: $c=(int)((0.1+$b)*10); 当$b=0.6,0.8以及其他值的时候都正常 将 ...