自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 收藏
  • 关注

原创 springboot配置动态数据源

springboot配置动态数据源编写保存数据源选择key的容器类public class RoutingDataSourceContext { private static ThreadLocal<String> routingDataSourceKey = new ThreadLocal<>(); public RoutingDataSourceContext(String key){ routingDataSourceKey.set(

2021-03-01 20:35:28 260

原创 freemarker去除字符串中的html标签

有的时候在后台返回来的字符串什么的有一些不需要的html字符,直接打到页面上freemarker也不能直接解析,所以就需要把这些字符去掉,网上找了很多但说的都不完整,自己记录下:错误写法:${oo.otherInfo?replace("<.*?>","",“r”)}正确写法${oo.otherInfo?replace("&lt;.*?&gt;","",“r”)}...

2020-04-29 12:03:29 1845 1

原创 springboot 2.0+ 自定义拦截器 静态资源问题

之前项目的springboot自定义拦截器使用的是继承WebMvcConfigurerAdapter重写常用方法的方式来实现的.静态文件不需要进行放行,springboot会自动帮你放行。springboot2.0之后如果想要自定义的话就不可以了,需要手动放行静态资源。此处我是实现了WebMvcConfigurer来自定义拦截器(根据需求也可以继承WebMvcConfigurationSuppo...

2019-08-13 16:13:41 724 2

原创 Spring-boot自动配置原理

首先利用Spring Initializr方式创建springboot项目,查看springboot主配置类:@SpringBootApplicationpublic class SpringBootAutoconfigurationYuanliApplication {点击进入SpringBootApplication注解@SpringBootConfiguration@Enable...

2019-08-06 17:05:58 1082

原创 继承和多态

继承继承是面向对象编程的三大特征之一,是一种基于已有类来创建新类的机制。由继承而得到的类称为子类(或派生类),被继承的类称为父类(或超类)。Java中每个类只允许有一个父类。语法如下:class <子类> extends <父类>Object类是所有类的直接父类或间接父类。根据访问权限修饰符的不同,子类可以继承父类中某些成员变量和方法,提高了代码的重用性,子类也可...

2019-07-25 14:26:55 226

原创 SpringAOP中各种增强方法

Spring配置文件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.spri...

2019-07-16 21:03:17 557

原创 详述SpringAOP实现及执行过程

       AOP(Aspect Oriented Programming 面向切面编程)是一种通过运行期动态代理实现代码复用的机制,是对传统OOP(Object Oriented Programming,面向对象编程 )的补充。目前,Aspectj是Java社区里最完整最流行的AOP框架,在Spring 2.0以上版本中可以...

2019-07-16 17:56:00 376

原创 Spring 实现事务管理

编程式事务管理:将事务管理代码嵌入到业务方法中来控制事务的提交和回滚,在编程式管理事务中,必须在每个事务操作中包含额外的事务管理代码。https://blog.csdn.net/Zzze0101/article/details/90176413声明式事务管理:大多情况下比编程式事务管理更加好用,此方式将事务管理代码从业务代码中分离出来,以声明的方式实现事务管理,Spring声明式事务管理建立...

2019-07-14 21:04:48 519

原创 变量提升与函数提升

一般来说变量的声明有创建,初始化,赋值3个过程。var变量提升如下代码:<script type="text/javascript"> var name='Tom'; (function(){ console.log(name);//输出undefined,为什么? var name='Tim'; })();</script>JavaS...

2019-07-12 13:30:18 154

原创 数据库连接池

为什么       数据库连接是一种关键、有限且昂贵的资源,创建和释放数据库连接是一个很耗时的操作,频繁地进行这样的操作将占用大量的性能开销,进而导致网站的响应速度下降,严重的时候可能导致服务器崩溃;数据库连接池可以节省系统许多开销。是什么       ...

2019-07-12 11:38:34 189

原创 JavaScript中let关键字和const关键字

let和var一样,let也用于声明变量,那么var声明的变量和let声明的变量有何不同:全局作用域:let声明的变量不会作为全局对象window的属性,而var声明的变量则可以,如下代码:<script type="text/javascript"> let address="河南省郑州市高新区"; console.log(address);//浏览器控制台输出:河南省...

2019-07-11 16:55:23 572

原创 TCP与UDP区别

TCP面向连接,发送数据前要先建立连接;UDP是无连接的,发送数据前不需要建立连接;TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,不保证可靠交付;UDP有较好的实时性,效率比TCP高,适用于对高速传输和实时性较高的通信或广播通信;每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信;TCP的编程步骤://服务器端imp...

2019-07-10 11:55:40 171

原创 Integer中的valueOf方法以及自动装箱和拆箱

自动拆箱和装箱是从JDK5.0才开始有的,它方便了基本数据类型和其对应的包装类型之间的转换。将一个基本数据类型的值赋给其所对应的包装类型称之为自动装箱;将一个基本数据类型包装类类型的值赋给其所对应的基本数据类型称之为自动拆箱。我们运行如下代码:public class Test { public static void main(String[] args) { Integer a ...

2019-07-09 21:53:47 902 1

原创 详述Spring Bean生命周期

Bean对象生命周期流程通过构造方法或工厂方法创建bean对象,为bean属性赋值,调用 bean 的初始化方法,即init-method指定方法,bean实例化完毕,可以使用,容器关闭, 调用 bean 的销毁方法,即destroy-method指定方法。init-method:在设置bean的属性后执行的自定义初始化方法,注意:①、该方法不能有参数;②、对象每创建一次就会执行一...

2019-07-09 21:11:42 200

原创 浅析List、Set和Map集合扩容机制

一、List集合1、ArrayList下面是有关ArrayList容量的源码private static final int DEFAULT_CAPACITY = 10;//默认容量10private static final Object[] EMPTY_ELEMENTDATA = {};private static final Object[] DEFAULTCAPACITY_EMP...

2019-07-09 20:51:53 344

原创 Spring域对象

scope=“singleton”:默认值,IoC容器中只存在一个Java类对象,此时Java对象为单例,即每次从IoC容器获取的Java对象都是同一个;scope=“prototype”:每次从IoC容器获取Java对象都是新的对象;scope=“request”:每次HTTP请求都会创建一个新的Bean,该作用域只适用于WebApplicationContext环境;scope=“ses...

2019-07-08 21:23:48 377

原创 Spring——如何为构造方法中不同数据类型参数赋值

Test类:public class Test { public static void main(String[] args) { //创建Spring IOC容器对象 ClassPathXmlApplicationContext applicationContext =new ClassPathXmlApplicationContext("bean.xml"); }}...

2019-07-08 21:23:01 629

原创 Spring懒加载

默认情况下,IOC容器初始化时便会把bean实例化(即创建对象),如下:public class HelloWorld { public HelloWorld() { System.out.println("HelloWorld!"); }}public class Test { public static void main(String[] args) { //创建Sp...

2019-07-08 20:13:59 1110

原创 1、如何搭建Spring工程

1、通过在Eclipse IDE中安装Spring Tool Suite(STS)插件可以很方便地创建Spring、SpringMVC及Spring Boot工程,在Eclipse IDE中安装Spring Tool Suite(STS)插件,a、访问http://spring.io/tools/sts/all网页,下载和所用Eclipse版本对应Spring Tool Suite离线工具,由于...

2019-07-08 20:04:52 203

原创 CGlib动态代理

通过一个计算器的实现来简单描述JDK动态代理的作用和原理。接口public interface ICalculator { int add(int a, int b);}实现类public class Calculator implements ICalculator { @Override public int add(int a, int b) { int r...

2019-07-07 17:28:54 179

原创 详述Java类加载机制

类加载器是什么?Java类加载器(Java Classloader)负责动态地将Java类加载到Java虚拟机的内存空间内, 是Java运行时环境(Java Runtime Environment)的一部分,JVM默认有3个类加载器,每个类加载器负责加载特定位置的Java类。一、Bootstrap ClassLoader(引导类加载器)该类加载器通常由C++语言实现,不继承任何Java类,负...

2019-07-05 22:15:55 236

原创 初识MyBatis

目录一、什么是MyBatis?二、为什么使用MyBatis?三、如何使用MyBatis?1、准备工作2、使用一、什么是MyBatis?MyBatis源自Apache的iBatis开源项目, 从iBatis3.x开始正式更名为MyBatis。它是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connecti...

2019-07-05 15:56:30 150

原创 线程常用方法

joinjoin方法:执行该方法的线程进入阻塞状态,直到调用该方法的线程结束后再由阻塞转为就绪状态。package com.zzu.test;public class Join { public static void main(String[] args) { TestThread2 testThread2 = new TestThread2(); TestThread...

2019-07-03 20:58:48 319

原创 进程与线程概述

1、进程与线程区别进程进程(process)指一个程序的一次执行过程。编写一段简单代码并执行:package com.zzu.test;public class Test1 { public static void main(String[] args) { try { Thread.sleep(10000); } catch (InterruptedException...

2019-07-03 14:15:30 160

原创 JDK动态代理

通过一个计算器的实现来简单描述JDK动态代理的作用和原理。接口public interface ICalculator { int add(int a, int b);}实现类public class Calculator implements ICalculator { @Override public int add(int a, int b) { int r...

2019-07-02 18:43:06 205

原创 反射

反射Java反射(Reflection)是一种新的操作类中成员变量、构造方法和普通方法的机制,为了实现对成员变量、构造方法和普通方法的操作,我们需要借助Java自身提供的java.lang包下的Class类和java.lang.reflect包下的反射API 。package 反射;public class Student { public static String name; p...

2019-06-27 20:05:48 186

原创 IO

IO流I是指Input(输入),O是指Output(输出)。在Java中,文件的输入和输出是通过流(Stream)来实现的,流的概念源于Unix中管道(pipe)的概念。在Unix系统中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。对于流...

2019-06-27 10:45:08 172

原创 File类常用方法总结

3种创建File对象方式import java.io.File;public class Test { public static void main(String[] args) { File file1 = new File("D:\\Program_Files\\test.txt");//第一种获取方式 File file2 = new File("D:\\Program_...

2019-06-26 18:33:45 1873

原创 自定义注解

定义语法注解语法结构:[public] @interface 注解名 { [属性1;] [属性2;] ... [属性n;]}属性语法结构:数据类型 属性名() [default 默认属性值];示例public @interface TestAnnotation { String value();}修饰自定义注解的元注解@Target用于指定被修饰的自定义注解只...

2019-06-21 17:49:09 439

原创 详述域对象监听器

域对象创建和销毁的事件监听器就是用来监听ServletContext、HttpSession和HttpServletRequest这三个对象的创建和销毁事件的监听器。域对象创建时机销毁时机ServletContextWeb服务器启动时为每个web应用程序创建相应的ServletContext对象。Web服务器关闭时为每个web应用程序销毁相应的ServletContex...

2019-06-19 17:12:10 162

原创 Filter生命周期

1、创建与配置创建实现Filter接口的Java类并实现Filter接口,在web.xml文件中进行注册和设置它所能拦截的资源;<filter-mapping> <filter-name>Filter</filter-name> <url-pattern>*.do</url-pattern> </filter...

2019-06-19 11:03:28 491

原创 cookie详解

cookie1、简介Cookie 可以翻译为“小甜品,小饼干” ,Cookie 在网络系统中几乎无处不在,当我们浏览以前访问过的网站时,网页中可能会出现 :你好 XXX,这会让我们感觉很亲切,就好像吃了一个小甜品一样。这其实是通过访问主机中的一个文件来实现的,这个文件就是 Cookie。在 Internet 中,Cookie 实际上是指小量信息,是由 Web 服务器创建的,将信息存储在用户计算...

2019-06-17 17:35:46 3165

原创 Servlet生命周期

1、加载及实例化Servlet容器负责加载和实例化Servlet。当客户端第一次给服务器发送该Servlet请求时,Servlet容器会加载并创建Servlet实例,(注意:默认情况下不是Tomcat服务器或服务器上的Web应用启动的时候加载并实例化Servlet)。当客户端(可以是非第一次请求的客户端)再次向服务器发送该Servlet请求时,服务器会从内存中查找该Servlet实例,并用找到的...

2019-06-16 17:26:47 127

原创 如何找到相应Servlet类及其方法

index.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4...

2019-06-16 13:40:23 752

原创 请求转发和重定向

1、请求转发这里的“请求”是名词,请求转发指客户端浏览器向Web服务器端发送请求,服务器端收到请求后进行相应处理后再将该请求转发到另外的资源(即这一“转发”操作是在Web服务器端执行的),服务器端对该资源进行处理后反馈给客户端。...

2019-06-13 21:34:25 224

原创 事务隔离级别—— SERIALIZABLE(序列化)

首先,我们先设置MySQL事务隔离级别为SERIALIZABLE在my.ini配置文件最后加上如下配置#可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.[mysqld]transaction-isolation = SERIALIZABLE重启MySQL服务1、脏读提出问题例如: ...

2019-06-08 15:56:29 5388

原创 事务隔离级别——REPEATABLE-READ(重复读)

首先,我们先设置MySQL事务隔离级别为REPEATABLE-READ在my.ini配置文件最后加上如下配置#可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.[mysqld]transaction-isolation = REPEATABLE-READ重启MySQL服务1、脏读提出问...

2019-06-08 15:24:05 7324 3

原创 事务隔离级别——READ-COMMITTED(读已提交)

首先,我们先设置MySQL事务隔离级别为Read committed在my.ini配置文件最后加上如下配置#可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.[mysqld]transaction-isolation = READ-COMMITTED重启MySQL服务1、脏读提出问题...

2019-06-08 14:47:45 29397 7

原创 事务隔离级别——READ-UNCOMMITTED(读未提交)

首先,我们先设置MySQL事务隔离级别为Read uncommitted在my.ini配置文件最后加上如下配置#可选参数有:READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE.[mysqld]transaction-isolation = READ-UNCOMMITTED重启MySQL服务1、脏读提...

2019-06-08 14:30:27 5449

原创 javascript以及jQuery绑定事件方式

1、javascript绑定事件方式在标签中绑定点击事件<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script> function test(){ console.log("点击成功!"...

2019-06-03 21:48:47 574

HikariCP数据库连接池所需jar包.zip

spring所需jar包,数据库所需jar包,HikariCP数据库连接池所需jar包,打包下载

2019-07-12

空空如也

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

TA关注的人

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