有两个jsp1,jsp2页面和一个servlet(Dispatch):
***************************jsp1.jsp*****
<form action="Dispatch">
<input name="id" type="text">
<input type="submit" value="ok">
</form>***************************Dispatch.java*****
...
String id=request.getParameter("id");
request.setAttribute("ID",id);
...
***************************jsp2.jsp*****
id=<%=request.getAttibute("ID")%>
Servlet的功能难道仅仅就是从jsp中取得参数,再传送给下一个jsp页面吗?如果是这样的话,那我为什么不用传统的<form action="jsp2.jsp">,在jsp2.jsp中可以直接用request.getParameter("id")也可以取得表单传过来的值啊?
所以我想知道Servlet主要的功能是什么,有没其他逻辑处理呢?
如果有其他逻辑处理的话,是不是都要放在javabean中处理呢?
比如我要实现以下的功能:
我要验证jsp1.jsp表单所输入的id在oracle数据库中是否存在,而且如果有的话,将满足id条件的记录全部显示在jsp2.jsp中. 请问大概的实施步骤是什么?????????以前我是把所有的连接数据库语句,判断等都在jsp中操作,我知道这样效率是不高的?
请问怎么做才能将jsp,servlet,javabean有机的结合起来,并能显示各自的特点(以此功能为列)?
***************************jsp1.jsp*****
<form action="Dispatch">
<input name="id" type="text">
<input type="submit" value="ok">
</form>***************************Dispatch.java*****
...
String id=request.getParameter("id");
request.setAttribute("ID",id);
...
***************************jsp2.jsp*****
id=<%=request.getAttibute("ID")%>
Servlet的功能难道仅仅就是从jsp中取得参数,再传送给下一个jsp页面吗?如果是这样的话,那我为什么不用传统的<form action="jsp2.jsp">,在jsp2.jsp中可以直接用request.getParameter("id")也可以取得表单传过来的值啊?
所以我想知道Servlet主要的功能是什么,有没其他逻辑处理呢?
如果有其他逻辑处理的话,是不是都要放在javabean中处理呢?
比如我要实现以下的功能:
我要验证jsp1.jsp表单所输入的id在oracle数据库中是否存在,而且如果有的话,将满足id条件的记录全部显示在jsp2.jsp中. 请问大概的实施步骤是什么?????????以前我是把所有的连接数据库语句,判断等都在jsp中操作,我知道这样效率是不高的?
请问怎么做才能将jsp,servlet,javabean有机的结合起来,并能显示各自的特点(以此功能为列)?
解决方案 »
- 求助,为业务逻辑类注入DAO类,出错
- 急求一个在jsp中按钮调用oracle中的PROCEDURE的例子
- 关于coding 时. 快捷键的问题.
- FCKeditor 无法上传图片
- 这样sql问题很怪!
- 如何访问自己的JSP?
- 设计模式的问题!!
- jcreator中注释乱码的问题
- 如何将Weblogic安装为Windows 2000的服务?
- Spring AOP拦截Controller层,getWriter() has already been called for this response
- SOS:受朋友之托,紧急寻找java开发高手!!!
- 我上传的文件名是中文名称,在下载的时候点击文件名打开一个页面后出现乱码?请问怎么回事,如何改,是不是改server.xml
也就是mvc
设想的你的页面间的关系很复杂的时候,就能体现优势了
jsp主要用来显示
servlet用来页面间的跳转
javabean处理逻辑这就是MVC的设计模式你把查询数据库的操作放在javabean里面jsp1.jsp------->(发送参数到servlet)servlet接受请求参数,然后调用javabean得到数据库数据然后把数据放在request里面 转向到jsp2.jsp显示这样逻辑就很清晰,也很容易维护
当然对于小的程序,这样麻烦多了自己体会一下
我觉得开发主要是实事求是的去选择开发模式,并不是哪个先进就用哪个,就像楼主自己说得如果只是写个小程序就用mvc模式是很麻烦的
"servlet接受请求参数,然后调用javabean得到数据库数据,然后把数据放在request里面 转向到jsp2.jsp显示"如果要循环取出数据库中满足条件的记录传给jsp2.jsp,我知道在servlet中是很好实现的,关键怎么把这些许多数据全部传给jsp2.jsp呢?以前都是在jsp2.jsp上用一个记录集循环取出并显示在页面上.还有一个问题就是在用forward("YY.jsp")跳转后,URL地址栏中显示并不是YY.jsp,可能是直接装载在这个servlet中吧,那我怎么才能在跳转的时候看到要跳转的页面呢,比如这里的YY.jsp??
------------------------------------------------------第二:forward("YY.jsp")是在服务器端执行的,浏览器不知道,所以在地质栏不显示。如果要显示的话,用sendRedrict("YY.jsp");
如果想看到YY.jsp 就用Redrect 重定向~~