JavaWeb簡單用戶登錄注冊實例代碼(有驗證碼)_第1頁
JavaWeb簡單用戶登錄注冊實例代碼(有驗證碼)_第2頁
JavaWeb簡單用戶登錄注冊實例代碼(有驗證碼)_第3頁
JavaWeb簡單用戶登錄注冊實例代碼(有驗證碼)_第4頁
JavaWeb簡單用戶登錄注冊實例代碼(有驗證碼)_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 login)jar包+ +MysqlLoginwindow.onload=function()document.getElementById(img).onclick=function()this.src = /daydayup/checkCodeServlet?time + new Date().getTime();function reg() window.open(register.jsp);divcolor: red;戶名密碼驗證碼$requestScope.login_error$requestScope.checkcode_error Title戶名密碼$requestScope

2、.register_success$requestScope.register_error Title%- $requestScope.user,歡迎您 -%, 歡迎您package cn.code.util;import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;impo

3、rt java.util.Properties;/* JDBC具類 使連接池*/public class JDBCUtils private static DataSource ds;statictry /加載配置件Properties pro = new Properties();/使ClassLoader加載配置件,獲取字節(jié)輸流InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream(perties);pro.load(is);/初始化連接池對象ds = DruidDataSourceFactory.crea

4、teDataSource(pro); catch (Exception e) e.printStackTrace();/* 獲取連接池對象*/public static DataSource getDataSource()return ds;/* 獲取連接connection對象*/public static Connection getConnection() throws SQLException return ds.getConnection();package cn.code.domain;/*戶的實體類*/public class User private int id ;priva

5、te String username;private String password;public int getId() return id;public void setId(int id) this.id = id;public String getUsername() return username;public void setUsername(String username) this.username = username;public String getPassword() return password;public void setPassword(String pass

6、word) this.password = password;Overridepublic String toString() return User +id= + id +, username= + username + +, password= + password + +;Daologinadd package cn.code.dao;import cn.code.domain.User;import cn.code.util.JDBCUtils;import org.springframework.dao.DataAccessException;import org.springfra

7、mework.jdbc.core.BeanPropertyRowMapper;import org.springframework.jdbc.core.JdbcTemplate;import java.sql.Connection;import java.sql.SQLException;import java.sql.Statement;/* 操作數(shù)據(jù)庫中User表的類*/public class UserDao /聲明JDBCTemplate對象,以便法公private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSo

8、urce();/* 登錄法* param loginUser 前只有戶名和密碼* return user包含戶全部數(shù)據(jù)*/public User login(User loginUser) /編寫SQLString sql = select * from user where username = ? and password = ?;/調(diào)query法try User user = template.queryForObject(sql,new BeanPropertyRowMapper(User.class),loginUser.getUsername(), loginUser.getPas

9、sword();return user; catch (DataAccessException e) e.printStackTrace();return null;/* 注冊法* param user 前只包含戶名和密碼* return 是否注冊成功*/public boolean add(User user)/編寫SQLString sql = insert into user (username,password) VALUES( + user.getUsername() + , + user.getPassword() + );boolean flag = false;int num

10、= 0;try /創(chuàng)建數(shù)據(jù)庫連接Connection conn = JDBCUtils.getConnection();Statement state = null;flag = false;num = 0;state = conn.createStatement();num = state.executeUpdate(sql); catch (SQLException e) e.printStackTrace();if(num 0) flag = true;return flag;package cn.code.servlet;import cn.code.dao.UserDao;impor

11、t cn.code.domain.User;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.io.IOException;Web

12、Servlet(/loginServlet)public class LoginServlet extends HttpServlet protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException /設(shè)置字符編碼request.setCharacterEncoding(utf-8);/獲取參數(shù)String username = request.getParameter(username);String password =

13、request.getParameter(password);String checkcode = request.getParameter(checkcode);/獲取成的驗證碼HttpSession session = request.getSession();String checkcode_session =(String) session.getAttribute(checkcode_session);/防驗證碼存儲 刪除Session中存儲的驗證碼session.removeAttribute(checkcode_session);/判斷驗證碼是否正確if(checkcode_se

14、ssion != null & checkcode_session.equalsIgnoreCase(checkcode)/equalsIgnoreCase忽略寫的較/驗證碼正確User loginUser = new User();loginUser.setUsername(username);loginUser.setPassword(password);User user = new UserDao().login(loginUser);if(user != null)/ 戶名以及密碼正確/ 登錄成功/ 存儲戶信息session.setAttribute(user,username);

15、/ 因為是兩次請求,所以Session/ 重定向到success.jspresponse.sendRedirect(request.getContextPath()+/success.jsp);else/ 戶名及密碼錯誤/ 登錄失敗/ 存儲提信息到requestrequest.setAttribute(login_error, 戶名或密碼錯誤);/ 轉(zhuǎn)發(fā)到登錄頁request.getRequestDispatcher(/login.jsp).forward(request,response);else/驗證碼不正確/存儲提信息到requestrequest.setAttribute(check

16、code_error, 驗證碼錯誤);/轉(zhuǎn)發(fā)到登錄頁request.getRequestDispatcher(/login.jsp).forward(request,response);protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException this.doPost(request, response);package cn.code.servlet;import cn.code.dao.UserDao;import cn

17、.code.domain.User;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;WebServlet(/registerServlet)public class Regi

18、sterServlet extends HttpServlet protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding(utf-8);String username = request.getParameter(username);String password = request.getParameter(password);User registerUser

19、 = new User();registerUser.setUsername(username);registerUser.setPassword(password);boolean flag = new UserDao().add(registerUser);if(flag) request.setAttribute(register_success, 注冊成功);request.getRequestDispatcher(/register.jsp).forward(request,response);elserequest.setAttribute(register_error,賬號以被注

20、冊,注冊失敗);request.getRequestDispatcher(/register.jsp).forward(request,response);protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException this.doPost(request,response);package cn.code.checkcode;import javax.imageio.ImageIO;import javax.servlet.

21、ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.awt.*;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;/簡易驗證碼

22、WebServlet(/checkCodeServlet)public class CheckCodeServlet extends HttpServlet protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException int width = 100;int height = 50;/創(chuàng)建對象,在內(nèi)存中代表圖(驗證碼圖對象)BufferedImage image = new BufferedImage(width,height,BufferedImage.TYPE_INT_BGR);/美化圖/填充背景Graphics g = image.getGraphics();/畫筆對象g.setColor(Color.ORANGE);g.fillRect(0,0,width,height);/畫邊框g.setColor(Color.BLUE);g.drawRect(0,0,width-1,height-1);String str = QWERTYUIOPASDFGHJKLZXCVBNM1234567890zxcvbnmlkjhgfdsaqwerty

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論