1. 程式人生 > >spring mvc+spring+mybatis+ajax實現登入驗證

spring mvc+spring+mybatis+ajax實現登入驗證

<h1>Spring Mvc+Spring+Mybatis+Ajax 實現非同步登入的例子,和大家分享一下。</h1><div>login.js程式碼:</div><pre name="code" class="javascript">$(document).ready(function(){
      $("#tname").blur(function(){
    	
         $.ajax({
        	 type:"post",
        	 url:"checklogin.do",
        	 data:{tname:$("#tname").val()},
        	 dataType:"text",
        	 beforeSend:function(){
        		 $("#btn").val("正在提交,請稍等...");
        		 }, 
        	 success:function(data){
                 //判斷輸入是否成功,成功則跳轉   
        		 if("使用者名稱可用!"==data){
        			 $("#tn").addClass("tn");
        			 $("#btn").val("Login");
        			
        		 }else{
        			 $("#tn").removeClass("tn").addClass("tnx");
        			 $("#btn").val("Login"); 
        			 
        			 return false;
        		 }        		           
            }   
         });
 		
      });
      $('#btn').click(function(){
    	  if($("#tname").val()=="請輸入使用者名稱" || $("#tname").val()==""||$("#password").val()=="請輸入密碼"|| $("#password").val()==""){
    		  $("#msg").html("使用者名稱不能為空!");
 			 return false;
 		 }else{
 			$.ajax({
 	        	 type:"post",
 	        	 url:"login.do",
 	        	 data:{tname:$("#tname").val(),tpwd:$("#password").val()},
 	        	 dataType:"text",
 	        	 beforeSend:function(){
 	        		 $("#btn").val("正在提交,請稍等...");
 	        	 }, 
 	        	 success:function(data){
 	                 //判斷輸入是否成功,成功則跳轉   
 	        		 if("使用者名稱可用!"==data){
 	        			 window.location.href="index.jsp";	 
 	        		 }else{
 	        			 $("#key").addClass("key");
 	        			$("#btn").val("Login");
 	        			 return false;
 	        		 }        		           
 	            }   
 	         });
 		 }
      })
  });

login.java程式碼:

<pre name="code" class="java">package com.bky.controller;
 
 
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
 
 
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
 
import org.jboss.weld.servlet.ServletApiAbstraction;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
 
 
import com.bky.model.Add;
import com.bky.service.BaseService;
 
 
@Controller
public class Login {
	@Autowired
	BaseService baseService;
	@RequestMapping("checklogin")	
	public String checkLogin(Add adds,HttpServletRequest request, HttpServletResponse response,Model model) throws IOException {      
		//獲取頁面傳過來的賬號
		String tname=adds.getTname();
		adds.setTname(tname);
		String mes="使用者名稱可用!";
		Add add=baseService.selectByName(adds);
		//判斷使用者名稱是否正確,正確則登入,錯誤則提示重新輸入
		if(add!=null){
			response.setContentType("text/plain;charset=UTF-8");
			response.getWriter().write(mes);
		}else{
			mes="使用者名稱不正確!";
			//設定字符集
			response.setContentType("text/plain;charset=UTF-8");
			response.getWriter().write(mes);
		}
		return null;
	 }
	@RequestMapping("login")	
	public String Login(Add adds,HttpServletRequest request, HttpServletResponse response,Model model) throws IOException {
		  
	     //獲取頁面傳過來的賬號和密碼
		String tname=adds.getTname();
		String tpwd=adds.getTpwd();
		adds.setTname(tname);
		adds.setTpwd(tpwd);
		String mes="使用者名稱可用!";
		Add add=baseService.selectByNP(adds);
		 //判斷使用者名稱及密碼是否正確,正確則登入,錯誤則提示重新輸入
		if(add!=null){
			//設定字符集
			response.setContentType("text/plain;charset=UTF-8");
			response.getWriter().write(mes);
		}else{
			mes="使用者名稱或密碼不正確!";
			response.setContentType("text/plain;charset=UTF-8");
			response.getWriter().write(mes);
		}
		return null;
	 }
}

