SpringBoot-员工管理系统(1)

目录

一、首页配置

二、国际化

2.1 配置文件编写

 2.2 使配置文件生效

2.3 配置页面国际化值 

2.4 实现根据按钮自动切换中英文

三、登录+拦截器


一、首页配置

1、所有页面的静态资源都需要用thymeleaf接管

2、url使用@{}格式

二、国际化

2.1 配置文件编写

1、在resources资源文件下新建一个i18n目录,存放国际化配置文件

2、建立一个login.properties文件,再建一个login_zh_CN.properties:此时IDEA自动识别我们要做国际化操作,文件夹会变

3、在这基础上,再建一个文件

4、开始编写配置,依次添加页面需要国际化的内容即可

 2.2 使配置文件生效

配置messages的路径

2.3 配置页面国际化值 

thymeleaf对于message的取值操作是:#{}

2.4 实现根据按钮自动切换中英文

 如果想点击链接让我们的国际化资源生效,就需要让我们自己的Locale生效!

自己去写一个LocaleResolver,在链接上携带语言和地区信息(如zh_CN)

注意:thymeleaf携带参数,不使用问号,而是用括号

 写一个处理的组件:MyLocaleResolver(实现LocaleResolver,则表示它是一个LocaleResolver)

package com.liang.config;import org.springframework.util.StringUtils;
import org.springframework.web.servlet.LocaleResolver;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Locale;public class MyLocaleResolver implements LocaleResolver {//解析请求@Overridepublic Locale resolveLocale(HttpServletRequest request) {//获取请求中的语言参数String language = request.getParameter("l");Locale locale = Locale.getDefault();//没有就使用默认的if(!StringUtils.isEmpty(language)){//语言,地区String[] split = language.split("_");locale = new Locale(split[0], split[1]);}return locale;}@Overridepublic void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) {}
}

为了能够生效,需要配置这个组件!

在MyMvcConfig下添加bean

三、登录+拦截器

 1、前端页面

2、编写Controller

3、addViewController,更接近实际业务操作

 4、实现拦截器

实现了HandlerInterceptor,它就是一个拦截器

重写preHandle方法,在方法中编写拦截的逻辑

 5、使自定义的拦截器生效

注意:这里路径的/,代表的是resources资源文件下的子文件

也就是说"/index.html"就是resources/template/index.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/60060.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git - 命令杂谈 - reset、revert和clean

记录一些平时常用的Git命令 reset # 操作HEAD的指向,修改当前分支仓库区提交树 git reset option commitID--soft,不碰索引区和工作区,只修改HEAD指向--mixed,不碰工作区,重置索引区,修改HEAD指向--hard&a…

JavaSE:初识Java(学习笔记)

java是高级语言的面向对象语言 .[最贴近生活.最快速分析和设计程序] 一,计算机语言发展历史 二,Java体系结构 1,JavaSE(Java Standard Edition) 标准版,定位在个人计算机上的应用 这个版本是Jav…

ThreadLocal 的概念及使用场景(登录状态验证)

一、ThreadLocal 的概念 ThreadLocal 是 Java 中用于解决多线程并发问题的类。它通过为每个线程提供单独的变量副本,使得每个线程都可以对这些变量进行独立的访问和修改,而不影响其他线程中的相同变量。 简单来说,ThreadLocal 为每个使用它…

Android——多线程、线程通信、handler机制

Android——多线程、线程通信、handler机制 模拟网络请求&#xff0c;会阻塞主线程 private String getStringForNet() {StringBuilder stringBuilder new StringBuilder();for (int i 0; i < 100; i) {stringBuilder.append("字符串" i);}try {Thread.sleep(…

Jumpserver

概述 一款开源的堡垒机&#xff0c;可使系统的管理员和开发人员安全的连接到企业内部服务器上执行操作&#xff0c;是一款非常安全的远程连接工具。 4A 身份验证授权控制账号管理安全审计 安装 [rootjumpserver project]# tar -xf jumpserver-offline-installer-v2.28.6-amd64…

鸿蒙ArkTS和TS有什么区别?

Ark是强类型&#xff0c;打包编译的时候会保留类型。提高程序运行效率。 TS 支持类型校验&#xff0c;但是并不严格&#xff0c;支持any、unknown 这些不明确的类型。编译后其实jsd.ts,js文件不保留类型。 ArkTS基本禁用了动态类型 比如对象不能随意添加或者删除某些属性&am…

【专题】2024年全球生物医药交易报告汇总PDF洞察(附原数据表)

原文链接&#xff1a;https://tecdat.cn/?p38191 在当今复杂多变的全球经济环境下&#xff0c;医药行业正面临着诸多挑战与机遇。2024 年&#xff0c;医药行业的发展态势备受关注。 一方面&#xff0c;全球生物医药交易活跃&#xff0c;2021 - 2023 年的交易中&#xff0c;已…

联通自动登录联通APP获取ck脚本

