servlrt中使用内置对象

本文详细解释了HTTP请求中的GET与POST方法的应用场景,并介绍了JSP与Servlet中常见内置对象如out、request、session及application的使用方法。

补充问题:form时,什么情况下用get方法,什么情况下用post

1、安全性要求比较高,数据量比较大,一定要选择post。如:注册。

2、数据很少,而且安全性要求不高,选择get。 如:查询详情。

 

----Jsp中的内置对象,如何在Servlet中获取并使用?

对于同一个会话,所有资源(包括jspservlet)公用同一个session,但是jsp可以直接使用session对象,但是servlet想使用,必须先获取这个session的引用,才能使用。

 

其他对象,如果在Servlet中使用,也需要获取后才能使用。

1、 out

jsp中,<%  out.print(“呵呵”);% >  //直接使用out对象

servlet中,

PrintWriter out = response.getWriter();

out.print(“呵呵”);

2、 requestresponse

jsp中,

<% request.getParameters(“name”);% >  //直接使用requestresponse对象

servlet中,

doPost(HttpServletRequest request, HttpServletResponse response) {  //可以用其他名字

request.getParameters(“name”);

//以参数的方式传过来,所以可以直接使用这个参数名

response.sendRedirect(“B.jsp”);

}

 

 

3、 session(对应的类是HttpSession ):

jsp中,

<%  session.setAttribute(“user”,u);  % >  //直接使用session对象

servlet中,

HttpSession  sess =request.getSession();

sess.setAttribute(“user”,u);

例子:

--------Login.jsp-------

<form method="post" action="loginservlet">

      <input type="text" name="name"><br>

      <input type="password" name="pwd"><br>

      <input type="submit" value="登录"><br>

</form>

-------LoginServlet.java----------

public void doPost(HttpServletRequest request,

HttpServletResponse response)

throws ServletException, IOException {

 

response.setContentType("text/html;charset=utf-8");

PrintWriter out = response.getWriter();

//获取session

HttpSession session = request.getSession();

//获取登录信息,并放入session

String u = request.getParameter("name");

String p = request.getParameter("pwd");

if (u.equals("1")&&p.equals("1")) {

session.setAttribute("user", u);

response.sendRedirect("success.jsp");

}else

{

response.sendRedirect("Login.jsp");

}

}

 

-------success.jsp----------

<%

      Object o =session.getAttribute("user");

      out.print(o.toString()+"欢迎你!");

%>

4、 application:

jsp中,

<%  application.setAttribute(“count”,num);  % >  //直接使用application对象

servlet中,

ServletContext application = getServletContext();

application.setAttribute("user", u);

 

//在其他地方取值 Object o =application.getAttribute("user");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值