Java Spring登錄練習(xí)詳解
更新時間:2021年10月12日 11:07:47 作者:每日小新
這篇文章主要介紹了Java編程實現(xiàn)spring簡單登錄的練習(xí),具有一定參考價值,需要的朋友可以了解下,希望能夠給你帶來幫助
編寫Massage類和User類(方便后面使用)
- Massage類:主要用來表示用戶登錄情況的反饋
- User類:作為查詢到的用戶模板
//---------------------Massage-----------------------
public class Massage {
//登錄成功狀態(tài)碼和提示信息
//此處省略set/get/toString/構(gòu)造器這些方法
private int logincode;
private String loginmsg;
}
//-------------------User.java-----------------------
public class User{
//用戶名和密碼此處省略set/get/toString/構(gòu)造器這些方法
private String uname;
private String upsw;
}
此處省略set/get/toString/構(gòu)造器這些方法,記得生成一下~
三層內(nèi)容
- UserController.java
- UserService.java
- UserDao.java
//-----------------UserDao.java----------------------
@Repository
public class LoginDao {
//定義用戶名和密碼
private final String UNAME="admin";
private final String UPSW="admin";
//通過用戶名查詢
public User bynameselectpsw(String name){
//判讀是否是空值
if(name!=null && name.length()!=0 && UNAME.equals(name)){
User user=new User();
user.setUname(UNAME);
user.setUpsw(UPSW);
return user;
}
return null;
}
}
//-----------------UserService.java------------------
@Service
public class LoginService {
@Autowired
LoginDao dao;
//編寫邏輯層對密碼和用戶名的判斷
public Massage loginCheck(String uname,String psw){
Massage msg=new Massage();
//判斷密碼和賬號是否為空
if(uname==null || uname.length()==0){
msg.setLoginmsg("用戶名不能為空");
msg.setLogincode(0);
return msg;
}
if(psw==null || psw.length()==0){
msg.setLoginmsg("密碼不能為空");
msg.setLogincode(0);
return msg;
}
//判斷是否有此用戶
User user=dao.bynameselectpsw(uname);
System.out.println(user);
if(user==null){
msg.setLoginmsg("無此用戶~");
msg.setLogincode(0);
return msg;
}
//對密碼進行判斷
if(user.getUpsw()!=psw){
msg.setLoginmsg("密碼不正確~");
msg.setLogincode(0);
return msg;
}
//以上都沒觸發(fā)則登錄成功
msg.setLoginmsg("登錄成功~");
msg.setLogincode(1);
return msg;
}
}
//-----------------UserController.java---------------
@Controller
public class LoginController {
@Autowired
LoginService service;
public Massage controller(String name, String psw){
Massage msg=service.loginCheck(name,psw);
return msg;
}
}
以上便是主要內(nèi)容了,就差連接數(shù)據(jù)庫與前端頁面
編寫測試文件
public class LoginTest {
@Test
public void test(){
//獲取核心配置文件
ApplicationContext app=new ClassPathXmlApplicationContext("spring.xml");
//獲取Controller對象
LoginController lg= app.getBean("loginController",LoginController.class);
// Massage msg=lg.controller("admin","admin");
Massage msg=lg.controller("","");
System.out.println(msg);
}
}
結(jié)果展示:密碼和賬號為空時

結(jié)果展示:密碼為空時

結(jié)果展示:登陸成功~

pom.xml和spring.xml配置
<!-- 添加Spring框架的核心依賴 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.4.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
一定要開啟自動掃描:在配置文件spring.xml中添加語句:
<context:component-scan base-package="com.yjxxt"></context:component-scan>
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Java Socket編程(五) 簡單的WEB服務(wù)器
Java Socket編程(五) 簡單的WEB服務(wù)器...2006-12-12
SpringBoot切面攔截@PathVariable參數(shù)及拋出異常的全局處理方式
這篇文章主要介紹了SpringBoot切面攔截@PathVariable參數(shù)及拋出異常的全局處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
在SpringBoot中無縫整合Dubbo的實現(xiàn)過程
微服務(wù)架構(gòu)已經(jīng)成為現(xiàn)代應(yīng)用開發(fā)的熱門趨勢,而Dubbo作為一款強大的分布式服務(wù)框架,與Spring?Boot的結(jié)合是構(gòu)建高性能微服務(wù)應(yīng)用的理想選擇,本文將詳細介紹如何在SpringBoot中無縫整合Dubbo,需要的朋友可以參考下2024-01-01

