- 博客(20)
- 资源 (7)
- 收藏
- 关注
转载 透彻的掌握 Spring 中@Transactional 的使用
事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编码式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际使用中声明式事务用的比较多。声明式事务有两种方式,一种是在配置文件(xml)中做相关的事务规则声明,另...
2019-05-08 19:03:48 292 1
原创 浅谈Spring事务与传播行为
一、前言:参考文档:官方文档参考书籍:Spring源码深度解析二、事物的概述:1、 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。2、 一致性(Consistency) 一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性...
2019-05-08 13:29:59 229
原创 Http协议&表单防止重复提交&XSS攻击&跨域五种实战解决方案
http长连接与短连接 HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序与发出顺序一致。TCP有可靠,面向连接的特点。如何...
2019-04-21 11:14:14 1222
原创 MySQL 5.7.8以后原生JSON格式支持
在MySQL与PostgreSQL的对比中,PG的JSON格式支持优势总是不断被拿来比较。其实早先MariaDB也有对非结构化的数据进行存储的方案,称为dynamic column,但是方案是通过BLOB类型的方式来存储。这样导致的问题是查询性能不高,不能有效建立索引,与一些文档数据库对比,优势并不大,故在社区的反应其实比较一般。当然,MariaDB的dynamic column功能还不仅限于非结...
2019-04-19 14:22:05 942
原创 Spring Boot 面试技巧
我看你上面写了熟悉 Spring Boot,那你能讲下为什么我们要用 Spring Boot 吗?当面试官问起时,你会如何回答呢?下面我列几个最常见的三个回答:A:Spring Boot 最主要是不用 XML 配置,可以用 Java 来配置 bean,省去了许多配置文件。接着又问:Spring 本身就可以用 Java 配置代替 XML 配置,和 Spring Boot 有什么关系呢...
2019-04-21 15:55:59 239
原创 Spring Boot自动配置原理、实战
Spring Boot自动配置原理、实战Spring Boot自动配置原理Spring Boot的自动配置注解是@EnableAutoConfiguration, 从上面的@Import的类可以找到下面自动加载自动配置的映射。 org.springframework.core.io.support.SpringFactoriesLoader.loadFactoryNames(C...
2019-04-21 15:54:43 163
原创 Spring Boot 最核心的 3 个注解详解
Spring Boot 核心注解讲解Spring Boot 最大的特点是无需 XML 配置文件,能自动扫描包路径装载并注入对象,并能做到根据 classpath 下的 jar 包自动配置。所以 Spring Boot 最核心的 3 个注解就是:1、@Configurationorg.springframework.context.annotation.Configuration...
2019-04-21 15:47:33 357
原创 深入理解springmvc中controller内方法跳转forward与redirect
使用springmvc的controller的时候,碰到controller内方法的跳转的问题,记录下问题以及自己测试的过程。场景:业务执行更新操作之后返回列表页面,列表页面需默认展示查询的列表数据,涉及到两个controller的跳转。问题是使用forward还是redirect跳转解决问题其实使用forward或者redirect都能达到目的,但是有些问题在...
2019-04-18 08:56:51 1094
原创 Java算法从入门到精通(一)
认识时间复杂度 常数时间的操作:一个操作如果和数据量没有关系,每次都是 固定时间内完成的操作,叫做常数操作。 时间复杂度为一个算法流程中,在最差的数据情况下,常数操作数量的指标。常用O (读作big O)来表示。具体来说,在常数操作数量的表达式中, 只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分 如果记为f(N),那么时间复杂度为O(f(N))。 评价一个算法流...
2018-11-05 16:35:34 26136 4
原创 CSS入门到精通《三》
京东项目介绍项目名称:京东网 项目描述:京东首页公共部分的头部和尾部制作,京东首页中间部分。项目背景现阶段电商类网站很流行,很多同学毕业之后会进入电商类企业工作,同时电商类网站需要的技术也是较为复杂的,这里用京东电商网站复习、总结、提高前面所学布局技术。其实,最主要的原因还是,为啥写京东? 因为刘强东,赚了我们的钱,抢了我们的女神, 我们也要学刘强东,赚别人的钱,抢别人..额,自己...
2018-10-16 11:15:06 2210
原创 CSS入门到精通《二》
盒子模型(CSS重点)其实,CSS就三个大模块: 盒子模型 、 浮动 、 定位,其余的都是细节。要求这三部分,无论如何也要学的非常精通。所谓盒子模型就是把HTML页面中的元素看作是一个矩形的盒子,也就是一个盛装内容的容器。每个矩形都由元素的内容、内边距(padding)、边框(border)和外边距(margin)组成。看透网页布局的本质网页布局中,我们是如何把里面的文字,图片,按...
2018-10-16 10:17:57 456 1
原创 CSS入门到精通《一》
CSS的发展历程从HTML被发明开始,样式就以各种形式存在。不同的浏览器结合它们各自的样式语言为用户提供页面效果的控制。最初的HTML只包含很少的显示属性。 随着HTML的成长,为了满足页面设计者的要求,HTML添加了很多显示功能。但是随着这些功能的增加,HTML变的越来越杂乱,而且HTML页面也越来越臃肿。于是CSS便诞生了。CSS初识CSS(Cascading Style Shee...
2018-10-15 17:52:29 794
原创 Java并发包&线程池原理分析&锁的深度化
并发包同步容器类Vector与ArrayList区别1.ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要讲已经有数组的数据复制到新的存储空间中。当从ArrayList的中间位置插入或者删除元素时,需要对数组进行复制、移动、代价比较高。因此,它适合随机查找和遍历,不...
2018-09-04 15:39:43 272
转载 深入浅出理解JVM
一、Java虚拟机原理 所谓虚拟机,就是一台虚拟的机器。他是一款软件,用来执行一系列虚拟计算指令,大体上虚拟机可以分为系统虚拟机和程序虚拟机, 大名鼎鼎的Visual Box、Vmare就属于系统虚拟机,他们完全是对物理计算的仿真,提供了一个可以运行完整操作系统的软件平台。 程序虚拟机典型代码就是Java虚拟机,它专门为执行单个计算程序而计算,在Java虚拟机...
2018-08-20 17:15:28 332
转载 HandlerInterceptor拦截器使用和问题归纳
简介SpringMVC的处理器拦截器,类似于Servlet开发中的过滤器Filter,用于对请求进行拦截和处理。常见应用场景1、权限检查:如检测请求是否具有登录权限,如果没有直接返回到登陆页面。2、性能监控:用请求处理前和请求处理后的时间差计算整个请求响应完成所消耗的时间。3、日志记录:可以记录请求信息的日志,以便进行信息监控、信息统计等。使用方法1、配置文件<...
2018-08-13 17:30:36 1739 1
转载 史上最全 69 道 Spring 面试题和答案
Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。 2. 使用Spring框架的好处是什么? 轻量:Spring 是轻量的,基...
2018-08-09 09:01:54 151
转载 从ConcurrentHashMap的演进看Java多线程核心技术
线程不安全的HashMap众所周知,HashMap是非线程安全的。而HashMap的线程不安全主要体现在resize时的死循环及使用迭代器时的fast-fail上。注:本章的代码均基于JDK 1.7.0_67HashMap工作原理HashMap数据结构常用的底层数据结构主要有数组和链表。数组存储区间连续,占用内存较多,寻址容易,插入和删除困难。链表存储区间离散,占用内存较少,寻...
2018-07-19 13:32:10 136
转载 Tomcat 的 Server 文件配置详解
前言 Tomcat隶属于Apache基金会,是开源的轻量级Web应用服务器,使用非常广泛。server.xml是Tomcat中最重要的配置文件,server.xml的每一个元素都对应了Tomcat中的一个组件;通过对xml文件中元素的配置,可以实现对Tomcat中各个组件的控制。因此,学习server.xml文件的配置,对于了解和使用Tomcat至关重要。 本文将...
2018-06-20 10:31:02 386
转载 一分钟开启Tomcat https支持
1、修改配置文件打开tomcat/conf/server.xml配置文件,把下面这段配置注释取消掉, keystorePass为证书密钥需要手动添加,创建证书时指定的。 <Connector port="8443" protocol="org.apache.coyote.http11.Http11Pro...
2018-06-20 10:12:50 208
原创 分析了5万个开源项目,得出的排名前16的Java工具类
在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类。以下工具类、方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码。一. org.apache.commons.io.IOUtilscloseQuietly:关闭一个IO流、socket、或者selector且不抛出异常,通常放在finally块toString:...
2018-06-20 09:51:48 1997
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人