Jsp与servlet的数据传输

其实jsp的本质就是servlet,Jsp经过编译之后就成了servlet,但Java虚拟机并不能识别JSP代码,当浏览器请求JSP页面时,JSP引擎会首先去检查是否需要编译这个文件。如果这个文件没有被编译过,或者在上次编译后被更改过,则编译这个JSP文件。JSP擅长在于页面显示,servlet则擅长逻辑控制,类似于.NET MVC的Controllers。Jsp生命周期结束后就会销毁servlet实例。

JSP与SERVLET之间的传值有两种情况,JSP到servlet,servlet到JSP,通过对象request和session来传递。

JSP 到servlet示例:JSP的form表单传值

通过设置form表单的action请求路径和输入框的name值来传递,当点击新增按钮的时候就会获取到姓名和密码传到servlet

<form action="${ctx}/servlet/UserServlet" method="post"

>

    姓名<input type="text" name="username" id="username" class="username">

    密码<input type="text" name="password" id="password" class="password">

     <input type="submit" value="新增">

</form>

 

servlet代码示例,下面就是通过servlet来接收JSP传过来的数据

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

//通过request.getParamter(参数)方法来获取

//参数为JSP form表单所对应的name值

String username=request.getParameter("username");

String password=request.getParameter("password");

}

Servlet 到JSP:servlet代码示例

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

//通过request.setAttribute(参数,值)方法设置

request.setAttribute("username", "cxk");

request.setAttribute("password", "123");

//通过request.getRequestDispatcher("路径").forward(request, response)方法来把设置好的参数传到jsp去

 

request.getRequestDispatcher("/jsp/MyJsp.jsp").forward(request, response);

}

Jsp代码:通过el表达式来获取值,el表达式就是“${}”这样子,里面写对应的 参数就行

${username} <br>

${password}

  • 0
    点赞
  • 0
    评论
  • 21
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:精致技术 设计师:CSDN官方博客 返回首页

打赏作者

科技园下卖煎饼

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值