(一)SpringMvc设备管理系统全程笔记 -----框架搭建 login登录功能实现
程序员文章站
2022-06-04 19:38:07
...
一,搭建框架
1.导入相关的jar包
2.添加配置文件
3.建包
4.编写实体类User
package com.java1234.model;
public class User {
private Integer id;
private String userName;
private String password;
private String trueName;
private String roleName;
private Integer deprId;
private String deptName;
public Integer getId() {
return id;
}
public void setId(Integer 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 password) {
this.password = password;
}
public String getTrueName() {
return trueName;
}
public void setTrueName(String trueName) {
this.trueName = trueName;
}
public String getRoleName() {
return roleName;
}
public void setRoleName(String roleName) {
this.roleName = roleName;
}
public Integer getDeprId() {
return deprId;
}
public void setDeprId(Integer deprId) {
this.deprId = deprId;
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
}
5.Dao层编写接口类UserDao及它的实现类UserDaoImpl
UserDao
package com.java1234.dao;
import com.java1234.model.User;
public interface UserDao {
public User login(User user);
}
UserDaoImpl
@Repository("userDao")
public class UserDaoImpl implements UserDao{
@Resource
private JdbcTemplate jdbcTemplate;
public User login(User user) {
String sql="select * from t_user where userName=? and password=?";
final User resultUser=new User();
jdbcTemplate.query(sql, new Object[] {user.getUserName(),user.getPassword()},new RowCallbackHandler() {
public void processRow(ResultSet rs) throws SQLException {
// TODO 自动生成的方法存根
resultUser.setId(rs.getInt("id"));
resultUser.setUserName(rs.getString("userName"));
resultUser.setPassword(rs.getString("password"));
resultUser.setRoleName(rs.getString("roleName"));
}});
return resultUser;
}
}
在这里用到的是jdbcTemplate的query方法执行查询操作
6.Service层编写接口UserService 及它的实现类UserServiceImpl
UserService
package com.java1234.service;
import com.java1234.model.User;
public interface UserService {
public User login(User user);
}
UserServiceImpl
package com.java1234.service.impl;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.java1234.dao.UserDao;
import com.java1234.model.User;
import com.java1234.service.UserService;
@Service("userService")
public class UserSerivceImpl implements UserService{
@Resource
private UserDao userDao;
public User login(User user) {
// TODO 自动生成的方法存根
return userDao.login(user);
}
}
7.Controller层编写UserController
package com.java1234.controller;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.java1234.model.User;
import com.java1234.service.UserService;
@Controller//控制层
@RequestMapping("/user")//请求映射,直白点就是浏览器地址栏项目后有/user
public class UserController {
@Resource
private UserService userService;
@RequestMapping("/login")
public String login(User user,HttpServletRequest request) {
User resultUser=userService.login(user);//通过前台接受的数据
if(resultUser.getId()==null) {
request.setAttribute("user", user);
request.setAttribute("errorMsg", "用户名或密码错误");
return "login";
}else {
HttpSession session = request.getSession();
session.setAttribute("currentUser", resultUser);
return "redirect:/main.jsp";
}
}
}