Java Web
文章平均质量分 74
啦啦啦小骑士
此人并不懒,但还是什么都没有写,嘿嘿
展开
-
使用SpringBoot集成的JavaMailSender进行异步邮件发送
一、背景邮件发送功能是各种系统不可或缺的功能,例如办公系统会在出现特定状况时向人事部门或技术部门发送告警信息。Spring框架提供了JavaMailSender接口可以进行简单的邮件推送,我们可以很轻易的使用。此外,邮件推送还需要考虑是否采用异步的方式,如果邮件推送功能是在用户触发某个操作后发生的,使用同步的方式串行执行发邮任务势必会导致业务的阻塞,我们可以使用Spring提供的ThreadPool来实现异步多线程。二、配置异步任务首先在SpringBootApplication主类下增加注解@原创 2022-02-03 18:30:20 · 1471 阅读 · 0 评论 -
SpringBoot项目精简返回给客户端的异常信息
1. 前言Java Web项目在处理请求时,如果遇到异常,会直接将执行栈的详细信息返回给客户端,这种交互不仅极不友好,而且随意将服务器细节对外展示也是非常危险的。通常我们会原创 2021-11-17 08:11:50 · 492 阅读 · 0 评论 -
Java Web项目抵御跨站脚本攻击(前后端共御)
目录XSS攻击原理抵御方法针对前端代码实现XSS攻击原理XSS攻击指攻击者利用服务器漏洞,将恶意代码以文本的形式混杂进请求数据中发送给服务器存储,服务器在未来渲染视图的时候会将该恶意代码也携带进去,客户端执行恶意脚本后会造成重要信息泄露。XSS攻击的恶意代码通常是HTML标签包裹JavaScript脚本,形如<script>alert("恶意脚本")</script>,当页面中出现这种结构的文本时,浏览器会误认为是正常的标签而进行渲染。举一个简易的例子,假设攻击者的服务器为x原创 2021-11-12 10:25:23 · 2171 阅读 · 1 评论 -
[汇总] CentOS 7安装Java Web技术栈环境
目录一、MySQL二、MongoDB三、Redis四、JDK五、Tomcat一、MySQL通过yum下载RPM软件包若要安装MySQL8.0,请执行:yum localinstall https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm若要安装MySQL5.7,请执行:yum localinstall https://repo.mysql.com/mysql57-community-release-el7-11.原创 2021-11-05 14:22:38 · 800 阅读 · 2 评论 -
开启SpringMVC编码过滤器后,HTML反而出现乱码的解决方案
现象:HTML等静态资源本身的编码是没有问题的,但在开启SpringMVC的编码过滤器后,页面反而出现了莫名其妙的乱码。原先的web.xml配置如下:<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class&原创 2020-09-03 23:02:50 · 1123 阅读 · 0 评论 -
Java Web编码过滤器的实现
可以使用Filter过滤器将所有的请求与相应设置为相应的编码。Filter类:public class EncodingFilter implements Filter { private String encoding = "UTF-8"; // 默认编码UTF-8 @Override public void init(FilterConfig filterConfig) throws ServletException { // 如果用户配置了编码,则将en原创 2020-05-09 14:55:06 · 694 阅读 · 0 评论 -
MyBatis简介与基本操作
一、Mybatis简介MyBatis是支持定制化SQL、存储过程以及高级映射的持久层ORM框架,它通过XML配置文件的方式进行数据交互,避免了传统JDBC硬编码的种种缺陷。二、...原创 2020-01-15 14:12:14 · 266 阅读 · 0 评论 -
Spring MVC
一、MVC设计模式二、Spring MVC组件组件名作用DispatcherServlet前置控制器Handler完成具体业务逻辑的处理器HandlerMapping将请求映射到HandlerHandlerInterceptor处理器拦截器HandlerExecutionChain处理器执行链HandlerAdapter处理器适...原创 2020-01-14 15:50:03 · 206 阅读 · 0 评论 -
Spring事务管理
一、事务的概念事务(Transaction)是指逻辑上的一组操作,这组操作要么全部成功,要么全部失败。事务拥有四个特性:原子性: 一组事务不可分割,要么全部发生,要么都不发生一致性: 一组事务发生前后的数据量应保持一致隔离性: 多个并发事务之间应相互隔离、互不干扰持久性: 一组事务一旦执行成功,它带来的改变是永久性的二、安全问题脏读:...原创 2020-01-13 10:24:05 · 258 阅读 · 0 评论 -
Spring AOP以及AspectJ
一、原创 2020-01-11 19:14:46 · 390 阅读 · 0 评论 -
Spring IoC以及DI
一、IoC(Inverse of Control)IoC即控制反转,它是指将对象的创建权交给Spring容器管理在传统的开发中,若类A用到了类B,那么往往需要在类A中显式的new一个对象B,这样类A与类B就产生了代码层面的耦合。使用Spring框架后,在A类中只需要定义一个B类的引用,再通过配置的方式让Spring容器自动将类B注入到引用中。...原创 2020-01-09 17:15:52 · 182 阅读 · 0 评论 -
Intellij IDEA导入Eclipse/Maven项目
一、导入Eclipse项目①点击Import Project(导入工程),选中你要导入的工程文件夹,选择Import project from external model(导入外部模型)中的Eclipse②一路点击next,IDEA会检测出Web框架(web.xml),选择Configure后确定即可③打开Project Sturcture选项卡,选择Modules,将所有标红的依赖...原创 2019-09-23 23:33:37 · 2714 阅读 · 0 评论 -
解决Intellij IDEA配置Maven速度缓慢的问题
原因简述Intellij IDEA自带了Maven支持(当前版本为3.6.1),用户无需单独安装Apache Maven就可以直接创建Maven项目。无论是IDEA自带的Maven还是Apache官网下载的Maven,默认都是从国外的仓库下载依赖文件,首次启动下载速度较慢,有时甚至会超时。本教程记录整个Maven的下载和配置过程,并将采用阿里云提供的镜像地址加快下载速度。操作步骤一、下载并...原创 2019-09-21 22:20:47 · 9359 阅读 · 2 评论