赞
踩
基于必要的编码环境都完备 实现servlet获取参数——
简单易懂,我用的开发是IDEA,以此作为示例。
在web下创建login.html(登陆界面的html文件)
路径 action=“login” 在.xml文件中补充映射路径 提交方法选择post
创建一个loginServlet 类
因为浏览器中的form的method是post,所以LoginServlet需要提供一个doPost方法
在doPost方法中,通过request.getParameter 根据name取出对应的账号和密码
然后用System.out.println() 打印在控制台
注 这里是打印在控制台,并没有在网页上输出
package initial; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; public class loginServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { String name=request.getParameter("name"); String password = request.getParameter("password"); System.out.println("name:"+name); System.out.println("password:"+password); } }
之后再web.xml中增加映射
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>initial.loginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
一般都是< servlet >< /servlet > 和 < servlet-mapping> < /servlet-mapping> 一起出现
name 、class 是针对于这项业务所写的类 mapping就是映射路径 也就是action=“login” 每一部分都需要指定到类名 pattern 里是跳转参数
tomcat运行之后 显示的网页页面时index.jsp 不能直接跳转到login 需要再login.html中输入登录密码 之后跳转 浏览器是不会显示这个提交的数据,
在tomcat窗口能被看见 而且要想从后台tomcat服务器得到反馈数据 就得通过响应
返回响应:
一般是 在数据库中交互实现的 (也就是平时的qq等软件的账户密码是存储于数据库里的)
简化一下可以通过内存对比 判断账号密码正误
需要把loginServlet类改写:
public class loginServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { String name=request.getParameter("name"); String password = request.getParameter("password"); // System.out.println("name:"+name); // System.out.println("password:"+password); String html=null; if("yyp".equals(name)&&"qwer".equals(password)) { html="<div align='center' style='color:green'>succes</div> "; } else html="<div align='center' style='color:red'>fail</div>"; PrintWriter ps=response.getWriter(); ps.println(html); } }
比较的时候把常量字符串"admin" "123"放前面,因为用户可能没有输入账号密码就提交,servlet会获取到null。 这样就规避了空指针异常的问题。
使用中文 可能引起乱码
在login.html中输入正确的账号密码 点击登录即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。