JSP实现数据传递与保存

业务逻辑:

1、登陆login.jsp

2、判断登陆是否成功check.jsp

3、登陆成功页面newsDetail.jsp

4、登陆失败转发到login.jsp

代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户登陆页</title>
</head>
<body>

<form action="check.jsp" method="post">
    <table>
        <tr>
            <td>用户名:</td>
            <td><input  type="text" name="username"/></td>
        </tr>
        <tr>
            <td>密码:</td>
            <td><input  type="text" name="pwd"/></td>
        </tr>
        <tr>
            <td>邮箱:</td>
            <td><input type="text" name="email" /></td>
        </tr>            

        <tr>
            <td align="right"><input type="checkbox" name="title" value="10001" /></td>
            <td>第一个选项</td>
        </tr>
        <tr>
            <td align="right"><input type="checkbox" name="title" value="10002" /></td>
            <td>第二个选项</td>
        </tr>
        <tr>
            <td align="right"><input type="checkbox" name="title" value="10004" /></td>
            <td>第三个选项</td>
        </tr>

        <tr>
            <td align="right"><input type="submit" value="提交" /></td>
        </tr>
    </table>
</form>
<%
    Object obj = request.getAttribute("error");
    if(obj!=null){
        out.println("info=>>>>>>"+obj.toString());
    }
 %>

</body>
</html>

check.jsp

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">

    <title>My JSP ‘index.jsp‘ starting page</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
  </head>

  <body>
   <%
       //获取表单提写数据
      request.setCharacterEncoding("utf-8");
      response.setCharacterEncoding("utf-8");
      String username = request.getParameter("username");
      String password = request.getParameter("pwd");
      String email = request.getParameter("email");
  /* 获取checkbox的值*/
    String[] titles = request.getParameterValues("title");
      String alltitle="";
      if(titles!=null && titles.length!=0){
          for(int i=0;i<titles.length;i++){
          alltitle += titles[i]+"&nbsp";
          }
      }
      //判断登陆是否成功
      if(!username.equals("admin")){
          request.setAttribute("error", "登陆失败!");
          request.getRequestDispatcher("login.jsp").forward(request, response);

      }else{
          //登陆成功,创建session会话,保存登陆状态
          session.setAttribute("username", username);
          session.setAttribute("password", password);
          //session设置过期时间
          session.setMaxInactiveInterval(5);
          response.sendRedirect("newsDetail.jsp");

      }

      %>
  </body>
</html>

newsDetail.jsp

<!--页面的头部-->
<div id="header">
    <!--页面顶部-->
    <div class="main-top">
        <div class="logo"><a href=""><span>新闻大视野</span></a></div>
        <div class="login-box">
        <%
        Object obj=session.getAttribute("username");
        Object pwd=session.getAttribute("password");
        String username="";
        String password="";
        if(obj!=null &&pwd!=null){
            username = obj.toString();
            password = pwd.toString();%>
            <label><%="欢迎你,"+username %></label>&nbsp;&nbsp;<a href="logout.jsp">注销</a>
        <% }else{%>
        <label>用户名</label><input type="text" name="username"/><label>密码</label><input type="text" name="password"/><button>登录</button>
        <%}%>

        </div>
时间: 2024-11-07 23:21:05

JSP实现数据传递与保存的相关文章

form表单的Action.java文件和jsp之间数据传递

demo1 目标:以注册为模版,描述数据传递过程 1.jsp里的struts2表单(WebContent目录下)reg.jsp<s:form name="regForm" action="RegisterAction.action" method="post">     <s:textfield label="用户名" name="user.userName" title="请输

spring和jsp的数据传递。。。

常常通个页面向spring发出请求,服务器完成对数据的处理后,返回数据给jsp.这里有几种方式: 1,直接向jsp返回数据: 一定要在方法上加@ResponseBody如下: spring // 查询bug @RequestMapping(params = "method=queryBug") public @ResponseBody String querybug(String serviceid, String starttime) { //o为需要返回的数据,将它转换为json格

jsp 实现数据传递

请求对象 request public String getParameter(String name); public String getParameterValues(); 事例:请求中取出注册数据并显示到页面上 jsp代码:<input type="text" name="username">提交页的jsp代码://取出username的数据并输出String username=request.getParameter("usernam

JSP实现数据传递(web基础学习笔记三)

get和post的区别: JSP内置对象: 1)out内置对象:out内置对象是在JSP开发过程中使用得最为频繁的对象,然而其使用起来也是最简单的.out对象用于向客户端浏览器输出数                                                         据,out对象常用的方法是:print()或者println()方法,这两个方法用于在页面中打印出字符串信息. 2)request内置对象:request对象,JSP中的request内置对象对应了Ser

JSP、servlet、SQL三者之间的数据传递(前台与后台数据交互)

背景: 目前业界很流行的MVC(model-view-control)开发模式,理解为 模型是Bean, 视图是 Html/Jsp, 控制是Servlet, 关联数据库的Dao web的运行机制: 数据首先在Jsp上被展示出来,用户看到页面后触发一些事件,并可能传递数据,这些数据和请求被控制器接收到,然后开始处理(往往会需要有一些数据库的操作(查询,修改数据库数据)),当这些处理结束后,我们就需要将数据反馈到JSP上显示给用户看,完成一次完整的交互过程. 正文: 根据背景所述的顺序,我们依次介绍

JSP、servlet、SQL三者之间的数据传递

JSP.servlet.SQL三者之间的数据传递 博客分类: web开发 JSPservletSQL数据库连接池web开发 前言: 最近一直在做WEB开发,现总结一下这一段时间的体会和感触. 切记,web开发重点在于前台数据交互,页面美化而不要太沉溺于底层数据. 浏览器时代来到,向我们召唤出更炫.更简洁.更方便.更大气的网站. 这篇博客目的在于为大家解决web开发中最基础的数据传递操作,让大家有一个好的起点,在web开放中更加游刃有余 背景: 目前业界很流行的WVC(model-view-con

JSP Servlet SQL 三者之间数据传递

前言: 最近一直在做WEB开发,现总结一下这一段时间的体会和感触. 切记,web开发重点在于前台数据交互,页面美化而不要太沉溺于底层数据. 浏览器时代来到,向我们召唤出更炫.更简洁.更方便.更大气的网站. 这篇博客目的在于为大家解决web开发中最基础的数据传递操作,让大家有一个好的起点,在web开放中更加游刃有余 背景: 目前业界很流行的WVC(model-view-control)开发模式,具体暂可理解为 模型是javaBean, 视图是JSP, 控制是servlet. web的运行机制: 数

关于界面的按钮的显隐 还有jsp页面数据的传递 把页面的标签变成只读

//界面按钮的显示隐藏 界面input的锁定    function change(){       document.getElementById('first1').style.display="inline";       document.getElementById('first2').style.display="inline";       document.getElementById('first3').style.display="in

mongodb - 前端form表单传递数据,在保存和取出的数据格式处理函数 - 非递归

//处理时间部分,将ISODate("2014-10-09T18: 37: 50.0Z") 转换成 2014-10-09 18:37:50这种格式 //最多处理6层树形结构数据,当多维数组中的key,包含数组$product_date_col中的任意一个字符,那么就会被处理. public static function processMongoGetDate($product){ foreach($product as $k1=>$v1){ if(!is_array($v1)&