login.jsp程式碼:

<pre name="code" class="html"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
 
 
 
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <base href="<%=basePath%>">
    
   <title>Login</title>
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<script type="application/x-javascript"> addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); function hideURLbar(){ window.scrollTo(0,1); } </script>
	<meta name="keywords" content="Flat Dark Web Login Form Responsive Templates, Iphone Widget Template, Smartphone login forms,Login form, Widget Template, Responsive Templates, a Ipad 404 Templates, Flat Responsive Templates" />	
	<link href="css/style.css" rel='stylesheet' type='text/css' />
	<script type="text/javascript" src="js/jquery.min.js"></script>
	<script type="text/javascript" src="js/login.js"></script>
  </head>
  
  <body>
    <script>$(document).ready(function(c) {
	$('.close').on('click', function(c){
		$('.login-form').fadeOut('slow', function(c){
	  		$('.login-form').remove();
		});
	});	  
});
</script>
 
	<h1>登入</h1>
	<div class="login-form">
		<div class="close"> </div>
		<div class="head-info">
			<label class="lbl-1"> </label>
			<label class="lbl-2"> </label>
			<label class="lbl-3"> </label>
		</div>
		<div class="clear"> </div>
		<div class="avtar"><img src="images/avtar.png" /></div>
		<form>			
			<div id="tn"><input type="text"    id="tname" name="username" onFocus="this.value = '';" onBlur="if (this.value == '') {this.value = '請輸入使用者名稱';}"></div>
			<div id="key"><input type="password" id="password" name="password"  onFocus="this.value = '';" onBlur="if (this.value == '') {this.value = '請輸入密碼';}"></div>
		</form>
		<div class="signin"><input type="submit" value="Login" id="btn"></div>
	</div>
	<div class="copy-rights">
		<p>Copyright &copy; 2015.Company name All rights reserved.</p>
	</div>
  </body>
</html>

參考文章:

相關推薦

spring mvc+spring+mybatis+ajax實現登入驗證

<h1>Spring Mvc+Spring+Mybatis+Ajax 實現非同步登入的例子,和大家分享一下。</h1><div>login.js程式碼:</div><pre name="code" class="javas

springboot+ajax實現登入驗證

1.基本思路:        前臺登入頁面form表單,用jquery設定表單提交按鈕點選事件,不考慮其他情況,理想化使用者已經輸入了使用者名稱和密碼,然後點選提交,然後呼叫ajax向後臺傳入json資料,後臺將json轉化為使用者自己設定的實體類,然後呼叫後臺函式判斷使用

使用Ajax實現登入驗證

get提交方式: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html; charset=utf-8"%> <!DOCTYPE

Spring MVC 表單控制器實現驗證使用者登入驗證

轉自:http://blog.csdn.net/happyunbound/article/details/8236106 web.xml: <?xmlversion="1.0"encoding="UTF-8"?> <

Spring MVC+Spring+Mybatis實現支付寶支付功能(圖文詳解)

通用 ltr 由於 題解 urn ipa 源代碼 ram abi 前言 本教程詳細介紹了如何使用ssm框架實現支付寶支付功能。本文章分為兩大部分,分別是「支付寶測試環境代碼測試」和「將支付寶支付整合到ssm框架」,詳細的代碼和圖文解釋,自己實踐的時候一定仔細閱讀相關文

spring security實現登入驗證以及根據使用者身份跳轉不同頁面

想關依賴,採用session加redis儲存使用者資訊 <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security

(一)如何使用Spring-security來實現登入驗證功能(XML配置方式)?

先從使用xml的方式來實現使用者的許可權登入 (1)需要在maven工程中加上關於spring-secutity的jar包的依賴 //spring-securityd 有關的依賴 <

