Python语言技术文档

微信小程序技术文档

php语言技术文档

jsp语言技术文档

asp语言技术文档

C#/.NET语言技术文档

html5/css技术文档

javascript

点击排行

您现在的位置:首页 > 技术文档 > jsp技巧

JSP+MySQL实现网站的登录与注册小案例

来源:中文源码网    浏览:150 次    日期:2024-05-13 22:40:53
【下载文档:  JSP+MySQL实现网站的登录与注册小案例.txt 】


JSP+MySQL实现网站的登录与注册小案例
为了练手,我就自己试着做了一个网站的登录与注册的小案例。由于没有做美化处理,所以界面并不是很好看。
网站实现的功能如下:
•用户首次注册功能
•用户登录功能
下面我将会分模块展示
注册模块
首先需要一个注册界面,如下register.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>




User to Register Page!




Welcome to this Enroll(Register) Page!




Please input your message:



Name:

Pswd:









然后就是action对应的注册处理页,如下do_register.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>




Server to do the register page!


<%
String Register_name=request.getParameter("register_name");
String Register_password=request.getParameter("register_password");
%>
<%
try{
Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/summer", "root", "mysql");
Statement stmt=conn.createStatement();
//desogn the sql statement
String InsertSQL="INSERT INTO User(Name,Password) values('"+Register_name+"','"+Register_password+"')";
System.out.println(Register_name+"\t"+Register_password);
//do the query operation,and here is the most important sql statement.
int FLAG=stmt.executeUpdate(InsertSQL);
if(FLAG>0){
response.getWriter().write("Congratulation! REgister Success!");
}else{
response.getWriter().write("Sorry!Register Failed!\nPlease Retry it!");
}
}catch(SQLException e){
}
%>


小总结:
不足之处:
•对于数据库的操作做得不够好,没有及时的将不用的资源关闭,应该及时的对那些不用的打开的资源进行关闭操作,释放资源。
•界面效果做的不够好,response输出是先于out的输出的。
•数据库操作显得过于繁琐,应该集成一下,做一个专门处理数据库操作的工具包,以实现代码的良好的复用性!
登录模块
首先是登录界面,login.jsp,鄙人加进去一个超链接(用意是让login.jsp作为门户页面,实现登录注册合二为一的效果,虽然二者并没有合二为一,而且注册界面过于简单了),大家就先凑活看吧。
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>




User Login Page




Welcome to this Login Page!




Please input your message:



Name:

Pswd:







Click me to Register!




然后是对登录信息的处理页,do_login.jsp:
<%@page import="java.sql.DriverManager"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>




Server Page Depend !


Which Pae will be depend by the user's message!


<%
String name=request.getParameter("name");
String password=request.getParameter("password");
%>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/summer", "root", "mysql");
Statement stmt=conn.createStatement();
//desogn the sql statement
String queryNumberSQL="SELECT Name from User where Name='"+name+"' and Password='"+password+"'";
//do the query operation
ResultSet rs=stmt.executeQuery(queryNumberSQL);
boolean flag=false;
if(rs.next()){
flag=true;
session.setAttribute("UserName", name);
}else{
flag=false;
}
%>
<%
if(flag){
%>

<%
}else{
%>

<%
}
%>


对于登陆成功的用户,跳转到登陆成功界面login_success.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>




User Login Success Page!





Login Success!



Welcome <%=session.getAttribute("UserName") %>!

your persional Message is:


<%
out.println("Name:"+session.getAttribute("UserName"));
%>
Click me to log out!


对于登录失败的用户,进行温馨的页面提示,login.failed.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>




Login Failed Page!






Sorry,Login Failed



Click me to login!


大总结:
进步之处:
•使用到了session对象来存储用户登录的姓名信息,实现了页面间的信息的交互
•配合了MySQL,在一定程度上体验了JEE的模式
不足之处:
•代码过于繁冗,复用性不好
•资源利用率不高,使用过的不再使用的资源要及时的进行关闭。虽然java虚拟机有自动的垃圾回收机制,但最好还是养成好的习惯!
•界面控制做的不够好,体验性差,欠缺思考
待改进之处:
•加上复杂一点的用户注册,使用bean的方式做处理比较好
•模块化,使用MVC的概念
•改善界面的权限,防止盗链
•加上其他的诸如上传文件,下载文件功能,丰富网站的功能。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持中文源码网。

相关内容