JSP制作简单登陆

2021-06-17 11:05

阅读:334

标签:orm   ssi   rac   count   cal   数据   dispatch   连接   分享   

JSP制作简单登陆界面

运行环境

eclipse+tomcat+MySQL 不知道的可以参考Jsp运行环境——Tomcat

 项目列表

技术分享

这里我先把jsp文件先放在Web-INF外面访问

  1. 需要建立的几个文件在图上.jsp
  2. 还要导入MySQL的jar包mysql-5.0.5.jar,导到WEB-INF中的lib文件夹就可以不需要Bulid Path
  3. 开始编写代码:

代码演示:

index.jsp就好像一般网站的首页一样感觉,将header.jsp和footer.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>
style>
    #nav>ul>li{
        float:left;
        margin-left:50px;
    }
    #login{
        clear:both;
    }
style>
head>
body>

@ include file="header.jsp" %>
div id="login">
    a href="login.jsp">button>登陆button>a>
div>

@include file="footer.jsp" %>
body>
html>

header.jsp

@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
div id="nav">
    ul>
        li >a href="">导航1a>li>
        li>a href="">导航2a>li>
        li>a href="">导航3a>li>
        li>a href="">导航4a>li>
        li>a href="">导航5a>li>
        li>a href="">导航6a>li>
    ul>
div>

footer.jsp

@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    div>
p>xxxxxxxxxxx可以试试|xxxxxxxxxxxx技术有限公司p>
 p>京 ICP 证 1234567 号|Copyright ? 1999-2017, All Rights Reserved p>
 div>
页面内容展示:

技术分享

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>
--表单--%>
    fieldset>
    legend>登陆界面legend>
    form action="test.jsp" method="post">
    input type="text" name="username">br>
    input type="password" name="password">br>
    input type="submit" value="登陆">
    
    ${error}
    form>
fieldset>
body>
html>

内容显示:

技术分享

test.jsp 是对表单login.jsp 的提交的内容与数据库中的数据对比验证,再相应的跳转

import="java.sql.*"%>


    pageEncoding="UTF-8"%>
//请求获取login.jsp的用户名username的值
 String username=request.getParameter("username");
//请求获取login.jsp的密码password的值
String password=request.getParameter("password");
//数据库MySQL的地址
String DBURL="jdbc:mysql://localhost:3306/zhou?useUnicode=true&characterEncoding=utf-8"; 
String DBName="root"; //登入用户名
String DBPwd="123456";//登入密码
//加载mysql驱动
Class.forName("com.mysql.jdbc.Driver");
//连接数据库
Connection conn=DriverManager.getConnection(DBURL,DBName,DBPwd);
//创建Statement对象
Statement st=conn.createStatement();
//sql语句,搜索这个username和password在数据库是否存在
String sql="select * from user where name=‘"+username+"‘and pwd=‘"+password+"‘";
//运行sql语句,并把得到的结果放入结果集ResultSet中
ResultSet rs=st.executeQuery(sql);
//判断这个结果集是否存在,一般username只有一个
if(rs.next()){
    //设置一个username,将后面username其内容赋值给前面一个username,可以以便下一个页面使用
    request.setAttribute("username", username);
    //跳转页面到userpage.jsp
    request.getRequestDispatcher("userpage.jsp").forward(request, response);
}else{
    //设置一个error,将后面的字赋给这个error,以便先一个跳转页面的使用,request的作用域有限
    request.setAttribute("error", "用户名或密码错误!!!");
    request.getRequestDispatcher("login.jsp").forward(request, response);
}
%>

登陆错误显示的页面内容:

技术分享

 

userpage.jsp这个页面就是登陆成功之后显示的页面

@page import="javafx.scene.chart.PieChart.Data"%>
@page import="java.util.Date"%>
@ 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>
div>

p>${username},你好,登陆成功!!p>
div>

//session的作用域问题,可以记录一个网站的浏览量。先得到一个count
    Object obj=session.getAttribute("count");
//判断这个对象是否为空
    if(obj==null){
        //空则重新设置一下count的值
        session.setAttribute("count", 0);
    }else{
        //否则将得到的对象强转加1,就可以记录浏览量
        int i=(int)obj+1;
        session.setAttribute("count", i);
        %>
        div>你是第=i %>位登陆的用户div>
    
    }
    //获取当前时间
    Date date=new Date();
    out.print("现在时间:"+date);
%>
div>你的IP地址:=request.getRemoteAddr()%>div>
body>
html>

页面内容:localhost就是127.0.0.1,有时候地址栏是local host时会显示8个0:

 技术分享

 

整个简单的登陆就完事了

 想了解EL语言的具体感觉可以看这个 JSP中的EL表达式详细介绍

 

JSP制作简单登陆

标签:orm   ssi   rac   count   cal   数据   dispatch   连接   分享   

原文地址:http://www.cnblogs.com/zhouguanglin/p/7266315.html


评论


亲,登录后才可以留言!