public String index(HttpSession session,
Model model){
Object login = session.getAttribute(“login”);
if (login != null){
return “index”;
}else {
model.addAttribute(“msg”,“请重新登录”);
return “login”;
}
}
3、为了实现一个登录成功后,显示登录成功的用户名
定位到页面显示用户名信息的地方
thymeleaf的行内写法
取出登录成功用户的用户名即可实现此功能
(注意是.name不是通过get方法获取的)
[[${session.login.name}}]]
4.完成CRUD(Create、Read、Update、Delete)
编码思路
controller层接受用户的请求,将指令传递给业务模型Model(Service+Mapper)进行业务判断、数据库存取,最后根据业务逻辑选择不同的视图
dao层
-
定义操作数据库的service接口,通过service调用mapper完成数据库的增删改查
-
编写Mapper接口,定义操作数据库的方法
-
生成mapper映射文件编写sql语句
-
通过实现类来实现接口定义的功能
2.controller层
-
根据前端页面请求方式,定义对应的映射方法
-
进行简单的判断和跳转处理
查询数据库所有数据,所以返回的是一个User集合(将数据库条目封装成User对象)
4.1 service接口
package com.caq.boot.service;
import com.caq.boot.pojo.User;
import java.util.List;
public interface Crud {
//登录用户
User getAcc(String name, String age);
//查看所有用户
List listAllAcc();
//注册,新建用户
void insertAcc(String name, int age, String email);
//修改用户
void updateAcc(String name, int age, String email, int id);
//按照id查找用户
User selectById(int id);
//根据id删除用户
void deleteUserById(int id);
}
4.2 mapper接口
mapper接口和实体类User对象可通过mybatisX插件进行快速生成
package com.caq.boot.mapper;
import com.caq.boot.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
-
@author Jack
-
@description 针对表【user】的数据库操作Mapper
-
@createDate 2022-03-01 09:08:01
-
@Entity com.caq.boot.pojo.User
*/
@Mapper
public interface UserMapper {
List selectAll();
User selectByNameAndAge(String name,String age);
void insertUser(String name, int age, String email);
void updateUser(String name, int age, String email,int id);
User SelectById(int id);
void deleteUser(int id);
}
4.3 mapper.xml
<?xml version="1.0" encoding="UTF-8"?>update user
set name = #{name},
age = #{age},
email = #{email}
where id = #{id};
delete
from user
where id = #{id}
select *
from user
where name = #{name}
and age = #{age};
select *
from user;
select *
from user
where id = #{id};
INSERT INTO user (name, age, email)
VALUES (#{name}, #{age}, #{email});
4.4 service实现类
package com.caq.boot.service.Impl;
import com.caq.boot.mapper.UserMapper;
import com.caq.b