自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 收藏
  • 关注

原创 junit测试基础和由来

Junit是一个java测试工具写一个person类使用Junit测试框架的好处原因,以前测试一个类的方法时,使用main方法会测试完一个,然后注释一个方法,再测试下一个断言会提供很多方法测试这样写代码也可以由测试驱动开发(TTD)...

2020-03-20 09:25:48 263

原创 springboot和WebJars结合

什么是WebJars?WebJars是一个很神奇的东西,可以让大家以jar包的形式来使用前端的各种框架、组件。WebJars是将客户端(浏览器)资源(JavaScript,Css等)打成jar包文件,以对资源进行统一依赖管理。WebJars的jar包部署在Maven中央仓库上。WebJars是打包到JAR(Java Archive)文件中的客户端Web库(例如jQuery和Bootstrap...

2020-03-07 17:00:01 997

原创 springboot访问静态资源两种情况

1.springboot自身访问静态资源2.springboot结合第三方模版引擎访问静态资源先贴上一个项目springboot自身访问静态资源1.在springboot项目中,访问静态资源是怎么配置的?哪里体现?springboot默认访问静态资源路径是(1)classpath:/META-INF/resources/(2)classpath:/resources/(3)clas...

2020-03-07 10:46:05 5305 1

原创 spring security原理(1)

这部分是介绍责任链设计模式,因为spring security是基于过滤器链模式的这里有一篇文章,很好地介绍了责任链模式https://www.cnblogs.com/java-my-life/archive/2012/05/28/2516865.html下面了解tomcat中过滤器链全过程1.java servlet规范中,定义了过滤器和过滤器链技术2.从tomcat的过滤器链开...

2020-03-05 11:41:22 188

原创 jar包的几种制作方式

写本文章的目的,是回归最基础的jar包打包方式,jar包稍稍有错误就会完全无法运行jar包几种制作方式:1.普通java项目打jar包2.maven的打包方式3.springboot的打jar包的原理普通java项目打jar包方式1.使用IDEA工具打包首先创建一个普通java项目IDEA打jar包流程然后构建打开jar包(2)使用IDEA模仿sprin...

2020-03-03 01:29:38 4283

原创 springboot搭建方式和打jar包

springboot的搭建方式有两种1、继承springboot项目<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <v...

2020-03-02 23:19:37 129

原创 ini配置文件

为什么要用INI文件?如果我们的程序没有任何配置文件时,这样的程序对外是全封闭的,一旦程序需要修改一些参数必须要修改程序代码本身并重新编译,这样很不好,所以要用配置文件,让程序出厂后还能根据需要进行必要的配置;配置文件有很多,如INI配置文件,XML配置文件,还有就是可以使用系统注册表等。链接:https://www.jianshu.com/p/089416d8cb29...

2020-02-28 13:54:57 281

原创 linux的命令行操作和shell的区别

shell翻译成壳的意思,它是包裹在linux内核外层的,一个可通过一系列的linux命令对操作系统发出相关指令的人机界面。 shell可以通过其条件语句和循环语句等,把一系列linux命令结合在一起,形成一个相当于面向过程的程序,shell script,来实现一些较为复杂的功能。总括,shell是linux命令集的概称,是属于命令行的人机界面。Shell 是一个用C语言编写的程序,它是用户使...

2020-02-25 14:04:10 1176

转载 Docker容器的数据卷

Docker容器的数据卷(data volume),数据卷容器,数据卷的备份和还原。数据卷就是数据(一个文件或者文件夹)。Docker的理念之一是将应用与其运行的环境打包,docker容器的生命周期是与其运行的程序一致的,而对数据的要求是持久化,docker容器之间也需要有共享数据的渠道。数据卷是特殊的目录,可以绕过联合文件系统,为一个或多个容器提供访问。数据卷设计的目的是数据的永久化,是...

2019-12-04 10:39:32 114

原创 maven依赖说明之(optional)

解析一:应用场景:projectA 依赖projectB, projectB 依赖projectC时<dependency> <groupId>com.itear.projectC</groupId> <artifactId>projectC</artifactId> <version>0.0.1-SNA...

2019-11-15 10:10:30 973

原创 ORM是什么?

半自动化框架(mybatis)全自动化框架(hibernate,springJPA(基于hibernate))

2019-11-13 11:43:05 103

原创 mysql事务手动和自动提交问题

手动提交:autocommit=0当用户执行start transaction命令时(事务初始化),一个事务开启,当用户执行commit命令时当前事务提交。从用户执行start transaction命令到用户执行commit命令之间的一系列操作为一个完整的事务周期。若不执行commit命令,系统则默认事务回滚。自动提交:autocommit=1(系统默认值)如果用户在当前情况下...

2019-11-13 11:34:39 1920

原创 HTTP网络劫持的原理与过程

网站HTTP被劫持怎么办?在上网的过程中,我们经常会遇到DNS或者http被劫持的情况。HTTP劫持对于运营商来说,再简单不过了,当然,HTTP劫持并不是运营商才能做的事,一些黑客、浏览器厂商、手机厂商都可以做到,显然这个锅不能让运营商一个人来背,那么HTTP被劫持怎么办,如何预防了,HTTP网络劫持的原理与过程又是什么呢?什么是HTTP劫持?在用户的客户端与其要访问的服务器经过网络协议协...

2019-11-07 20:48:50 2360

原创 Linux安装maven

创建maven的文件夹并下载maven的tar包到此文件夹中//进入一个目录cd /usr/local//创建一个文件夹mkdir maven//下载maven的tar包wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz//解压tar包ta...

2019-10-14 17:21:22 174

原创 对HTML的认识

什么是HTML?HTML的英文全称是 Hypertext Marked Language,即超文本标记语言。HTML是一种标记语言,它能独立于各种操作系统平台(如UNIX, Windows等)。用HTML编写的超文本文档称为HTML文档使用HTML语言,将所需要表达的信息按某种规则写成HTML文件,通过专用的浏览器来识别,并将这些HTML文件“翻译”成可以识别的信息,即现在所见到的网页。...

2019-09-29 12:04:13 2244

原创 jenkins远程ssh部署问题

先看网上的一个解析linux有几种登录方式?有什么不一样?环境也有什么不一样?“source filename”与“sh filename”、“./filename”这三个命令都可以用于执行一个脚本文件,那么它们之间的区别又如何呢?(一)当shell脚本具有可执行权限时,用sh filename与./filename是没有区别的。./filename是因为当前目录没有在PATH中,所以"...

2019-09-27 11:46:24 908

原创 zookeeper安装集群全过程

zookeeper安装1.百度zookeeper2.进入官方页面3.由第二步进入4.由第3步进入5.由第4步进入6.由第5步进入7.然后在Linux系统下载,如下8.解压安装查看zookeeper的配置文件知道,zookeeper访问端口默认是2181,所以要配置打开端口firewall-cmd --zone=public --add-port=2181/...

2019-09-25 15:22:33 215

原创 CPU指令集

CPU指令集是CPU厂家设计CPU的时候规定的,程序员根据这个CPU的指令集写程序举个例子:比如某厂家设计了一个CPU,指令集有(吃饭,睡觉,看电视),当程序员拿到这三个指令时,编写一个程序,只能让CPU做这三件事,其他的都不会.后来CPU设计也增加了指令集,除了(吃饭,睡觉,看电视)外,还可以(做饭,洗衣服,炒菜),那么这时,程序员写程序让CPU干的事情就多了起来...

2019-09-21 14:39:19 1746

原创 mysql统计24小时数据

示例1:根据时间点统计个数 SELECT DATE_FORMAT(create_time,'%Y-%m-%d %H') AS date, COUNT( * ) AS dateCount FROM sys_menu WHERE date( create_time ) = curdate( ) ...

2019-09-17 16:08:53 5852

原创 mysql统计某个字段不同值的个数

1.使用group byselect count(*),‘列名’ from tablename group by ‘列名’2.使用sum和group by结合select name,sum(case when status=2 then 1 else 0 end ),sum(case when status<>2 then 1 else 0 end )from table...

2019-09-10 16:07:03 20260 1

原创 nginx配置文件

nginx各种配置情况1.在nginx默认的配置文件里,配置子配置文件指定扫描路径[root@ibudata01-v1 nginx]# cat nginx.conf# For more information on configuration, see:# * Official English Documentation: http://nginx.org/en/docs/# *...

2019-08-26 12:03:48 161

原创 创建docker镜像

基于Centos71.启动docker守护进程,docker是C/S架构,类似mysqlsystemctl start docker2.为了方便操作,关闭防火墙systemctl stop firewalld3.查看本地有的镜像docker images4.搜索镜像docker search 镜像名称(可模糊)5.下载镜像docker pull ubuntu:15...

2019-08-15 23:56:59 152

原创 沙箱机制

1.为什么需要沙箱机制?默认情况下,一个应用程序是可以访问机器上的所有资源的,比如CPU、内存、文件系统、网络等等。但是这是不安全的,如果随意操作资源,有可能破坏其他应用程序正在使用的资源,或者造成数据泄漏。为了解决这个问题,一般有下面两种解决方案:(1) 为程序分配一个限定权限的账号:利用操作系统的权限管理机制进行限制(2) 为程序提供一个受限的运行环境:这就是沙箱机制2.什么是沙箱机...

2019-08-13 10:36:02 11893 1

原创 maven生命周期注意事项

Maven 有以下三个标准的生命周期:clean:项目清理的处理default(或 build):项目部署的处理site:项目站点文档创建的处理这里说前两个首先说说清理生命周期,也就是第一个Clean 生命周期pre-clean:执行一些需要在clean之前完成的工作clean:移除所有上一次构建生成的文件post-clean:执行一些需要在clean之后立刻完成的工作第二个生...

2019-08-09 11:59:34 151

原创 Java中List集合去除重复数据的方法

循环list中的所有元素然后删除重复public static List removeDuplicate(List list) { for ( int i = 0 ; i < list.size() - 1 ; i ++ ) { for ( int j = list.size() - 1 ; j...

2019-08-06 16:10:47 103

转载 Java-利用Spring提供的Resource/ResourceLoader接口操作资源文件

背景JDK提供的访问资源的类(如java.net.URL、File等)并不能很好地满足各种底层资源的访问需求,比如缺少从类路径或者Web容器上下文中获取资源的操作类。Spring提供了Resource接口,为应用提供了更强的底层资源访问能力,该接口拥有对应不同资源类型的实现类。资源访问接口主要方法boolean exists() 资源是否存在boolean isOpen() 资源是否...

2019-07-27 10:37:06 1004

原创 springboot中监听器使用

在springboot 应用中,使用监听器有servlet容器的,有spring的一:先看springboot中怎么使用servlet的监听器(servlet容器中的)定义servlet监听器package com.hzt.listener;import javax.servlet.ServletContextEvent;import javax.servlet.ServletCont...

2019-07-24 15:00:48 5665

转载 微信开发 OpenID和UnionID的区别

微信openid和unionid1.长度是不一样的:openid=28,unionid=292.openid同一用户同一应用唯一,unionid同一用户不同应用唯一(这里的不同应用是指在同一微信开发平台下的不同应用)为了识别用户,每个用户针对每个公众号会产生一个安全的openid。如果需要在多公众号、移动应用之间做用户共通,则需要前往微信开放平台,将这些公众号和应用绑定到一个开放平台账号...

2019-07-24 10:54:10 6667

转载 一步一步认识spring(2)

bean的生命周期bean的完整生命周期从spring容器着手实例化bean开始,直到最终销毁bean。其中经过了很多关键点,每个关键点都涉及到特定的方法调用,我们可以将这些方法大致分以下四类。Bean自身的方法Bean级生命周期接口方法容器级生命周期接口方法工厂后处理器接口方法Bean自身的方法调用Bean的构造函数实例化Bean,调用setter设置Bean的属性值以及通过 的 ...

2019-07-23 12:00:39 108

转载 一步一步认识spring(1)

这一篇说说怎么理解spring框架IoC与DI首先想说说IoC(Inversion of Control,控制倒转)。这是spring的核心,贯穿始终。所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。这是什么意思呢,举个简单的例子,我们是如何找女朋友的?常见的情况是,我们到处去看哪里有长得漂亮身材又好的mm,然后打听她们的兴趣爱好、qq号、电话号...

2019-07-23 10:44:22 97

转载 Mysql跨数据库事务

跨库事务问题1、首先要确保mysql开启XA事务支持SHOW VARIABLES LIKE ‘%XA%’2.如果innodb_support_xa的值是ON就说明mysql已经开启对XA事务的支持了。如果不是就执行:SET innodb_support_xa = ON<?PHP$dbtest1 = new mysqli("172.20.101.17","public","pub...

2019-07-22 12:51:43 9861

原创 springAOP

https://blog.csdn.net/luanlouis/article/details/51095702https://blog.csdn.net/luanlouis/article/details/51155821切面执行顺序一个方法只被一个Aspect类拦截正常:异常:

2019-07-20 15:35:48 66

原创 为什么dubbo需要用到JDK的动态代理

先说明:有A和B两台服务器,然后在B服务器开发接口和实现类.将B服务器中开发好的接口拿到A服务器中使用,就是A服务器中的程序拿到接口调用B服务器中的实现.这个过程是怎么做的?假设A服务器拿到了接口public interface A { void get(String s);}然后怎么调用该A接口在B服务器中的调用?以下模拟:public class TestDemo...

2019-07-19 16:14:05 1796 2

转载 关于jar包和工程src里面class相同的加载优先级问题

之前碰到一个疑虑,客户生产环境里面有个jar包里面的class文件和src 路径下 编译出来的class 相同(包名,类名,里面的逻辑不同),但偏偏在客户那里正常跑了3个月(tomcat),于是自己写了个demopublic class TestJvmLoaderServlet extends HttpServlet { @Override protected void doGet...

2019-07-19 10:16:00 5655 2

原创 大白话操作数栈

先看概念1.和局部变量区一样,操作数栈也是被组织成一个以字长为单位的数组。但是和前者不同的是,它不是通过索引来访问,而是通过标准的栈操作—压栈和出栈—来访问的。比如,如果某个指令把一个值压入到操作数栈中,稍后另一个指令就可以弹出这个值来使用。2.虚拟机在操作数栈中存储数据的方式和在局部变量区中是一样的:如int、long、float、double、reference和returnType的存储...

2019-07-18 16:24:11 1753

原创 总结jvm和java程序的启动

1.首先是普通的java程序启动比如:java person.class 或者在IDE开发工具中右键启动(1)首先启动jvm(jvm是c语言写的或其他),jvm启动后会创建启动类加载器,去加载java程序需要的运行环境(rt.jar等等),加载完运行环境后,再创建 Launcher 启动器,由它去创建扩展类加载器和应用类加载器,并且应用类加载器把扩展类加载器当作父类,扩展类加载指定目录的扩展j...

2019-07-12 09:39:58 488

转载 tomcat结构

https://blog.csdn.net/xlgen157387/article/details/79006434(重点)

2019-07-11 17:48:41 87

翻译 tomcat和jvm是什么关系

以下是所有解析一:Tomcat 是 Java 程序,运行在 JVM 之上,差不多和你的 QQ 运行在你的 Windows 之上一样,启动的时候做了好多好多的工作为了让你的应用能够通过 HTTP 接收和返回消息。二:Tomcat是一个Java写的http server,启动时就和所有http server差不多,监听断口,等待连接。三:题主,Tomcat和JVM的关系,不用想的太复杂,其...

2019-07-11 16:54:12 8271 1

原创 界面输入任何一个分隔符分割文本中的内容

工具类public class UnicodeUtil { /** * 把字符串转成Unicode形式的字符串 */ public static String encode(String src) throws Exception { char c; StringBuilder str = new StringBuilder(...

2019-07-10 11:33:34 780

原创 JVM的符号引用和直接引用是什么

解析一:符号引用就是一个类中(当然不仅是类,还包括类的其他部分,比如方法,字段等),引入了其他的类,可是JVM并不知道引入的其他类在哪里,所以就用唯一符号来代替,等到类加载器去解析的时候,就把符号引用找到那个引用类的地址,这个地址也就是直接引用。解析二:1.符号引用(Symbolic References):符号引用以一组符号来描述所引用的目标,符号可以是任何形式的字面量,只要使用时能够无...

2019-07-08 22:58:49 14650 8

空空如也

空空如也

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

TA关注的人

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