Java+MySQL实现简单登录功能.docx
《Java+MySQL实现简单登录功能.docx》由会员分享,可在线阅读,更多相关《Java+MySQL实现简单登录功能.docx(16页珍藏版)》请在冰豆网上搜索。
Java+MySQL实现简单登录功能
packagedao;
importjava。
sql.Connection;
importjava。
sql。
PreparedStatement;
importjava。
sql。
ResultSet;
importjava。
sql.SQLException;
importentity。
User;
importutils.DataBaseUtil;
publicclassUserDao{
publicUserlogin(Stringusername,Stringpwd){
Useruser=null;
//获取数据库连接
Connectionconn=DataBaseUtil。
getConnection();
Stringsql="select*fromtb_userwhereusername=?
andpassword=?
";
try{
PreparedStatementps=conn.prepareStatement(sql);
ps.setString(1,username);
ps.setString(2,pwd);
//用ResultSet存储查到的内容
ResultSetrs=ps.executeQuery();
if(rs。
next()){//查到了数据
user=newUser();
user。
setUsername(rs。
getString("username"));//username代表的是tb_user表的username字段
user。
setPassword(rs.getString("password"));
user.setSex(rs.getString("sex”));
user.setPhone(rs.getString("phone”));
user。
setEmail(rs。
getString(”email"));
}
//将用户名和密码带入到占位符?
中
}catch(SQLExceptione){
//TODOAuto—generatedcatchblock
e.printStackTrace();
}
returnuser;
}
}
packageservlet;
importjava.io。
IOException;
importjavax。
servlet.ServletException;
importjavax.servlet。
annotation。
WebServlet;
importjavax。
servlet.http.HttpServlet;
importjavax.servlet。
http。
HttpServletRequest;
importjavax。
servlet。
http.HttpServletResponse;
importdao.UserDao;
importentity.User;
/**
*ServletimplementationclassLoginServlet
*/
@WebServlet(”/LoginServlet")//门牌号
publicclassLoginServletextendsHttpServlet{
privatestaticfinallongserialVersionUID=1L;
/**
*@seeHttpServlet#doGet(HttpServletRequestrequest,HttpServletResponseresponse)
*/
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
//TODOAuto-generatedmethodstub
response.getWriter().append("Servedat:
”)。
append(request。
getContextPath());
}
/**
*@seeHttpServlet#doPost(HttpServletRequestrequest,HttpServletResponseresponse)
*/
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
//设置字符编码
request.setCharacterEncoding(”utf—8”);
//获取页面的账号和密码
Stringusername=request.getParameter(”username");//对应前台name属性
Stringpassword=request.getParameter("pwd”);
System。
out.println(”账号:
”+username+”,”+"密码:
”+password);
UserDaodao=newUserDao();
Useruser=dao。
login(username,password);
//判断用户名是否正确
if(user!
=null){//跳转登陆成功的页面
//将user对象通过session传递到前台页面
request。
getSession()。
setAttribute("user”,user);
request.getRequestDispatcher("success.jsp”).forward(request,response);
}else{//跳失败页面
request.getRequestDispatcher("failed.jsp").forward(request,response);
}
}
}
packageutils;
importjava。
sql.Connection;
importjava.sql。
DriverManager;
importjava.sql.SQLException;
/**
*
*数据库联连接工具类
*/
publicclassDataBaseUtil{
publicstaticConnectiongetConnection(){
Connectionconn=null;
//获取驱动
try{
Class。
forName("com.mysql。
jdbc.Driver”);
Stringurl="jdbc:
mysql:
//localhost:
3306/test?
useUnicode=true&characterEncoding=utf8”;
conn=DriverManager。
getConnection(url,"root”,"123456”);
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e。
printStackTrace();
}
returnconn;
}
/**
*数据库关闭连接方法
*@paramconn
*/
publicstaticvoidcloseConnection(Connectionconn){
try{
conn。
close();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
packageentity;
/**
*用户类
*@authorAdministrator
*
*/
publicclassUser{
privateintid;
privateStringusername;
privateStringpassword;
privateStringsex;
privateStringphone;
privateStringemail;
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetUsername(){
returnusername;
}
publicvoidsetUsername(Stringusername){
this。
username=username;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetPassword(Stringpassword){
this。
password=password;
}
publicStringgetSex(){
returnsex;
}
publicvoidsetSex(Stringsex){
this。
sex=sex;
}
publicStringgetPhone(){
returnphone;
}
publicvoidsetPhone(Stringphone){
this.phone=phone;
}
publicStringgetEmail(){
returnemail;
}
publicvoidsetEmail(Stringemail){
this。
email=email;
}
}
packageservlet;
importjava。
io。
IOException;
importjava.util.Enumeration;
importjavax。
servlet。
ServletContext;
importjavax.servlet.ServletException;
importjavax.servlet。
annotation。
WebServlet;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http。
HttpServletRequest;
importjavax。
servlet.http.HttpServletResponse;
importjavax.servlet.http。
HttpSession;
importjavax。
servlet.http。
HttpSessionContext;
importorg.apache。
catalina.connector。
Request;
/**
*ServletimplementationclassLogout
*/
@WebServlet("/Logout")
publicclassLogoutextendsHttpServlet{
privatestaticfinallongserialVersionUID=1L;
/**
*@seeHttpServlet#doGet(HttpServletRequestrequest,HttpServletResponseresponse)
*/
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
//TODOAuto—generatedmethodstub
HttpSessionsession=request。
getSession();
session.removeAttribute("user");//消除服务器中存放用户的session
request。
getRequestDispatcher(”login。
jsp”).forward(request,response);
}
/**
*@seeHttpServlet#doPost(HttpServletRequestrequest,HttpServletResponseresponse)
*/
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
//TODOAuto—generatedmethodstub
}
}
Login.jsp
<%@pagelanguage="java"contentType="text/html;charset=utf—8”
pageEncoding="utf—8"%>
〈!
DOCTYPEhtmlPUBLIC"-//W3C//DTDHTML4.01Transitional//EN””http:
//www。
w3。
org/TR/html4/loose.dtd”>
〈head>
〈title>Purple_loginformWebsiteTemplate|Home:
:
w3layouts
css”rel=”stylesheet”type=”text/css"media=”all"/〉
〈metahttp—equiv="Content—Type”content=”text/html;charset=utf—8"/>
〈metaname="viewport"content="width=device-width,initial—scale=1,maximum-scale=1">
〈!
——-—〉
〈script〉var__links=document。
querySelectorAll('a’);function__linkClick(e){parent。
window。
postMessage(this.href,’*’);};for(vari=0,l=__links。
length;igetAttribute('data-t')==’_blank'){__links[i].addEventListener('click’,__linkClick,false);}}〈/script〉
js”〉〈/script〉