在之前文章基础上编写springboot整合mybatis实现简单CRUD和springboot+thymeleaf模板引擎实现国际化
一、UserMapper.java
//登录
User userLogin(@Param("email")String email, @Param("password")String password);
二、UserMapper.xml
<select id="userLogin" resultType="User">
select * from user where email = #{email} and password = #{password}
</select>
三、UserController.java
这里就不写service层了,直接调用持久层实现效果即可。
package com.ltl.controller;
import com.ltl.domain.User;
import com.ltl.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;
/**
* @author LTL
* @date 2021-06-24 21:44
*/
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
UserMapper userMapper;
//用户登录
@PostMapping("/login")
public String login(@RequestParam("email") String email,
@RequestParam("password")String password,
HttpSession session, Map<String,Object> map){
//注意数据库表里的用户邮箱和密码不要有一样的,否则会返回多个用户导致报错
User user = userMapper.userLogin(email,password);
if(user!=null){
session.setAttribute("loginUser",user.getUsername());
//这里的main.html只是达到隐藏真实登录成功的页面名称,重定向到/main.html请求
return "redirect:/main.html";
}else{
//登陆失败
map.put("msg","邮箱密码错误");
return "login";
}
}
四、MyMvcConfig.java
package com.ltl.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* @author LTL
* @date 2021-06-24 14:49
*/
@Configuration
public class MyMvcConfig implements WebMvcConfigurer {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/").setViewName("login");
registry.addViewController("/index").setViewName("login");
//登录成功的跳转到页面dashboard.html
registry.addViewController("/main.html").setViewName("dashboard");
}
}
五、login.html
六、运行
登录成功跳转页面