天道酬勤,学无止境

快速入门springboot 网页开发(四)springboot控制器之过滤器、拦截器

springboot控制器之过滤器、拦截器

  • 过滤器
    • 过滤器编程步骤1:创建过滤器类
    • 过滤器编程步骤2:加载过滤器
    • 过滤器编程示例: IP 黑名单
  • 拦截器
    • 拦截器编程步骤1:创建拦截器类
      • 拦截器类基本代码框架
    • 拦截器编程步骤2:创建拦截器配置类
      • 拦截器配置类基本代码框架

过滤器

◼ 过滤器(Filter)可以动态地拦截请求和响应。
◼ 应用场景:过滤敏感词汇、防止SQL注入、设置字符编码、进行URL级
别的权限访问控制、压缩响应信息等。
在这里插入图片描述

过滤器编程步骤1:创建过滤器类

◼ 编写 Java 类实现 Filter 接口(主要是实现 doFilter() 方法);
◼ 过滤器类使用注解 @WebFilter 标注,并配置过滤 url。

在这里插入图片描述
Filter 接口的三个方法说明:
Filter随web应用的启动而启动, 只初始化一次, 随web应用的停止而销毁。

  1. 启动服务器时加载过滤器的实例,并调用 init() 方法来初始化实例;
  2. 每一次请求时都只调用 doFilter()方法进行处理;
  3. 停止服务器时调用 destroy() 方法,销毁实例

过滤器类基本代码框架

过滤器类基本代码框架
@WebFilter("/*") // 当前配置拦截所有请求
public class MyFilter implements Filter {
	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException {
		if(某条件){
			//拦截处理
		}
		else{
			chain.doFilter(request, response); // 放行
		}
	}
}

过滤器编程步骤2:加载过滤器

◼ 在 Spring Boot 启动类上添加 @ServletComponentScan 注解。
在这里插入图片描述

过滤器编程示例: IP 黑名单

在这里插入图片描述

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
@WebFilter("/*")
public class MyFilter implements Filter {
	//黑名单 简单模拟一下
	private List<String> IPList=new ArrayList<>();
	@Override
	public void init(FilterConfig filterConfig) throws ServletException { //过滤器初始化
		IPList.add("127.0.0.1"); // 本机地址
		IPList.add("0:0:0:0:0:0:0:1"); // IPv6 的本机地址
	}
	@Override
	public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws
	IOException, ServletException {
		//黑名单过滤
		String ip = servletRequest.getRemoteAddr(); // 获得客户端 ip 地址
		System.out.println(ip); //控制台上查看一下
		if( IPList.contains(ip) ){
		servletResponse.setContentType("text/html;charset=utf-8"); //设置响应的字符集(避免中文乱码)
		servletResponse.getWriter().println("你已被列入黑名单!");
		}
		else{
		filterChain.doFilter(servletRequest,servletResponse); //放行
		}
	}
}

拦截器

◼ 拦截器(Interceptor)主要用于拦截用户请求并作相应的处理。
◼ 基于Java的反射机制,属于面向切面编程(AOP)的一种运用。
◼ 应用场景:验证用户登录状态、权限验证、记录系统日志、通用处理等。

拦截器编程步骤1:创建拦截器类

编写Java类实现 HandlerInterceptor 接口(主要实现 preHandle()方法)
在这里插入图片描述
HandlerInterceptor 接口的三个方法说明:
preHandle:在业务处理器处理请求之前被调用;
postHandle:在业务处理器处理请求执行完成后,生成视图之前执行;
afterCompletion:在DispatcherServlet完全处理完请求后被调用(渲染页面之后)。

在这里插入图片描述

拦截器类基本代码框架

public class MyInterceptor implements HandlerInterceptor {
//在处理请求之前被调用。可以进行权限校验、安全控制等处理;
boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
throws Exception;
// 设置拦截的业务的条件
// return true; 放行(满足条件时放行,继续业务处理)
// return false; 拦截(不满足条件时,跳转到其他处理)
}

拦截器编程步骤2:创建拦截器配置类

◼ 编写Java类实现 WebMvcConfigurer 接口(主要实现 addInterceptors()
方法)
◼ 该类用注解 @Configuration 标注(表明是一个配置类)

拦截器配置类基本代码框架

