自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我的博客

我的博客文章

  • 博客(29)
  • 资源 (6)
  • 收藏
  • 关注

原创 重温Java Web的技术细节

文章目录一、背景二、请求与响应2.1、Http请求2.2、Http响应三、ServletConfig3.1 测试ServletConfig参数四、ServletContext4.1 测试ServletContext参数4.2、ServletContext属性五、属性的作用域六、HttpSession6.1 HttpSession的关键方法6.2 简易的购物车使用HttpSession七、监听器7.1 监听器测试--在线会话数统计7.2 特殊的监听器八、过滤器8.1 过滤器的使用方法8.2 过滤器的执行流程8

2020-08-31 08:18:56 328

原创 重温Servlet的技术细节--过滤器

八、过滤器过滤器Filter允许你拦截请求和响应,通过编写和配置一个过滤器,可以完成一些全局性的操作:比如安全验证、统一编 码处理、敏感字过滤等。Servlet API中提供了一个Filter接口,开发web应用时,如果编写的Java类实现了这个接口,则把这个java类称之为过滤器Filter。通过Filter技术,开发人员可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截。简单说,就是可以实现web容器对某资源的访问前截获进行相关的处理,还可以在某资源向web容器返回响应前进行截

2020-08-30 16:35:37 250

原创 周末杂谈:如何写技术博客文章的体会

背景技术文章的高质量主要体现在技术主题的明确、结构清晰、最重要就是干货满满。为了达成这些目标,作者在构思文章时,需要考虑以下问题:如何将碎片化的知识变成体系化的输出?主题怎么写?如何构建知识框架?知识会不会有错误,如何排查?在这个过程中,其实也是理清知识脉络的过程。主题明确主题一定要明确,不仅文章标题就要切合,文中的小标题的命名也要点题明确。如果你想写一篇多线程的入门文章,那主题可以是这样的:《记Java多线程编程的第一次实践》《看了这个有趣的例子,你就秒懂多线程同步了》《Java

2020-08-29 11:27:57 218

原创 重温Servlet的技术细节--会话

七、HttpSessionSession就是为了让服务器有能力分辨出不同的用户。客户端在第一次请求时没有携带任何sessionId,服务端Servlet容器就会给客户端创建一个HttpSession对象 存储在服务器端,然后给这个对象创建一个sessionID 作为唯一标识。同时这个sessionID还会放在一个cookie里,通过response返回客户端。客户端第二次发出请求,cookie中会携带sessionId,servlet容器拿着这个sessionID在服务器端查找对应的Http

2020-08-29 09:40:00 227

原创 重温Servlet的技术细节--监听器

六、监听器监听器Listener又称为监听者,Listener的设计为开发Servlet应用程序提供了一种快捷的手段,能够方便地从另一个纵向维度控制程序和数据,正所谓旁观者清。监听器采用了观察者设计模式,监听范围包括ServletContext、HttpSession、HttpRequest。6.1 监听器测试–在线会话数统计在web.xml中进行如下配置:<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="h

2020-08-28 11:46:04 205

原创 重温Servlet的技术细节--参数与属性

三、ServletConfig在每个Servlet运行时,有可能需要一些初始化参数,比如,文件使用的编码,共享的资源信息等。这些初始化参数可以在 web.xml 文件中使用一个或多个 <init-param> 元素进行描述配置。当 容器 初始化一个 Servlet 时,会将该 Servlet 的配置信息封装,并通过 init(ServletConfig)方法将 ServletConfig 对象的引用传递给 Servlet。3.1 测试ServletConfig参数在web.xml中进行如下配

2020-08-27 13:26:14 218

原创 重温Servlet的技术细节--请求与响应

文章目录一、背景二、请求与响应2.1、Http请求2.2、Http响应一、背景Servlet可以说是一项非常久远的技术了,甚至可以说是Java Web应用的起源。也就是说真正了解了这项技术的原理与实现细节,我们就掌握了Java Web的基础,也对以后能上手基于Servlet的框架可以起到事半功倍的作用。本文旨在重温与Servlet密切相关的一些技术细节。二、请求与响应Servlet的核心任务是处理请求Request,并给出响应Response,这也是Servlet存在的真正意义。2.1

2020-08-26 14:54:02 213

原创 重拾Java Web应用的基础体系结构