脚本的主要功能是自动登录联通APP并生成相关的 `token_online`、`appid`、`ecs_token` 和 `access_token` 参数,并根据配置将这些参数保存到青龙面板的环境变量中。此外,还支持沃畅游的自动登录,并通过微信推送(wxpusher)发送消息通知。 1. 主要功能 - 联通APP登录:通过…

统信UOS开发环境支持rust

集成了Rust编译器和包管理工具,支持系统级编程、网络应用等多场景,为开发者提供丰富的库支持。 文章目录 一、环境部署1. rust开发环境安装2. rust开发环境配置二、代码示例三、常见问题1. 借用和所有权问题2. 编译器错误和警告一、环境部署 1. rust开发环境安装 rust是一门…

Addressables资源打包(AA包)代码中改变远程地址

接着上一篇“Unity资源打包Addressable AA包” 还是先贴代码 LoadPath.cs 中定义一个远程服务器的地址&#xff0c;这个地址将来在代码中会修改 namespace HFS {public class LoadPath{public static string Path "http://172.18.216.168:6565/HFS/1/";} } 远程服…

linux基础-完结(详讲补充)

linux基础-完结 一、Linux目录介绍 二、基础命令详细讲解 1. ls&#xff08;列出目录内容&#xff09; 2. cd&#xff08;更改目录&#xff09; 3. clear&#xff08;清除终端屏幕&#xff09; 4. pwd(显示你当前所在的目录) 5. vim(文本编辑器) 6. touch&#xff08;创…

人工智能技术将逐步渗透到我们生活的每个角落

人工智能技术的应用前景无疑是广阔且深远的&#xff0c;它正逐步渗透到我们生活的每一个角落&#xff0c;预示着一场前所未有的社会与经济变革。 ‌1、医疗健康领域的深度融合‌&#xff1a;人工智能在医疗领域的应用将更加精准和个性化。通过大数据分析和机器学习&#xff0c;…

MySQL 批量删除海量数据的几种方法

目录 一、问题分析 二、批量删除海量数据的几种方法 方法 1&#xff1a;使用 LIMIT 分批删除 方法 2&#xff1a;通过主键范围分批删除 方法 3&#xff1a;通过自定义批量删除存储过程 方法 4&#xff1a;创建临时表替换旧表 三、性能优化建议 总结 在数据库的日常维护…

开启鸿蒙开发之旅:准备篇

写在前面 Q:为什么要学习鸿蒙&#xff1f; A:没有特定的理由&#xff0c;有可能是因为大环境不好的原因&#xff0c;大家越来越卷&#xff0c;技术革新越来越快&#xff0c;如果手里多掌握一门技术&#xff0c;心里会更有底气一些。再一个自己只有前端开发经验&#xff0c;平时…

倒计时3天 | 2024 CCF中国开源大会仪式解读

点击蓝字 关注我们 CCF Opensource Development Committee CCF 大会简介 2024 CCF中国开源大会&#xff08;CCF ChinaOSC&#xff09;将于2024年11月9日至10日在深圳召开。本届大会由中国计算机学会主办&#xff0c;CCF开源发展委员会、鹏城实验室、新一代人工智能产业技术创新…

【Java集合面试1】说说Java中的HashMap原理?

Java中的HashMap是一种基于哈希表的Map接口实现&#xff0c;它存储的内容是键值对&#xff08;key-value&#xff09;映射。HashMap允许空键&#xff08;null&#xff09;和空值&#xff08;null&#xff09;&#xff0c;并且它的键值对没有顺序。以下是HashMap的一些关键工作原…

LeetCode【0009】回文数

本文目录 1 中文题目2 求解思路2.1 基础解法&#xff1a;数字反转法2.2 优化解法&#xff1a; 双指针数学法2.3 最优解法&#xff1a;取一半数字法 3 题目总结 1 中文题目 给你一个整数 x &#xff0c;如果 x 是一个回文整数&#xff0c;返回 True &#xff1b;否则&#xff0…

Python 数据可视化详解教程

Python 数据可视化详解教程 数据可视化是数据分析中不可或缺的一部分&#xff0c;它通过图形化的方式展示数据&#xff0c;帮助我们更直观地理解和分析数据。Python 作为一种强大的编程语言&#xff0c;拥有丰富的数据可视化库&#xff0c;如 Matplotlib、Seaborn、Plotly 和 …

微服务架构面试内容整理-服务注册与发现-Nacos

Nacos:一个开源的动态服务发现、配置管理和服务管理平台,由阿里巴巴开发。它为微服务架构提供了易于使用的解决方案,能够帮助开发者管理服务的注册、发现和配置。以下是 Nacos 的主要特点、工作原理和使用场景: 主要特点 1. 服务发现: Nacos 支持 DNS 和 RPC 的服务发现方…

硬件基础17 半导体存储器——随机存取存储器RAM

目录 一、异步SRAM 二、同步SRAM 三、DRAM 四、字长位数扩展 五、字数的扩展 RAM是另一大类存储器&#xff0c;它与ROM的最大区别就是数据易失性&#xff0c;一旦失去电源供电&#xff0c;所存储的数据立即丢失。最大优点是可以随时快速地从其中任一指定地址读出&#xff…