Spring+Spring MVC+Spring JDBC+MySql實現(xiàn)簡單登錄注冊

Model層:

package com.model;

public class User {
    private int id;
    private String name;
    private String password;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }

}

UserDao:

package com.userdao;

public interface UserDao {
        public boolean check(String name,String passwod);
        public void addUser(String name,String password);
        public boolean unit(String name);
}

UserDaoImpl:

package com.userdaoimpl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import com.userdao.UserDao;

@Repository
public class UserDaoImpl implements UserDao{

    @Autowired
    JdbcTemplate jdbcTemplate;

    public JdbcTemplate getJdbcTemplate() {
        return jdbcTemplate;
    }

    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

    @Override
    public boolean check(String name, String passwod) {
        String sql = "select count(id) from u2 where name=? and password=?";
        int i  = jdbcTemplate.queryForInt(sql, new Object[]{name,passwod});
        if (i>0) {
            return true;
        } else {
            return false;
        }
    }

    @Override
    public void addUser(String name, String password) {
            String sql = "insert into u2 (name,password) values(?,?)";
            jdbcTemplate.update(sql,new Object[]{name,password});
    }

    @Override
    public boolean unit(String name) {
        String sql = "select count(id) from u2 where name=?";
        int rs = jdbcTemplate.queryForInt(sql,new Object[]{name});
        if (rs>0) {
            return true;
        }
        return false;
    }

}

Controller層:

package com.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.userdaoimpl.UserDaoImpl;

@Controller
public class LoginController {

    @Autowired
    UserDaoImpl userDaoImpl;

    public UserDaoImpl getUserDaoImpl() {
        return userDaoImpl;
    }

    public void setUserDaoImpl(UserDaoImpl userDaoImpl) {
        this.userDaoImpl = userDaoImpl;
    }

    @RequestMapping("/login")
    public String login(String name,String password,Model model) {
            boolean rs = userDaoImpl.check(name, password);
            if (rs==true) {
                model.addAttribute("name",name);
                return "index";
            } 
            return "error";
    }
    @RequestMapping("/register")
    public String register(String name,String password,Model model) {
        boolean rs = userDaoImpl.unit(name);
        if (rs==false) {
            userDaoImpl.addUser(name, password);
            return "login";
        } 
        return "error1";
    }

}

Spring配置文件:

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
    xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
    ">
    <context:component-scan base-package="com" />
     <bean id="dataSource"  
        class="org.springframework.jdbc.datasource.DriverManagerDataSource">  
        <property name="driverClassName"  
            value="com.mysql.jdbc.Driver">  
        </property>  
        <property name="url"  
            value="jdbc:mysql://localhost:3306/mydata">  
        </property>  
        <property name="username" value="root"></property>  
        <property name="password" value="root"></property>  
    </bean>  

    <bean id="jdbcTemplate"  
        class="org.springframework.jdbc.core.JdbcTemplate" abstract="false"  
        lazy-init="false">  
        <property name="dataSource">  
            <ref bean="dataSource" />  
        </property>  
    </bean>  

    <bean
        class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />

    <!-- 配置視圖解析器,將ModelAndView及字符串解析為具體的頁面 -->
    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/" />
        <property name="suffix" value=".jsp" />
    </bean>

    </beans>

Web.XMl:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  <display-name></display-name> 
  <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
  </welcome-file-list>
    <servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
  <!-- 統(tǒng)一字符編碼 -->
  <filter>
    <filter-name>encoding</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
  </filter>

  <filter-mapping>
    <filter-name>encoding</filter-name>
    <url-pattern>*.do</url-pattern>
  </filter-mapping>
</web-app>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末席赂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蓬推,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)澡腾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進(jìn)店門沸伏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人动分,你說我怎么就攤上這事毅糟。” “怎么了澜公?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵姆另,是天一觀的道長。 經(jīng)常有香客問我玛瘸,道長蜕青,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任糊渊,我火速辦了婚禮右核,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘渺绒。我一直安慰自己贺喝,他們只是感情好菱鸥,可當(dāng)我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躏鱼,像睡著了一般氮采。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上染苛,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天鹊漠,我揣著相機(jī)與錄音,去河邊找鬼茶行。 笑死躯概,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的畔师。 我是一名探鬼主播娶靡,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼看锉!你這毒婦竟也來了姿锭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤伯铣,失蹤者是張志新(化名)和其女友劉穎呻此,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體懂傀,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡趾诗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蹬蚁。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡郑兴,死狀恐怖犀斋,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情情连,我是刑警寧澤叽粹,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站却舀,受9級特大地震影響虫几,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜挽拔,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一辆脸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧螃诅,春花似錦啡氢、人聲如沸状囱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亭枷。三九已至,卻和暖如春搀崭,著一層夾襖步出監(jiān)牢的瞬間叨粘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工瘤睹, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留升敲,地道東北人。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓默蚌,卻偏偏與公主長得像冻晤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子绸吸,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容

  • Spring Web MVC Spring Web MVC 是包含在 Spring 框架中的 Web 框架鼻弧,建立于...
    Hsinwong閱讀 22,435評論 1 92
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)锦茁,斷路器攘轩,智...
    卡卡羅2017閱讀 134,701評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,850評論 6 342
  • 1、Spring MVC請求流程 (1)初始化:(對DispatcherServlet和ContextLoderL...
    拾壹北閱讀 1,949評論 0 12
  • 看到三只小貓咪码俩,很是可愛一聽主人說媽媽在生下來它們?nèi)龓滋炀筒辉诹硕劝铮魅芜€說貓咪最愛干凈,籠子里有便盆稿存,一只小貓咪蹣...
    愛蜜莉閱讀 222評論 0 0