文章目录一、背景二、Web应用2.1 HTML2.2 HTTP2.3 URL2.4 Servlet2.4.1 编写第一个Servlet程序2.5 JSP2.6 容器2.7 URL映射到Servlet三、一个完整的Java Web基础应用四、小结一、背景Spring生态的强大与完善,使得大多数的Java程序员,在刚刚接触Java Web应用开发时,往往依赖于SSM、SpringBoot等各种高级框架。Java Web的基础的体系结构是什么?到底是怎么运作的?这些高级的框架与基础的体系结构之间是什么关系

2020-08-25 16:54:48 261

原创 Java Web的基础--Servlet

文章目录1、Servlet的概念2、Servlet的快速入门3、Servlet的执行原理4、Servlet的生命周期4.1 指定Servlet的创建时机4.2 Destroy方法1、Servlet的概念Servlet是Server和Applet的这两个单词的组合,即运行在服务器上的小程序。Servlet就是一个接口,定义了Java类被浏览器访问到的规则。Java程序员自定义一个类,实现Servlet接口并重写接口中的方法,Web服务器(如Tomcat等)就可以识别并执行这个程序。2、Servl

2020-08-23 15:57:36 219

原创 周末杂谈:推荐上半年所读的七本书

背景互联网时代,我们淹没在了碎片化的信息海洋中,仅是感知而不能达到认知,是当代社会的普遍痛点。为了让头脑建立一个分析和综合的框架,读书成了主要的手段与方法。读书虽然也是获取一种信息的手段,但读书的主要目的是汲取知识和建立学习的方法论。和网络文章不同,好书一般有相对完整的结构,较为清晰的逻辑链条,由浅入深地展开论述,作者已将他获取的信息提炼为知识,不仅易于读者吸收,而且有助于读者参照他的方法,在自己的工作和生活中,对信息进行分析和梳理,思考和总结事物间的逻辑关系,逐步深化对事物的理解,在理解的基础

2020-08-22 09:16:43 323

原创 Spring完整揭秘(十四):SpringMVC之RequestMappingHandlerMapping工作流程

UML图时序图工作流程容器将RequestMappingHandlerMapping组件注册入容器的时候,监测到了InitializingBean接口,注册完成后会执行afterPropertiesSet方法;afterPropertiesSet方法会调用父类AbstractHandlerMethodMapping的afterPropertiesSet方法,然后调用initHandlerMethods方法,此方法会首先获取容器中所有bean的beanName,然后循环调用processCand

2020-08-21 15:03:03 604

原创 Spring完整揭秘(十三):SpringMVC核心DispatcherServlet详解

文章目录1、DispatcherServlet是什么2、DispatcherServlet的作用3、DispatcherServlet的工作流程4、DispatcherServlet实现详解5 DispatcherServlet的doDispatch处理过程1、DispatcherServlet是什么DispatcherServlet是Spring MVC最核心的类,是前端控制器(Front Controller)设计模式的实现,正是这个核心组件接收所有传输到Web应用的HTTP请求。2、Disp

2020-08-20 13:54:07 5132

原创 Spring完整揭秘(十二):通过IDEA创建SpringMVC项目

1、创建spring项目根据1,2,3顺序进行操作2、输入项目名称3、下载jar包4、确定项目路径5、生成项目结构下载tomcat解压到文件夹下

2020-08-19 10:35:03 697

原创 IntelliJ IDEA 配置Jetty启动SpringMvc项目

下载jetty https://github.com/eclipse/jetty.project/releasesIDEA配置下拉框选择Edit Configurations…选项:增加Jetty服务器在弹出窗口中新增一个Jetty配置项配置参数配置Jetty的一些参数:设置好Name,点击Application Server右侧的Configure…按钮,在弹出窗口中,在Jetty Home中选择Jetty根目录路径,会自动带出其余的参数额外勾选jmx.mod在

2020-08-17 15:49:48 1337

原创 周末杂谈:程序员的理财观

文章目录前言一、理财概念?二、程序员的理财观1. 理财准备2.理财原则3.建立自己的投资逻辑总结前言程序员的工作需要严谨的态度、超强的逻辑思维、持续的学习能力,这些要素经过强化与训练,同样在理财这样这件事上也可以灵活应用、毕竟培养经济头脑对每个人来说都是非常重要的。本文只对一些理财观念浅尝辄止,仅做参考。一、理财概念?一说到理财,通常会提到一个词–财务自由,对于这个词,又往往会转化为一个问题:“我们得有多少钱,才能实现财务自由?”有人用绝对值来回答:财务自由的门槛,一线城市是2.9亿

