Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在数据库上工作时JSP、Servlet和DAO之间的通信_Java_Jsp_Servlets_Jdbc_Dao - Fatal编程技术网

Java 在数据库上工作时JSP、Servlet和DAO之间的通信

Java 在数据库上工作时JSP、Servlet和DAO之间的通信,java,jsp,servlets,jdbc,dao,Java,Jsp,Servlets,Jdbc,Dao,在学习JSP、Servlet和DAO的过程中,我遵循了教程,并希望了解一些使用JSP/Servlet编辑SQL Server表的正确方法 无论如何,我有: POJO.java java SERVLET.java PAGE.jsp 如何实现另一个显示数据行的JSP页面?是否可以创建一个JSP页面,调用DAO/Servlet进行数据提取,然后在其自身(JSP)上显示数据 打开网站时,我调用Servlet,过程如下:Servlet->DAO->JSP。我是否需要另一个Servlet+JSP文件,或

在学习JSP、Servlet和DAO的过程中,我遵循了教程,并希望了解一些使用JSP/Servlet编辑SQL Server表的正确方法

无论如何,我有:

  • POJO.java
  • java
  • SERVLET.java
  • PAGE.jsp
如何实现另一个显示数据行的JSP页面?是否可以创建一个JSP页面,调用DAO/Servlet进行数据提取,然后在其自身(JSP)上显示数据

打开网站时,我调用Servlet,过程如下:
Servlet->DAO->JSP
。我是否需要另一个Servlet+JSP文件,或者我是否可以只添加将使用当前Servlet填充页面的JSP文件


我的问题应该交给教程的作者,但我希望这里能从不同的角度提出一些建议。

如果我正确理解了你的问题,我可以请你做下一步:
1.将数据附加到reguest(使用request.setAttribute(名称、对象))
2.使用jsp:import连接下一个jsp页面
3.在这些servlet中,通过request.getAttribute(名称)提取数据,将其转换为所需的类型并使用。


然而,我不确定这是否足够正确-正如我所知,你不会真正复制你的var,因此这不会占用太多额外的时间或内存,但我不能确定这是否是解决这个问题的最“适当”的方法…

如果我正确理解你想要什么,为了做你想做的事,你已经拥有了几乎所有你需要的东西。DAO有一个名为list()的方法,该方法将查询db并返回employee对象的arraylist,因此您在这方面做得很好。但是,需要修改servlet和jsp页面以使其正常工作,但需要向servlet添加相关代码,以便使用DAO仅获取员工列表。 在开始尝试块添加之前

ArrayList<employee> employeeList = null;
jsp上的javascript必须更改,以便于实现这一点,因为javascript正在驱动传递给servlet的内容,您必须向jsp添加一个按钮,该按钮将调用类似于此的javascript函数

<input type='button' value='List Employees' onclick="submitForm('list')" />


这将为您指明正确的方向,并允许您在稍作修改的情况下仍然使用教程中的代码。希望能有所帮助。

请详细说明我调用的Servlet:Servlet->DAO->JSP。我应该如何添加第二个站点,让用户只需浏览数据?另一个Servlet和另一个JSP文件,或者我可以只添加使用当前Servlet的JSP文件吗?@JigarJoshi我的意思是,这个示例调用一个返回JSP页面的Servlet,这类似于CMS。如何为没有编辑权限的所有人添加首页?应该是另一个Servlet,或者是调用与CMS相同Servlet的JSP。没有相同的Servlet将执行此任务,您将解析当前用户的角色并将其存储在会话中,从会话检查是否用户具有该角色,然后启用视图,并在Servlet中添加此安全性/service@JigarJoshi所以我让Servlet根据是否有活动的管理会话来决定打开哪个JSP?如果会话存在,我会继续返回我的CMS.jsp,如果没有会话,那么它将转到default.jspwell。如果没有太大的区别,那么你可以在同一个jsp中执行,只需使用条件检查显示/隐藏特性,并在servlet端使其安全。我需要一个完全不同的jsp用于默认用户站点。我可以通过
request.getRequestDispatcher(“/jsp/default.jsp”).forward(请求,响应)来实现这一点,对吗?可以在default.jsp上的某个位置添加登录表单,以将用户切换到可编辑的“管理模式”?web.xml中的welome文件列表将index.jsp列为欢迎文件,因此如果您输入“”而不是“”,它应该显示为web应用的默认jsp,并且您可以在那里添加登录表单。当您在地址栏中输入“”时,您绕过index.jsp并直接调用servlet,然后servlet将您重定向到employee_maintenance.jsp。非常感谢:)但是,如果我希望这个index.jsp同时显示登录表单和不可编辑的数据库记录,该怎么办。如何从index.jsp调用servlet(完成整个查询处理)?如果您的原始问题已得到回答,请将其标记为已回答,并发布另一个问题。
<input type='button' value='List Employees' onclick="submitForm('list')" />