@Configuration // 表明是一个配置类 不要掉了!
public class MyWebConfig implements WebMvcConfigurer {
	@Override
	public void addInterceptors(InterceptorRegistry registry) { //加载拦截器
		registry.addInterceptor( new MyInterceptor () ) //加载自定义的拦截器
		.addPathPatterns("/**") //拦截请求的路径 /** 表示所有请求
		.excludePathPatterns("/","/css/*","/images/*","/js/*"); //不拦截的请求,如首页、静态资源等
	}
}

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 快速入门springboot 网页开发(四)springboot控制器之参数传递方法
    Spring Boot 控制层之参数传递方法 准备工作1. 无注解获取参数2. 使用HttpServletRequest对象3. 使用实体类封装 ★★★4. 使用 @RequestParam 获取参数前端传递数组 5. 使用 @PathVariable 获取参数6. 使用 @RequestBody 获取参数示例:前端传递对象数组 7. 获取格式化参数 准备工作 ◼ 新建项目 demo4 ◼ 新建 bean 包,并新建 Student类(代码见下页) ◼ 新建 controller包,并新建 TestController 控制器 本节控制器使用 @RestController 注解 public class Student { private Integer id;//主键. private String name; public Student(Integer id, String name) { this.id = id; this.name = name; } public Student() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void
  • Java学习路线从入门到入土
    Java学习路线从入门到入土 Java学习路线从入门到入土 Java学习路线从入门到入土简介Java基础课程第一阶段第一部分:Java开发介绍第二部分:Java数组第三部分:Java面向对象第四部分:常用基础类第五部分:集合第六部分:IO流第七部分:多线程第八部分:异常第九部分:网络第十部分:反射第十一部分:数据结构与算法 JavaWeb课程第二阶段内容第一部分:HTML5第二部分:CSS3第三部分:JavaScript第四部分:MySQL使用第五部分:JDBC连接池第六部分:Servlet第七部分:JSP第八部分:AJAX第九部分:jQuery第十部分:Bootstrap Java框架课程第三阶段Java框架课程内容第一部分:Maven第二部分:~~Hibernate~~第三部分:Spring第四部分:Spring MVC第五部分:MyBatis* 第六部分:~~WebService~~* 第七部分:Git* 第八部分:~~Activiti~~ Java + 云数据课程第四阶段Java + 云数据课程主要涉及的内容:第一部分:Linux版本第二部分:~~FastDFS~~第三部分:MySQL优化第四部分:Nginx反向代理第五部分:~~Quartz 作业调度~~第六部分:Redis 高性能(Key-Value)数据库第七部分:Shiro 安全(权限)框架第八部分:~~Lucene
  • 提取bilibili网页视频目录,网页提取标签、属性,list到写入文本
    1、网页提取标签、及属性写入list # -*- coding:utf-8 -*- import requests from bs4 import BeautifulSoup html_doc3=""" <ul class="list-box"><li class="watched on"><a href="/video/BV1gp4y1q71w?p=1" class="" title="1.01 引言"><i class="van-icon-videodetails_play"></i><span class="s1">P1</span> 1.01 引言 </a></li><li class=""><a href="/video/BV1gp4y1q71w?p=2" class="" title="2.01 课前准备"><i class="van-icon-videodetails_play" style="display: none;"></i><span class="s1">P2</span> (内容太多写不下,忽略) 4.11.10 集群_选举策略 </a></li><li class=""><a href="/video/BV1gp4y1q71w?p=863" class="" title="4.11.11 集群_搭建集群"><i class="van-icon
  • Java学习路线目录索引(持续更新中)
    Java学习路线目录索引(持续更新中) Java学习路线目录索引 后续会将下面源码及资料发布到github, 欢迎star 1、MyBatis源码及资料: https://github.com/coderZYGui/MyBatis-Study 2、Sping源码及资料: https://github.com/coderZYGui/Spring-Study 3、SpringMVC源码及资料: https://github.com/coderZYGui/springmvc-study 文章目录 Java学习路线目录索引(持续更新中)第一部分: Java基础第二部分: java数据库第三部分: JavaWeb第四部分: SSM等主流框架SSM-------MybatisSSM-------SpringSSM-------SpringMVC 第五部分: SpringBoot第六部分: SpringCloud第七部分: Redis第八部分: Shiro, Spring Security第九部分: 消息中间件第十部分: 工具的使用 第一部分: Java基础 跳转到目录 枚举类 — 概述、常用方法、自定义枚举类、Enum创建枚举类抽象类(abstract class)、接口(interface)String类 — 概述、String的性质、内存解析、常用API线程 — 创建方式、常用方法
  • GitHub万赞,阿里P8自爆内部“Spring全线”学习笔记
    前言 对于每一位Java开发人员来说,提起Spring定是不陌生的,实际上自Spring框架诞生以来,就备受开发者的青睐,基本上现在的互联网公司都要使用到Spring框架。Spring框架中又包含了SpringMVC、SpringBoot、SpringCloud等,被开发者称呼为Spring全家桶。 实际上对于Spring的使用,阿里巴巴开发者肯定是更有发言权的,今天要分享的则是阿里内部备受热捧的“Spring全线笔记”,不仅仅是全家桶那么简单,看下来直呼:太完整了! PART1:Spring全线笔记之Spring系列 1.Spring5开发大全 2.全网最深的Spring5源码解读 5分钟快速理解Spring核心流程熟练掌握Spring工作常用注解及陷阱循环依赖及Bean定义解析IOC容器源码解读AOP源码解读声明式事务源码解读手写支持异步事务的开源框架 PART2:Spring全线笔记之Spring Boot系列 1.Spring Boot快速入门 与SpringMVC的区别介绍10分钟SpringBoot快速入门 2.Spring Boot进阶篇 核心组件分析不可思议的性能优化Jta+Atomikos分布式事务 3.Spring Boot底层源码精讲
  • 阿里内部热捧“Spring全线笔记”,不止是全家桶,太完整了
    前言 对于每一位Java开发人员来说,提起Spring定是不陌生的,实际上自Spring框架诞生以来,就备受开发者的青睐,基本上现在的互联网公司都要使用到Spring框架。Spring框架中又包含了SpringMVC、SpringBoot、SpringCloud等,被开发者称呼为Spring全家桶。 实际上对于Spring的使用,阿里巴巴开发者肯定是更有发言权的,今天要分享的则是阿里内部备受热捧的“Spring全线笔记”,不仅仅是全家桶那么简单,看下来直呼:太完整了! 需要Spring全线笔记PDF版的,点击我免费领取 PART1:Spring全线笔记之Spring系列 1.Spring5开发大全 2.全网最深的Spring5源码解读 5分钟快速理解Spring核心流程熟练掌握Spring工作常用注解及陷阱循环依赖及Bean定义解析IOC容器源码解读AOP源码解读声明式事务源码解读手写支持异步事务的开源框架 PART2:Spring全线笔记之Spring Boot系列 1.Spring Boot快速入门 与SpringMVC的区别介绍10分钟SpringBoot快速入门 2.Spring Boot进阶篇 核心组件分析不可思议的性能优化Jta+Atomikos分布式事务 3.Spring Boot底层源码精讲
  • 我的计算机知识体系
    引言 在整理自己曾经学习的技术知识前,贴上《论语》十二章里面的几句,短短的几句却蕴含了丰富的人生哲理,写下来警醒鞭笞自己: 谈学习: 子曰:“学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?”子曰:“温故而知新,可以为师矣。”子曰:“学而不思则罔,思而不学则殆。”子曰:“知之者不如好之者,好之者不如乐之者。”子曰:“三人行,必有我师焉。择其善者而从之,其不善者而改之。”子夏曰:“博学而笃志,切问而近思,仁在其中矣。” 谈人生: 子曰:“三军可夺帅也, 匹夫不可夺志也。”曾子曰:“吾日三省吾身,为人谋而不忠乎?与朋友交而不信乎?传不习乎?”子曰:“吾十有五而志于学,三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩。” 知识脑图 接来是对自己学习过的内容的一个知识脑图整体总结,当然这不是最终的版本,之后还是会持续更新。 知识目录 |_基础篇 |__理论篇 |___数学理论: 微积分-极限微积分-导数微积分-积分微积分-偏导数离散·连续·多维随机变量及其分布 - 概念点随机变量及其分布数学期望方差与标准差协方差与相关系数协方差矩阵与组成成分分析中心极限定理正态分布定义惠更新的三个关于期望定理棣莫弗的二项概率逼近贝叶斯方法最小二乘法-数据分析的瑞士军刀误差分布曲线的建立-辛普森的研究误差分布曲线的建立-高斯到粗误差正态分布误差分布曲线的建立
  • 莫逸风CSDN文章目录
    『Ⅱ』-----随笔 莫逸风CSDN文章目录 The Programmer’s Oath程序员的誓言—… 今天突发奇想写了一个小工具,CSDN文章目录生成器 vue去掉一些烦人的校验规则 输入npm install 报错node-sass@4.13… idea操作maven时控制台中文显示乱码/maven项目启… jquery validate 如何校验多个相同name IDEA debug启动的时候需要等半个小时甚至更长时间 再也不用担心了,微软官方系统(win10为例)U盘安装教程 mysql ORDER BY 中文出现错误问题 MyBatis like报错 数据库存储图片相对路径使用问题,配置tomcat的serve… 解决maven中静态资源只能放到properties中的问题 Mybatis出现错误org.apache.ibatis.e… 修改IDEA默认模板 tomcat启动与运行时出现中文乱码问题 IDEA配置Tomcat IDEA不自动提示仓库中有的包maven 软件设计文档 简单的字幕添加方法 hive表导出到mysql报错 Scrapy启动spider出错 C语言判断两个值相等 二维数组 三目运算符 C语言定义常量 C语言格式化输出语句 # 算法笔记 Best Cow Line 区间调度问题 硬币问题 迷宫最短路径 部分和问题 区间k大数训练 蓝桥杯基础练习
  • Java学习路线 (从零基础到项目完整2019版!)
    前言:如果想要入坑,请看完下面这段话! 工作难找,入坑不易,请根据自己的情况再做决定,且行且珍惜! 大家都说今年行情不怎么好,确实今年比起往年工作机会是少了很多,但我觉得事事是相对的。我入坑比较早,好几年了,各种各样的人和事都遇到过,也面试过很多人! 当然 我也发现了一个问题,就是近几年,入行的越来越多。所以随着而来的问题也来了,很多人一时冲动去培训,然后出来后发现工作找不到,处处遇挫折。 我从17、18年以来,通过朋友介绍或者别人从我的博客知乎贴吧上找到我,我也陆陆续续的帮助过很多人,他们找到我都是为了一个目的就是怎么才能求得一个工作机会!看到他们我也想到当初我刚出来的样子,所以只要找我的,我都诚信诚意尽最大可能得帮助他们。每一个求职人,从刚来跟我聊天,到我们规划制定计划,到知识巩固项目熟悉,再到写简历,然后模拟面试,实战去面试,总结面试技巧,最后到拿到满意的offer! 有人说真幸运遇到我,我改变了他,在他最低谷的时候,帮助了他,不然他估计转行了或者以后一生都会留下这个遗憾! 最后: 记住我的话,现在不管怎样,不能决定你以后,只要你肯花时间,回报肯定会来,可能会迟到,但一定不会缺席! 访问:https://item.taobao.com/item.htm?spm=a1z10.3-c-s.w4023-21342220526.16.42877248sImpiA&id
  • 还在为学不会Java而找理由?别找了,这篇文章足够你学通Java了
    老生常谈的一些问题,小编再和你们谈一谈! 现在的java在编程界基础已经根深蒂固了,随之带来的影响就是有大量的岗位,大量的工作方向,虽然现在很多的新兴语言势头都非常的猛烈,但是这并不影响java依然体量最大的编程语言,而且丝毫也看不出这门语言有任何衰减的趋势,依然有大量的从业人员在java开源领域贡献着大量的代码,在新兴的领域java切入进来也是毫不费力。 在目前阶段学习java,不存在晚与不晚,更像是想不想学的概念,所以下定决心去学,把基本功弄得扎扎实实,找个合适的工作不是一件多难的事情。所以切入一个成熟期的编程语言,没有什么不对,特别是有大量工作岗位可以选择。 给大家分享一张以 企业岗位需求为导向 Java工程师技能点图 学习开始吧?GO 根据 Java工程师技能点图,我们分为四个阶段: 第一阶段 :Java基础 Java基础语法学习知识 Java中的main()方法详解 Java中的运算符 Java中的数组 Java中List与数组互相转化 Java 学习之集合类(Collections) Java基础之多线程没那么复杂! Java线程池相关知识点总结 Java基本数据类型与包装类、字符串之间的转换 Java 学生成绩管理(数组,嵌套循环,冒泡排序,表格输出四块融合) 来谈谈JAVA面向对象 - 鲁班即将五杀,大乔送他回家?? Java类的继承与多态 Java泛型总结—
  • 【Java学习路线】新手该如何一步步的学习 Java
    个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 新手该如何一步步的学习 Java? 如果真的想学Java,最好要循序渐进,有章有法的学习它! 今天小慕就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容。 首先,给大家分享一张以 企业岗位需求为导向 Java工程师技能点图 根据 Java工程师技能点图,我们分为四个阶段: 第一阶段 :Java基础 Java基础语法学习知识Java中的main()方法详解Java中的运算符Java中的数组Java中List与数组互相转化Java 学习之集合类(Collections)Java基础之多线程没那么复杂!Java线程池相关知识点总结Java基本数据类型与包装类、字符串之间的转换Java 学生成绩管理(数组,嵌套循环,冒泡排序,表格输出四块融合)来谈谈JAVA面向对象 - 鲁班即将五杀,大乔送他回家??Java类的继承与多态Java泛型总结——吃透泛型开发 第一阶段配套的视频教程 Java零基础入门 , 课程总时长:40小时,27门课 教学目标:掌握必备Java语法基础,理解面向对象开发思想,学会使用常见 Java API,能够简单快捷完成常用代码逻辑开发。 第二阶段 :Java Web Java Web从前端到后台常用框架介绍JAVA遇上HTML-----JSP 篇总结 Java 内部类的一些使用与梳理Java
  • Java学习笔记目录索引 (持续更新中)
    博主的其他笔记汇总 : 👉 学习数据结构与算法,学习笔记会持续更新: 《恋上数据结构与算法》学习Java虚拟机,学习笔记会持续更新: 《Java虚拟机》学习Java并发编程,学习笔记会持续更新: 《Java并发编程》学习Java设计模式,学习笔记会持续更新: 《Java设计模式》学习网络协议,学习笔记会持续更新: 《网络协议》 Java学习路线目录索引 👍 一、Java基础二、 MySQL数据库三、JDBC四、JavaWeb五、MyBatis & JPA六、Spring七、SpringMVC八、SpringBoot九、SpringCloud十、Redis十一、SpringSecurity、Shiro十二、消息中间件 RabbitMQ十三、ElasticSearch (转载系列)十四、开发工具的使用 附录 : 👉 Github最牛逼的Java知识汇总 : JavaGuide号称最强的Java知识总结 : ThinkWon 一、Java基础 跳转到目录 UML 一 类图关系 (泛化、实现、依赖、关联、聚合、组合)枚举类 — 概述、常用方法、自定义枚举类、Enum创建枚举类抽象类(abstract class)、接口(interface)String类 — 概述、String的性质、内存解析、常用API线程 — 创建方式、常用方法、线程安全问题、通信Java集合 — Collection
  • Coding-with-Java 项目介绍
    Coding-with-Java 项目预览 Coding-with-Java 项目介绍一、Java 从入门到精通1.1 Java SE篇 (2020 6 2 更新)1.2 Java EE篇1.3 Spring 全家桶系列 (2020 9 17 更新) 二、 Java 基础项目2.1 Java SE 篇章2.1.1 基于 Java 实现简单的注册登录系统2.1.2 基于 Java SE 的简单学生管理系统 Java SE 版 2.2 Java EE 篇章2.2.1 实现验证码的生成以及验证 (Java With CAPTCHA )2.2.2 学生管理系统 Java EE 版本 (简易 Java Web)2.2.3 Java EE 之简易购物车项目 (ShoppingMall) 三、Java EE 企业级框架篇3.1 Struct2 hibernate spring 框架 (SSH篇)3.1.1 新增 Struct2 实现权限管理 (2020 5 19更新)3.1.2 新增 Struct2 + hibernate 整合项目 (2020 6 2更新)3.1.3 新增 struct2 + hibernate5 + Spring5 整合项目 (2020 6 14日更新) 3.2 Spring SpringMVC MyBatis 框架 (SSM 篇)3.2.1 Spring3.2.2
  • Java全套课程修炼之Java小白入门篇
    温馨提示: 1、本文并非Java的唯一学习路线,程序羊仅仅是怀着分享的动力来汇总,仅供参考。如有争议,请及时联系程序羊。 2、看完此文之后,能不能全都学会,程序羊不敢保证,但是,唯一可以知道的一点就是,您至少应该知道按什么学习路线去学习Java了,并且可以学到一些,或许你还没有了解到的知识。 3、如果您觉得本文对您有用,可以收藏好,并给程序羊点个赞,以示鼓励,喜欢的朋友也可以点个关注喔,程序羊会不定时给您更新更多的干货。 阶段1 Java语言基础 1-1-Java基础语法 第1节 java运行环境 1_1_1_01_Java语言发展史 1_1_1_02_计算机进制转换 1_1_1_03_计算机存储单元 1_1_1_04_命令提示符_基本介绍 1_1_1_05_命令提示符_常用命令 1_1_1_06_Java语言的跨平台性 1_1_1_07_JDK、JRE与JVM 1_1_1_08_JDK的下载与安装 1_1_1_09_环境变量的配置 第2节 HelloWorld案例 1_1_2_10_HelloWorld程序的代码编 1_1_2_11_HelloWorld程序的编译 1_1_2_12_HelloWorld的常见问题 1_1_2_13_程序注释与HelloWorld 第3节 关键字&标识符 1_1_3_14_关键字的概念与特征 1_1_3_15_标识符的概念与规则 第4节 常量&变量
  • 从JAVA入门到Java架构师最全面的资源都在这了
    javaSE从小白到入门 首先你要先了解计算机基础 然后是Window操作系统 计算机网络 Java基础和程序逻辑 Java基本语法 程序流程控制 Java面向对象编程 字符串 JavaEE全栈技能 如果前面的你都会,那么就跳过前面这一段 相信你可能经历过这些: 已经工作3年了,每个项目都会保质保量的完成,薪资却依旧不如意,多次提出加薪,领导总说哦哦哦知道了。 不止一次想象自己用Mac电脑和Cherry键盘撸代码的兴奋场景, 但就是舍不得买回家。 听说上个月离职的同事,换了其他公司,年薪涨了很多已经快50万了。 你终于明白,现在的工作很难大幅涨薪了,是时候提高自身技能,规划后续的职业发展了。 那么,在做Java开发的你, 该如何提升,才能快速提高薪资到50万呢? 找到正确的发力方向是重中之重。 近些年来互联网快速发展,现阶段的数据量和高并发的诉求,引起了不少传统的技术人员的力不从心,企业愈发关注到了系统架构的重要性,既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的领导型人物——Java架构师应运而生…… 到了2018年,Java高级架构师已经成了炽手可热的岗位。现在一家科技公司要是还没有招 Java架构工程师,那说明这家公司的规模还只是一般。最近腾讯、阿里巴巴、京东、今日头条和拼多多都在疯狂招人,Java高级架构师已成为目前最急需的岗位之一。 顺势而为,朝着"
  • SpringBoot从入门到精通系列(专栏导航)
    本专栏基于Springboot2.2.3,配套自己写的代码例子,内容涉及配置用法,web,数据库,Redis,也涉及到企业级开发的消息队列,dubbo,单点登录,OAuth2,搜索引擎等方面,并有源码的简单分析,适合作为入门教程 对应SpringBoot系列博客专栏,例子代码下载,代码暂时托管于GitHub,在github上clone到本地既可,github下载中链接,本博客不定时更新 Spring框架:作为JavaEE框架领域的一款重要的开源框架,在企业应用开发中有着很重要的作用,同时Spring框架及其子框架很多,所以知识量很广。 Spring Boot:一款Spring系统的一款框架,是2014年推出的一款使Spring框架开发变得容易的框架。学过Spring框架的都知识,Spring框架难以避免地需要配置不少XMl,而使用Spring Boot框架的话,就可以使用注解开发,极大地简化基于Spring框架的开发。Spring Boot充分利用了JavaConfig的配置模式以及“约定优于配置”的理念,能够极大的简化基于Spring MVC的Web应用和REST服务开发。 本专栏基于Springboot2.0,配套自己写的代码例子,内容设计基本的配置用法,web,数据库,Redis,也涉及到企业级开发的消息队列,dubbo,搜索引擎等方面,并有源码的简单分析,适合作为入门教程
  • Spring高级技术梳理
    Spring高级技术梳理 序言正文SpringData部分Spring全家桶之SpringData——预科阶段Spring全家桶之SpringData——Spring 整合Hibernate与Hibernate JpaSpring全家桶之SpringData——Spring Data JPASpring全家桶之SpringData——SpringData RedisSpring全家桶之SpringData——SpringDataElasticSearch SpringBoot部分Spring全家桶之SpringBoot——初级阶段Spring全家桶之SpringBoot——高级阶段 SpringCloud部分Spring全家桶之SpringCloud——初级阶段Spring全家桶之SpringCloud——高级阶段(上)Spring全家桶之SpringCloud——高级阶段(中)Spring全家桶之SpringCloud——高级阶段(下) SpringCloud技术拓展部分Spring全家桶之SpringSessionSpring全家桶之SpringSecuritySpring全家桶之分布式事务处理技术之LCN Spring高级技术应用——项目实战Spring高级技术应用——百战商城实现(上)Spring高级技术应用——百战商城实现(下)
  • Bookmarks(三)
    Bookmarks 书签栏 tooltips提示效果,支持点击与经过显示,位置和效果可以自定义 - CSDN博客 疯狂的小萝卜头 - 博客园 【Kettle从零开始】第九弹之Kettle定时任务介绍 - RotKang - CSDN博客 Freemarker模版 Java开源Web开发框架分类列表 HTML5模板引擎 Thymeleaf 教程 - OPEN 开发经验库 Spring MVC视图层:thymeleaf vs. JSP - OPEN 开发经验库 thymeleaf 学习笔记-基础篇 - OPEN 开发经验库 HTML5模板引擎 Thymeleaf - OPEN 开发经验库 Freemarker中Configuration的setClassForTemplateLoading方法参数问题 - format丶 - 博客园 利用freemarker 静态化网页 - ajun_studio的专栏 - CSDN博客 关于Freemarker生成静态html文件及中文乱码的问题 - it_man的专栏 - CSDN博客 FreeMarker入门教程 - Raul·Fu - 博客园 最近在看的freemarker,个人认为有助于理解 - 老夫聊发少年狂 - CSDN博客 SpringMVC处理脚本,SQL注入问题 - 逍遥叹!! - 博客园 使用freemarker生成word
  • SpringBoot项目的快速创建以及简单访问html网页
    引言:Spring Boot是什么? Spring Boot是由Pivotal团队提供的全新矿建,其设计目的是用来简化Spring应用的初始搭建以及开发过程。改框架使用了特定的方式来进行配置,从而使开发人员不 再需要定义样板化的配置。通过这种方式,Spring Boot致力 于在蓬勃发展的快速应 用开发领域(rapid application development)成为领导者。 Spring Boot的主要目标是: 为所有Spring开发提供一个更快,更广泛的入门体验。立即开始开发。提供大型项目(如嵌入式服务器,安全性,指标,运行状况检查和外部配置)通用的一系列非功能性功能。绝对不会生成代码,并且不需要XML配置。 更简单明确了解: SpringBoot = Spring(项目管理框架) + SpringMVC(控制器) SpringBoot的特点 1. 创建独立的Spring应用程序 2. 嵌入的Tomcat,无需部署WAR文件 3. 简化Maven配置 4. 自动配置Spring 5. 没有XML配置 SpringBoot系统要求 Spring Boot 2.0.0.RELEASE需要Java 8或9以及 Spring Framework 5.0.4.RELEASE或更高版本。为Maven 3.2+和Gradle 4提供了明确的构建支持。 并且Spring
  • 2021年最新全网Java学习路线最完整,最详细的版本了,没有之一
    文章有点长,请大家耐心看完,话不多说直接上干货! 一门永不过时的编程语言——Java 编程开发。 Java编程语言占比: 据官方数据统计,在全球编程语言工程师的数量上,Java编程语言以900万的程序员数量位居首位。 而且很多软件的开发都离不开Java编程,因此其程序员的数量最多。而在以Java编程为核心的开发领域中,javaEE程序员的需求量10年来一直居于首位! Java工程师人才缺口: 根据IDC的统计数字:就2017年来说,我国Java人才的缺口已达42.5万,并且以每年20%左右 的速度增长。在未来5年内,合格软件人才的需求将远大于供给。 Java工程师就业: 1.通过各大招聘网站统计,全国海量公司都在招聘Java开发工程师2.北京Java开发工程师平均薪资,即18530元3.全国Java开发薪资前三:北京 上海 广州。 Java基础 一:Java开发介绍 1. DOS常用命令 2. JVM、JRE、JDK之间的关系 3. Java开发环境的搭建:安装JDK,配置环境变量 4. Java入门程序(Java的开发流程) 5. Java的注释,标识符、标识符的命名规范 6. Java基本数据类型 7. 变量和常量的定义及初始化 8. Java的运算符 9. 运算符的优先级 10. Java分支语句之if...else 11. 循环的嵌套 12. 方法的定义 13