JSP与Servlet的数据交互
jsp与Servlet的数据交互随着javaweb学习的深入,前后端数据交互变得越来越频繁,今天就让我们一起总结一下他们是如何交互的,jsp与servlet的交互分为:从jsp到servlet,从servlet到jsp,首先要明白一点,servlet需要容器的支持才能够运行,如Tomcat、jetty达到servlet的请求,需要ServletRequest对象和ServletResponse对象
jsp与Servlet的数据交互
随着javaweb学习的深入,前后端数据交互变得越来越频繁,今天就让我们一起总结一下他们是如何交互的,
jsp与servlet的交互分为:
- 从jsp到servlet,
- 从servlet到jsp,
- 首先要明白一点,servlet需要容器的支持才能够运行,如Tomcat、jetty
达到servlet的请求,需要ServletRequest对象和ServletResponse对象去处理servlet在服务器中的运行:1.加载到内存->2.初始化(init()) - > 3.调用(service(){doGet/doPost}) - 4.销毁(destroy())。其中(1)(2)(4)在 Servlet的整个生命周期中只会被执行一次
如果在web.xml中对servlet配置了load-on-startup,那么就是在容器加载时就将Servlet初始化,否则是接受第一次请求时再加载
在web.xml文件中, Servlet可以通过元素和元素指定通过url的方式访问这些Servlet
2.JSP(JavaServlet Page)其实就是servlet。是从Servlet继承而来。只不过它在Servlet当中又添加/修改了一些方法,作了新的封装
下面是一些交互的具体方法和操作
1.servlet请求数据的传递:
request.setAttribute(string,object),request.getAtttibute(string),返回object
2.servlet请求转发:
request.getRequestDispatcher(“targetURL”).forward(request,response)
3.httpsession数据传递:
request.setsession().setAttribute(string,object),request.getsession().getAttribute(string),返回object;
4.servlet页面跳转response.sendRedirct(targetURL);
5.application数据传递:
application.setAttribute(string,object),appliction.getAttribute(string);
6.jsp页面到action对应页面进行简单数据传递:
在登陆页面,name=“username” 在action对应的页面,¥{param.username},可以得到对应的值
7.使用pagecontext可以得到其他八种对象,实现数据传递,
8.实现页面跳转和数据传递:<jsp:forward page="targetURL"/><jsp:param name="name" value=object/><jsp:forward>
在target URL页面,通过request.getAttribute(string)得到相应数据,<jsp:param name="name" value=object>
也同jsp:include page="contents"></jsp:include>
一起使用
9.使用JavaBean组件:创建对应JavaBean类,导入到对应的jsp中使用
10:引用JSTL标准标签库对页内变量获取:<c:set var="num" value="${4*4}"/>
可以用${num}
获取,<c:redirect url="targetURL"></c:redirect>实现页面跳转
人困马乏,点个赞可好!!!
更多推荐
所有评论(0)