JSP示例代码

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
   欢迎您:
   <%
       String uname=(String)session.getAttribute("uname");
       if(uname==null){
           //如果用户没有登录,跳转到登录页面
           response.sendRedirect("userLogin.jsp");
       }else{
           out.print(uname);
       }
       //jsp --> java --> class --> 服务器端执行 --> 服务器端的执行结果 发送到浏览器
   %>
   <a href="loginOut.jsp">退出</a>
</body>
</html>
<html>
<head>
    <title>Title</title>
    <script type="text/javascript" src="js/jquery.js"></script>
    <script>
        $(function () {
            $("#btn").bind("click", function () {
                var userName = $.trim($("#userName").val());
                var password = $.trim($("#password").val());
                if (userName == "" || password == "") {
                    $("#error").html("账户或者密码不能为空").css("color", "red");
                    return;
                }
                //清空错误信息
                $("#error").html("");
                //表单提交
                $("#loginForm")[0].submit();
            });
        });
    </script>
</head>
<body>
<%
    String mes=(String)request.getAttribute("mes");
    if(mes==null){
        mes="";
    }
%>
<%
    //获得用户的cookie信息 将cookie中的信息自动添加到文本中
    Cookie [] cookies=  request.getCookies();  //获得请求中的cookie数据

    String cookieUserNameValue="";
    if(cookies!=null){  //判断请求中是否含有cookie数据,如果有
        for(Cookie temp:cookies){ //遍历cookie中的数据
            if(temp.getName().equals("cookieUserName")){  //判断下当前的cookie的名字如果是cookieUserName
                cookieUserNameValue=  temp.getValue();  //此cookie保存的数据,就是显示的数据
            }
        }
    }
%>


<form name="loginForm" id="loginForm" method="post" action="loginSuccess.jsp">
    <p id="error"><%=mes%></p>

    <p>
        用户名: <input type="text" name="userName" id="userName" value="<%=cookieUserNameValue%>"/>
    </p>

    <p>
        密码:<input type="password" name="password" id="password"/>
    </p>
    <input type="button" value="登录" id="btn"/>
</form>

</body>
</html>

 

<html>
<head>
    <title>Title</title>
</head>
<body>
<%
    session.invalidate();  //删除session中的数据
    //session.removeAttribute("uname"); //删除session中的uname属性

    response.sendRedirect("userLogin.jsp");  //跳转到登录页面
%>
</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2021-07-30
  Time: 10:05
  To change this template use File | Settings | File Templates.

  Post方式传递参数中文乱码问题:
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        <%@ page contentType="text/html;charset=UTF-8" language="java" %>


  GET方式传递参数中文乱码问题:
     方式一:    new String(param.getBytes(),"utf-8");

     方式二:   server.xml上
        <Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"  URIEncoding="UTF-8"/>


     转发与重定向的区别:
     1 转发的浏览器的地址不会关闭    重定向浏览器的地址会改变
     2 转发以后request作用域中的值会保留下来   重定向request作用域的值就会丢失
     3 转发不能跳转到外部应用程序   重定向可以跳转到外部程序

--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    request.setCharacterEncoding("utf-8");  //修改请求的编码格式
    response.setCharacterEncoding("utf-8");  //修改响应的编码格式

    String userName=request.getParameter("userName");
    String password=request.getParameter("password");
    if("admin".equals(userName) && "123456".equals(password)){//判断帐号密码是否正确
        session.setAttribute("uname",userName);  //登录成功以后保存登录信息
        //session.setMaxInactiveInterval(1800); //设置session的过期时间
        String id=session.getId();  //获得session的id
        System.out.println(id);  //控制台打印sessionId

        Cookie cookie=new Cookie("cookieUserName",userName);  //创建cookie对象
        response.addCookie(cookie); //向浏览器发送数据
        cookie.setMaxAge(-1);   //cookie过期时间的单位是什么?

        //页面跳转到欢迎页
        RequestDispatcher requestDispatcher= request.getRequestDispatcher("/welcome.jsp");
        requestDispatcher.forward(request,response);
    }else{
        request.setAttribute("mes","账户或者密码错误!!!");
        //通过转发进行页面跳转以后,能从request作用域中获得 转发之前保存在request作用域中的值
        RequestDispatcher requestDispatcher=
                request.getRequestDispatcher("/userLogin.jsp");
        requestDispatcher.forward(request,response);  //登录失败页面转发到登录页面
        // response.sendRedirect("http://www.baidu.com");
    }
%>

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
顺序如下: 1、多种字体大小显示 2、c:out标记输出 3、获取当前时间 4、include包含语句 5、建立错误处理页面的范例程序 6、jsp:forward 7、简单计数器 8、设置页面属性 9、使用GB2312编码 10、使用Big5编码 11、c:catch的用法 12、 begin、end和step的用法 13 、 循环 14、 varStatus 的四种属性 15、 的用法 16、从客户端传送数据至服务端 17、使用Unicode转义字符 18、使用朝鲜语字符集 19、JSP中最简单的国际化程序 20、错误检测 21、抛出异常 22、 的用法 23、和 的用法 24、 的用法 25、jsp-include的用法 26、汉字处理 27、网页重定向 28、自动更新网页 29、存取session 30、 的用法 31、单选型列表框 32、jsp文件中定义类 33、取得 JSP Container 版本 34、javax.servlet.jsp.JspWriter - out 对象 35、page 隐含对象 36、application 对象 37、PageContext 对象 38、Page范围 - pageContext 39、测试要显示的中文 40、IF控制符的操作 41、HttpServletRequest 接口所提供的方法 42、 网上测验 43、HttpSession - session 对象 44、 多选型列表框 45、解决浏览器 cache 的问题 46、使用 EL、JSTL 处理表单数据 47、 EL隐含对象 param、paramValues 48、EL隐含对象 pageContext 49、EL算术运算符 50、EL关系运算符 51、EL的运算符 52、选择钮的使用 53、检查框的使用 54、群组检查框的使用 55、数字、货币、百分数格式化 56、日期格式化 57、JSTL设置语言地区 58、Cookie数据的存取 59、session有效时间的设置与取得 60、session时间与ID 61、Cookie有效时间的设置 62、利用隐藏字段传送数据 63、JSP 使用 JavaBean 的方法 64、JSP 使用 JavaBean 65、范围为 Page 的 JavaBean范例程序 66、范围为 Request的 JavaBean 67、范围为 Session 的 JavaBean 68、范围为 Application 的 JavaBean 69、删除 JavaBean 70、url重组 71、Switch语句 72、环境变量 73、forward重定向 74、文件的建立与删除 75、取得文件属性 76、取得目录中的文件 77、目录的建立与删除 78、自Cookie存取日期/时间数据 79、管理Session变量 80、数据库中的记录数与记录指针位置 81、利用absolute方法设置记录位置 82、使用jsp指令生成Word文档 83、JSP网页模板 84、判断是否空白文件 85、cookie 用户登录次数 86、获取用户的真实IP地址 87、获取用户的浏览器信息 88、在客户端进行数据检查 89、在JSP中获取当前绝对路径 90、读取表单中所有参数 91、分行写入数据 92、显示请求URL 93、判断session是否过期 94、参数式查询数据库 95、取得数据库中各栏名称 96、使用JavaBean、设置和获取Bean的属性 97、设置Bean的一个属性与输入参数关联 98、实现基于数据库的站内搜索 99、DOM读取XML文档 100、SAX读取XML文档

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值