2020-08-15 10:50:05 1190

原创 Spring完整揭秘(十一):通过三张图认识Spring MVC的架构

一、Spring MVC处理请求的流程图二、Spring MVC处理请求的结构图三、Spring MVC时序图

2020-08-14 17:08:01 386

原创 Spring完整揭秘(十):通过实际案例摸清楚Spring事务传播的行为

文章目录事务传播案例准备案例解析1、无事务2、 Propagation.REQUIRED3. Propagation.SUPPORTS4. Propagation.MANDATORY5. Propagation.REQUIRED_NEW6. Propagation.NOT_SUPPORTED7. Propagation.NEVER8. Propagation.NESTED注意点事务传播对于Spring事务传播的七大行为,我们往往还停留在一些概念上,比如下面这张表:定义说明

2020-08-13 16:00:08 247

原创 Spring完整揭秘(九):Spring的事务管理

文章目录认识事务Spring事务架构TransactionDefinition 接口:TransactionStatus 接口PlatformTransactionManager接口Spring 声明式事务管理基于 @Transactional 的声明式事务管理@Transactional声明式事务的例子认识事务以可控的方式对数据资源进行访问的一组操作称为事务;在事务执行前后,数据资源所承载的系统状态始终处于正确的状态。事务特性(ACID)原子性(Atomicity):事务包括的全部操作是一个整

2020-08-12 15:43:45 199

原创 Spring完整揭秘(八):Spring ORM 同时集成JPA与Mybatis

文章目录ORMSpring ORMSpring ORM 同时集成JPA与Mybatis一、创建一个SpringBoot项目二、建立用户信息登记表三、Web应用项目集成mysql四、添加Spring Data JPA和Mybatis依赖五、添加数据表映射实体类六、创建数据接口层6.1 声明JPA接口6.2 声明MyBatis接口七、创建业务服务层八、创建控制器九、设计视图模板9.1 设计一个用户列表的视图模板9.2 设计一个提交用户信息的表单模板9.3 设计一个用户模糊查找页面模板十、运行应用10.1用户列表

2020-08-11 14:58:43 864

原创 Spring完整揭秘(七):使用Spring JDBC访问数据

文章目录DAO模式DAO模式示例JDBC API基于 Spring JdbcTemplate的数据访问层实现将SQLException转译到DataAccessExceptionSpringBoot使用JdbcTemplate的配置JdbcTemplate的常用方法完整案例DAO模式为了统一和简化软件系统的数据访问操作,在常规的Java软件系统分层中,都会定义DAO数据访问层,使用该模式,既可以分离业务逻辑与数据访问,又可以屏蔽各种数据底层操作的差异。DAO模式示例使用DAO模式访问用户数据

2020-08-10 14:58:48 231

原创 Java框架设计的灵魂--反射的基础知识

概念反射是可以在一个类运行的时候获取类的信息的机制,是Java语言的高级特性。为什么Java语言具有反射机制呢?因为在编写Java源代码(*.java)时类的信息通过编译器编译保存在Class对象中,而这个Class对象是在程序运行时被类加载器(ClassLoader)动态加载。.类加载器(ClassLoader)将类对象中文件(*.class)中的成员变量,构造方法,成员方法等加载到内存中,在运行时阶段就可以动态地获取Class对象的信息以及动态操作Class对象的属性和方法了。获取

2020-08-09 16:23:48 215

原创 周末杂谈:程序员的沟通方式

引言程序员在工作或生活中往往会碰到这样一个难题:由于沟通能力的不足,自己的语言表达方式是“简单粗暴”的,而且常常会引发自己和他人的痛苦。我们需要一种沟通方式,依照它来谈话和倾听,使得自己与他人之间能情意相通,乐于互助。沟通的四个要素一、语言想一下你去医院看病时与医生沟通的感受…,“望闻问切”就是医生与病人之间的沟通要素,一个好的医生通过这种方式,能初步诊断病人的病症,打消病人的疑虑,配合接下来的治疗。借用这种方式,我们与他人沟通应该怎么做?用能够表达客观感受的语言,而不是主观评价的语言进

2020-08-08 12:00:56 605

原创 十二时辰手把手教你入门Spring

背景本文章通过实战的方式掌握Spring的企业级开发功能,适合刚开始学习Spring框架的Java开发人员快速上手。第1时辰、Spring起步 第2时辰、基于SpringMVC开发web应用第3时辰、实现数据持久化第4时辰、使用Spring Data实现数据持久化第5时辰、使用Spring Security安全框架保护web应用第6时辰 、Spring的配置属性第7时辰、Spring集成REST API服务第8时辰、Spring集成JavaMailSender实现邮件发送第9时辰、Sp

