springboot项目员工管理系统

1.找一个免费的前端模板bootstarp

1.1导入静态资源

在这里插入图片描述

1.2首页配置

在已经声明的自己扩展的springmvc中,通过addViewControllers方法的添加

@Configuration
public class MyMvcConfig implements WebMvcConfigurer {
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName("index");
        registry.addViewController("/index.html").setViewName("index");
        registry.addViewController("/main.html").setViewName("dashboard");
    }
}

1.3首先我们的静态资源无法生效,所有页面的静态资源需要使用thymeleaf接管@{}

首先需要添加
<html lang="en" xmlns:th="http://www.thymeleaf.org">

<link href = "xxx/xxx.xxx" rel="styleheet">
			↓	↓	↓	↓	
<link th:href = "@{xxx/xxx.xxx}" rel="styleheet">
包括 src中 需要编程 th:src="@{xxx/xxx.xxx}"

同时注意 需要在properties或者yml中添加,关闭模板引擎的缓存
spring:
thymeleaf:
cache: false

2.伪造数据库

2.1创建一个pojo

首先我们不用lombok插件,简便但缺少了可读性
创建一个pojo
里面放入我们需要的对象

2.2通过map伪造数据,dao中获取

以EmployeeDao 为例
首先获取其他dao中的属性
声明一个数据集合,赋值,并且添加增删改查的操作,
增是map.put(k,v)
删是map的remove通过id
查询一个员工是 map.get(id)
查是通过values()所有map集合返回

@Repository
public class EmployeeDao {
    //模拟数据库中员工表的数据
    static private Map<Integer, Employee> employees;
    @Autowired
    private DepartmentDao departmentDao;

    static {
        employees = new HashMap<>();//创建一个员工表
        employees.put(1, new Employee(1, "zsr", "1234@qq.com", 1, new Department(1, "技术部"), new Date()));
        employees.put(2, new Employee(2, "lyr", "1345@qq.com", 1, new Department(2, "市场部"), new Date()));
        employees.put(3, new Employee(3, "gcc", "5665@qq.com", 0, new Department(3, "调研部"), new Date()));
        employees.put(4, new Employee(4, "zyx", "7688@qq.com", 1, new Department(4, "后勤部"), new Date()));
        employees.put(5, new Employee(5, "zch", "8089@qq.com", 1, new Department(5, "运营部"), new Date()));
    }

    //主键自增
    private static Integer initialID = 6;

    //增加一个员工
    public void addEmployee(Employee employee) {
        if (employee.getId() == null)
            employee.setId(initialID++);
        employee.setDepartment(departmentDao.getDepartmentById(employee.getDepartment().getId()));
        employees.put(employee.getId(), employee);
    }

    //查询全部员工信息
    public Collection<Employee> getAllEmployees() {
        return employees.values();
    }

    //通过id查询员工
    public Employee getEmployeeByID(Integer id) {
        return employees.get(id);
    }

    //通过id删除员工
    public void deleteEmployeeByID(int id) {
        employees.remove(id);
    }
}

3.页面国际化

3.1确保properties的编码为UTF-8

3.2i18n,写入properties文件中英文

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.yml中配置找到我们的配置文件真实位置

spring:
messages:
basename: i18n.login

4.页面中需要的格式 消息表达式#{}

在这里插入图片描述
使用的是#{}
变量需要使用${}

5.国际化解析器在config中,学着auto自动装配中的照猫画虎

在这里插入图片描述

public class MyLocaleResolver implements LocaleResolver {
	//解析地区器
    @Override
    public Locale resolveLocale(HttpServletRequest request) {
        //获取请求中的国际化参数
        String language = request.getParameter("l");
        //默认的地区
        Locale locale = Locale.getDefault();
        //如果请求的链接参数不为空,携带了国际化参数
        if (!StringUtils.isEmpty(language)) {
            String[] split = language.split("_");//zh_CN(语言_地区)
            locale = new Locale(split[0], split[1]);
        }
        return locale;
    }

    @Override
    public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {
    }
}

6.将自己的组件配置到spring容器中

在这里插入图片描述

4.实现细节,并没有什么难度所以省略

4.1用户登录

4.2拦截器

//处理器拦截器
public class LoginHandlerInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //用户登录成功后,应该有自己的session
        Object session = request.getSession().getAttribute("LoginUser");
        if (session == null) {
            request.setAttribute("msg", "权限不够,请先登录");
            request.getRequestDispatcher("/index.html").forward(request, response);
            return false;
        } else {
            return true;
        }
    }
}

在这里插入图片描述

4.3404处理等

4.4CRUD

SpringBoot员工管理系统是使用SpringBoot框架和MyBatis框架整合开发的一个完整的员工管理系统。该系统实现了登录验证、国际化、CRUD等操作。通过学习这个项目,你可以掌握SpringBoot框架、MyBatis框架、Bootstrap框架、Thymeleaf模板引擎以及Lombok插件等技术。这个项目的开发教程基于狂神老师的SpringBoot教程,你可以在该教程的第20集中找到相关内容。SpringBoot的特点是集成了SpringSpringMVC,简化了配置工作,同时提供了更友好的业务逻辑层处理[3]。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [狂神Spring Boot 员工管理系统 超详细完整实现教程(小白轻松上手~)](https://blog.csdn.net/qq_45173404/article/details/108934414)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [手把手教你基于【SpringBoot+MyBatis】实现员工管理系统‍【附完整源码】](https://blog.csdn.net/weixin_44985880/article/details/120051367)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只小小狗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值