实现简单的登录界面
1. 需要掌握的技术;
Java语言(Java database Connectivity技术、Servlet技术、jsp(Java Server Pages)技术,JavaBean(Application)应用组件技术)、面向对象分析设计思想、设计模式和框架结构、XML语言、网页脚本语言、开发工具(数据库、web服务器、集成开发环境(IDE))
程序源代码:
DBUtil.java
package com.jaovo.msg.Util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBUtil { public static Connection getConnection() { try { Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } String user = "root"; String password = "root"; String url = "jdbc:mysql://localhost:3306/jaovo_msg"; Connection connection = null; try { connection = DriverManager.getConnection(url, user, password); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return connection; } }
login.jsp
<%@page import = "com.jaovo.msg.Util.DBUtil" %> <%@page import = "java.sql.*" %> <%@page import = "java.sql.PreparedStatement" %> <%@ 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> <% String username = request.getParameter("username"); String password = request.getParameter("password"); if(username == null || "".equals(username.trim())){ request.setAttribute("result", "请输入用户名!"); %> <jsp:forward page = "longinwindow.jsp"></jsp:forward> <% } if(password == null || "".equals(password.trim())){ request.setAttribute("result", "请输入密码!"); %> <jsp:forward page = "longinwindow.jsp"></jsp:forward> <% } Connection connection = DBUtil.getConnection(); boolean flag = false; String sql = "select * from t_user where username = ?"; PreparedStatement preparedstatement = null; ResultSet resultset = null; preparedstatement = connection.prepareStatement(sql); preparedstatement.setString(1,username); resultset = preparedstatement.executeQuery(); while(resultset.next()){ if(resultset.getString("password").equals(password)){ flag = true; request.setAttribute("result", "登陆成功!"); %> <%=request.getAttribute("result")%> <% } else{ request.setAttribute("result", "密码错误!请重新登录!"); %> <jsp:forward page = "longinwindow.jsp"></jsp:forward> <% } } if(!flag){ request.setAttribute("result", "没有这个人!登录失败!"); %> <jsp:forward page = "longinwindow.jsp"></jsp:forward> <% } %> </html>
loginwindow.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>
<title>用户登录页面</title>
</head>
<body>
<%=request.getAttribute("result") %>
<form action="login.jsp" method = "get">
<table align = "center" border = "1" width = "500">
<tr>
<td>用户名称:</td>
<td>
<input type = "text" name = "username"/>
</td>
</tr>
<tr>
<td>用户密码:</td>
<td>
<input type = "password" name = "password"/>
</td>
</tr>
<tr align = "center">
<td colspan = "2">
<input type = "submit" value = "登录"/>
<input type = "reset" value = "重置"/>
</td>
</tr>
</table>
</form>
</body>
</html>
运行结果截图:
什么都不输入的情况下:
密码输入错误的情况下:
没有用户的情况下:
登录成功时: