关于“servlet中有内容,但jsp中无内容”的思考
2017-12-20 20:36
399 查看
“JSP——500错误”的续集
(http://blog.csdn.net/gxx_csdn/article/details/78800621)之前在解决了jsp——500错误之后,有个问题困扰了我好久,即:
访问”http://localhost:8080/相应的servlet的名字”可以看到从数据库中查询的内容,而且无误,
但是访问”http://localhost:8080/相应的jsp的名字”这个jsp页面(不是index.jsp)却什么都没有,
然而有时候问题的解决就靠的是某一瞬间脑子的灵光,
现整理如下,希望能对你的问题的解决提供一点帮助和思路。
通过在网上查了好多资料,发现出现这种情况大致的解决思路有三种(假设相关配置没有问题):
1. 没从数据库中取到值。
(显然在这里这种情况是排除的,因为访问servlet可以看到内容,而且后台也可以正确打印)
2. 在servlet中,request没有把内容转发到相应的jsp,即需要:
request.setAttribute("newsList", newsList); request.getRequestDispatcher("showNews.jsp").forward(request, response);
(显然在这里这种情况也是排除的,因为我写了这个代码=.=,其中newsList就是从数据库中查询到的数据)
3. 在jsp页面中没有正确获取到对象值,即需要:
<% ArrayList<JSONObject> list = (ArrayList<JSONObject>)request.getAttribute("newsList"); 下面省略.....在"JSP——500"一文中有相关代码 %>
(显然在这里这种情况也是排除的,因为我也写了这个代码=.=)
引发的思考
之前在网上找相关问题的解决办法时,发现像我这种摸不着头脑、完全找不到问题所在的情况真的好多,但是大部分关于该问题的解决基本就是上述三种思路,如果你还是解决不了,
那,是否思考过这样一件事情:servlet和jsp到底是什么关系呢?
我的理解:
servlet是数据来源(当然数据获取可以再进行封装,写到一个类中,这样代码更整洁有序),当它获取到数据后把结果返回,
而之后数据显示的事情就由jsp页面来做,可以在jsp中写各种html标签并显示数据,
这样可以把数据获取和数据显示分离,
所以其实只要servlet中有内容了
4000
,那你是没错的,至少数据处理这里没问题的。
问题原因:
问题出在像上面那样直接访问这个jsp(不是index.jsp)这种行为本身是错的,
(当我把代码调出的那一刻,才发现自己之前好傻=.=,)
因为真正需要访问的这个servlet,
jsp就像是servlet的躯壳,毕竟jsp的全称是Java Server Page,而servlet是灵魂,
没有躯壳的灵魂将无法安置,没有灵魂的躯壳则毫无意义。
此外,重要的一点是servlet去处理数据这个动作是需要有外界触发的,
通常提交表单就可以达到这个目的,比如:
<form action="queryServlet" method="POST"> <input type="text" name="submit" size="50" autofocus required="required"> <input type="submit" value="搜索一下"> </form>
action=”进行相关处理的servlet的名字”,这样就可以了。
进一步的思考:
想要在访问这个jsp页面(不是index.jsp)时就直接显示相应内容,
可以通过ajax实现(未验证,该问题未完待续!)
相关文章推荐
- 关于 jsp servlet 将Excel表格内容写进数据库,将数据库导出到Excel中。(一)
- 关于 jsp servlet 将Excel表格内容写进数据库,将数据库导出到Excel中。(二)
- 关于 jsp servlet 将Excel表格内容写进数据库,将数据库导出到Excel中。(一)
- 关于使用EL语句来接收servlet给jsp传递及jsp页面之间传递的数据
- 关于JSP页面中的pageEncoding和contentType两种属性的区别 servlet 乱码
- 关于经过servlet跳转后jsp页面的样式消失问题的解决办法
- jsp/servlet/jsf:关于tomcat下应用jms
- 关于servlet和jsp中的取值问题
- 关于Servlet转到jsp页面出现的404 4000 问题
- Jsp&Servelet 学习笔记-映射静态的内容到一个servlet中
- 关于Weblogic异常:weblogic.servlet.jsp.compilationException解决方案
- 介绍一篇关于session的好文章,写的很详细(jsp-servlet 技术)
- 介绍一篇关于session的好文章,写的很详细(jsp-servlet 技术)
- maven关于servlet及jsp-api的依赖
- 先写个关于jsp的,显示个loading....待加载完才显示内容的写法
- 关于 Servlet.service() for servlet jsp threw exception的问题
- 关于JSP不能通过浏览器直接访问,要通过servlet跳转,但一个jsp文件里面用<iframe>标签包含了另一个jsp的访问问题
- 关于分享窗口内容设计的一些思考
- 关于servlet+jsp+java实现Web登陆页界面的一些笔记(二)
- 介绍一篇关于session的好文章,写的很详细(jsp-servlet 技术)