2020-08-07 08:56:12 487

原创 Spring完整揭秘(六):使用maven建立Spring AOP 的完整案例

项目工程导入依赖首先新建一个maven项目,在项目的pom.xml中添加spring相关及AOP的依赖项:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/

2020-08-06 17:05:41 4767

原创 Spring完整揭秘(五):Spring的AOP框架

文章目录AOP的概念AOP 中的基础要素:Java平台AOP的实现Spring的AOP框架@ AspectJ形式的Spring AOPSpring AOP 应用案例AOP的概念AOP全称Aspect -Oriented Proramming,中文称为面向切面编程:AOP 中的基础要素: Join point(连接点):程序能被拦截的某些目标,比如某个执行方法。Advice(通知):是指在特定的连接点(Join point)要做的动作。通知分为方法执行前通知(Before Advice),方

2020-08-05 13:08:32 384

原创 Spring完整揭秘(四):Spring的IoC容器之基于注解的自动装配

文章目录背景classpath-scanning注解@Autowired使用 @PostConstruct完整测试背景在《Spring的IoC容器之BeanFactory》与Spring的IoC容器之ApplicationContext两篇文章中,我们在xml文件中配置bean标签,实现了依赖注入,本文将介绍基于注解的方式实现自动装配。classpath-scanning在前面的示例中我们需要将相应对象的bean定义,一个个地添加到IoC容器的配置文件中,如果bean的数量越来越多,配置文件会

2020-08-04 11:53:40 239

原创 Spring完整揭秘(三):Spring的IoC容器之ApplicationContext

文章目录ApplicationContext与BeanFactory的区别Spring统一资源加载策略ApplicationContext 与 统一资源Resource的关系ApplicationContext多配置模块加载的简化ApplicationContext与MessageSourceApplicationContext与BeanFactory的区别Spring提供了基本的IoC容器: BeanFactory, 在此基础上又提供了更为先进的IoC容器:ApplicationContext,该容

2020-08-03 11:58:57 683

原创 通过方法引用简化Lambda表达式

文章目录方法引用的新特性方法引用的常用方式通过对象名引用成员方法通过类名的静态成员方法构造器引用方法引用的新特性在上篇文章《深入理解Java Stream流》结尾处,我们通过一个具体的例子展现了Stream流的应用,其中有这样一段代码: public static void main(String[] args) { // 创建两个班级的学生集合 ... // 通过流的方式得出两个班级的超过90分的前三名学生 ... // 合并

2020-08-02 17:38:28 364

原创 周末杂谈--程序员的精准努力之路

背景 人很容易落入“只要有用”的陷阱:认为“有用”的事情就要花时间去做;只要努力了就会获得“收获”; 有用不等于值得错误的目标会有认为“有用”的事情变成无用;值不值得,要把机会成本考虑进去;程序员的专注力、时间、精力都是有限的:必须选择一种有节制的、更专注的努力方式,识别出关键的问题,去追求更高的效率,追求有用做功;拥有这种思维的人,才能赢得更快,走得更远。设定可完成的目标想想这个问题:为什么你制定的目标,从来都完不成?首先,对自己要执行的事情根本不了解。比如设定一个读书计划,

2020-08-01 12:28:20 296

微信小程序使用的md5.js

微信小程序使用的md5.js,用于加解密 /* * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message * Digest Algorithm, as defined in RFC 1321. * Version 1.1 Copyright (C) Paul Johnston 1999 - 2002. * Code also contributed by Greg Holt * See http://pajhome.org.uk/site/legal.html for details. */

2020-07-29

maven .xmind

maven架构思维导图,分为maven项目目录结构,常用构件命令,生命周期,仓库,POM常见元素,依赖范围等,可供下载学习分析使用

2020-03-19

Web Developer.png

web开发思维导图图片,分为三个部分:基本,前端开发,后端开发。

2019-08-19

web developer.xmind

Web Developer 思维导图,分三个维度:基本技能;前端开发;后端开发

2019-08-19

.net cf 3.5安装包

wince .net compact framework 3.5安装包

2015-12-26

某公司OA系统源码,不错的学习工具

不错的公司OA源代码,ms visual studio 2003开发环境

2009-10-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除