Maven + Spring MVCMybatis + MySQL +AngularJS + Bootstrap 實現簡單微博應用(三)前後臺互動

上一節http://blog.csdn.net/shymi1991/article/details/51985371 該章節實現實現使用者註冊、登入、發表微博、評論微博等功能。 1. 配置檔案 spring-mvc.xml <?xml version="1.0" e

Spring MVC +Spring + Mybatis 構建分庫分表總結 SSM搭建以及分庫分表的實現

分庫分表在小型公司很少能遇到也很少使用,畢竟資料量沒有那麼大,當資料量大,所有資料都壓在一張表時,如果單從資料庫的角度考慮是可以分庫分表處理來儲存資料。分庫分表 顧名思義就是根據查詢條件動態的去獲取資料所在的庫和表的位置.例如一個系統有唯一的標識userNum,所有路由規

Spring+Spring MVC+Spring JDBC+MySql實現簡單登入註冊

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.or

spring+springmvc+mybatis+mysql實現登入功能(上)

注:classpath 指的為target資料夾,classpath*為有多個classpath時使用。 1.在idea中建立maven 工程。 具體過程:File -》new project -》選擇maven  勾選create from archetype,選中以w

IDEA下創建Maven項目,並整合使用SpringSpring MVCMybatis框架

varchar bat 連接 pom.xml文件 http mave eat supported 分享 項目創建 本項目使用的是IDEA 2016創建。項目使用Spring 4.2.6,Mybatis3.4.0,Tomcat使用的是Tomcat8,數據庫為MySQL。 首

spring mvc 配置 mybatis sql攔截器

mybatis直接上代碼:mybatis配置中 添加 <property name="plugins"> 如下: <bean id="sqlSessionFactory" class="com.hotent.core.mybatis.SqlSessionFactoryFactoryBea

【java學習】spring mvc 公共dao的實現,定義基本的增刪改查

pri 代碼 部分 lec sse encoding del epo repos 接口類:    package com.blog.db.dao; import com.blog.util.Pagination; import java.util.Lis

Spring MVC利用Hibernate Validator實現後端資料校驗

        吐槽一下,網上坑好多啊!不過採坑才能學習,寫bug能力-1。 JSR 303、JSR 349與Bean Validator         籠統來說,就是Java規定了一套關於驗證器的API,

Spring整合Spring MVCMybatis進行Junit單元測試

我們可以在不啟動服務的情況下,進行單元測試,以便提交出高質量的程式碼。本文以一個小例子,說明在Spring中如何進行單元測試。 一:測試Controller 1:在pom.xml檔案中引入相關依賴 <properties> <!-- 設定專案編碼編碼 --&

手把手教你搭建與整合SSM框架(文末附原始碼)(Spring MVC + Spring + MyBatis

目錄 1.匯入jar包 2.專案目錄總覽 3.配置Spring IoC容器 4.連線資料庫配置 5.整合mybatis環境 5.1配置對映器  5.2建立Mapper介面 5.3建立資料庫表和實體類 6.整合Spring MVC 6.1配置&nb

微服務架構實戰篇(三):Spring boot2.0 + Mybatis + PageHelper實現增刪改查和分頁查詢功能

簡介 該專案主要利用Spring boot2.0 +Mybatis + PageHelper實現增刪改查和分頁查詢功能,快速搭建一套和資料庫互動的專案。 小工具一枚,歡迎使用和Star支援,如使用過程中碰到問題,可以提出Issue,我會盡力完善該Starter 版本基礎

搭建SpringSpring MVCMybatis和Freemarker

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.

spring mvc攔截器,實現統計http請求的後臺執行時間

使用兩種方式,實現攔截http請求的後臺執行時間。 廢話不多說直接上程式碼 /** * Http請求時間統計 * 攔截所有請求 */ public class HttpRquestTimeInterceptor extends HandlerInterceptorAdapter { Threa