- 博客(106)
- 资源 (9)
- 收藏
- 关注
原创 简单分析JDBC如何获取数据库连接
简单分析JDBC如何获取数据库连接故事的开头我们知道JDBC(Java DataBase Connectivity)就是java数据库连接,由java定义的api来规定java如何来访问关系型数据库的。(小声哔哔:定义规则的才是大佬)各个不同的数据库都通过实现JDBC的接口从而实现java访问数据库执行SQL语句,实现的jar包就叫做数据库驱动,接下来通过简单的分析一下oracle驱动是如何实现JDBC的。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tsi7NKV2
2022-03-30 17:21:48 1494
转载 Java并发编程:Callable、Future和FutureTask
Java并发编程:Callable、Future和FutureTask 在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。 而自从Java 1.5开始,...
2020-04-23 18:32:37 177
转载 ORACLE回收站机制介绍
回收站概念从ORACLE 10g开始,引入了一个叫回收站(Recycle Bin)的概念。它的全称叫Tablespace Recycle Bin。回收站实际是一个逻辑容器(逻辑区域),原理有点类似于WINDOW系统的回收站。它以表空间中现有已经分配的空间为基础,而不是从表空间上物理划出一个固定区域用作回收站。这意味着回收站和表空间中的对象共用存储区域、系统没有给回收站预留空间。因此,当表被D...
2020-04-20 09:26:16 429
原创 Java 获取字符串Hash值
import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class TESTMD5 { public static void main(String[] args) { String str = "oper01"; try { //MessageDige...
2020-01-20 16:00:23 10844
转载 Java 如何重写对象的 equals 方法和 hashCode 方法
原文地址:https://www.cnblogs.com/yuxiaole/p/9570850.html前言:Java 对象如果要比较是否相等,则需要重写 equals 方法,同时重写 hashCode 方法,而且 hashCode 方法里面使用质数 31。接下来看看各种为什么。一、需求: 对比两个对象是否相等。对于下面的 User 对象,只需姓名和年龄相等则认为是同一个对象。...
2019-10-12 15:02:03 162
转载 Spring MVC中的拦截器/过滤器HandlerInterceptorAdapter的使用
原文地址https://www.cnblogs.com/EasonJim/p/7704740.html一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的而在Spring中,基于Filter这种方式可以实现Bean预处理、后处理。 比如注入FilterRegistrationBean,然后在这个Bean上传递自己继承Filter实现的自定义Filter进入即可。而Spring...
2018-11-16 18:29:09 197
转载 Java并发编程:volatile关键字解析
原文地址:https://www.cnblogs.com/dolphin0520/p/3920373.html#!commentsJava并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。...
2018-09-12 16:03:55 204 1
转载 Java 并发工具包 java.util.concurrent 用户指南
原文地址:https://blog.csdn.net/defonds/article/details/44021605#t8译序本指南根据 Jakob Jenkov 最新博客翻译,请随时关注博客更新:http://tutorials.jenkov.com/java-util-concurrent/index.html。本指南已做成中英文对照阅读版的 pdf 文档,有兴趣的朋友可以去 Ja...
2018-09-11 15:14:14 258
转载 Java并发问题--乐观锁与悲观锁以及乐观锁的一种实现方式-CAS
原文地址:https://www.cnblogs.com/qjjazry/p/6581568.html首先介绍一些乐观锁与悲观锁: 悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。再比如Java里面...
2018-09-11 14:55:19 262
转载 finally与return的执行顺序
原文地址:https://blog.csdn.net/goskalrie/article/details/52674852都知道,finally的执行特点1、不管有木有出现异常,finally块中代码都会执行;2、当try和catch中有return时,finally仍然会执行。那么问题来了,执行顺序是怎么样的呢?一个简单的测试类及反编译后的字节码:public cl...
2018-09-11 13:49:13 613
原创 Spring TaskExecutor与TaskScheduler
Spring Task为Spring3.0后加入的自主开发定时任务工具,区别于集成Timer与Quartz,Spring Task不需要额外的jar包,使用方便分为注解和配置文件两种形式。Spring TaskExecutor主要用来创建线程池用来管理异步定时任务开启的线程。(防止建立线程过多导致资源浪费)Spring TaskScheduler创建定时任务首先按照官网介绍一个使用线程...
2018-05-30 11:03:53 5090
转载 jvm知识点总览
原文地址:http://www.cnblogs.com/ityouknow/p/5610232.html在江湖中要练就绝世武功必须内外兼备,精妙的招式和深厚的内功,武功的基础是内功。对于武功低(就像江南七怪)的人,招式更重要,因为他们不能靠内功直接去伤人,只能靠招式,利刃上优势来取胜了,但是练到高手之后,内功就更主要了。一个内功低的人招式在奇妙也打不过一个内功高的人。比如,你剑法再厉害,一剑刺过来...
2018-04-08 10:25:35 257
转载 Java中Synchronized的用法
《编程思想之多线程与多进程(1)——以操作系统的角度述说线程与进程》一文详细讲述了线程、进程的关系及在操作系统中的表现,这是多线程学习必须了解的基础。本文将接着讲一下Java线程同步中的一个重要的概念synchronized.synchronized是Java中的关键字,是一种同步锁。它修饰的对象有以下几种: 1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码...
2018-04-03 17:05:20 169
转载 JAVA多线程————一篇文章让你彻底征服多线程开发
原文地址:https://blog.csdn.net/fang323619/article/details/73904351多线程的基本概念线程指进程中的一个执行场景,也就是执行流程,那么进程和线程有什么区别呢?每个进程是一个应用程序,都有独立的内存空间同一个进程中的线程共享其进程中的内存和资源(共享的内存是堆内存和方法区内存,栈内存不共享,每个线程有自己的。)什么是进程?一个进程对应一个应用程序...
2018-03-28 17:24:42 494
转载 MyBatis如何防止SQL注入
原文地址:https://www.cnblogs.com/200911/p/5869097.html SQL注入是一种代码注入技术,用于攻击数据驱动的应用,恶意的SQL语句被插入到执行的实体字段中(例如,为了转储数据库内容给攻击者)。[摘自] SQL injection - WikipediaSQL注入,大家都不陌生,是一种常见的攻击方式。攻击者在界面的表单信息或URL上输入一些奇怪的SQ...
2018-03-19 14:58:25 1668
转载 常用JVM配置参数
原文地址:http://www.cnblogs.com/smyhvae/p/4736162.html【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/文章来源:http://www.cnblogs.com/smyhvae/p/4736162.html 本文主要内容:Trace跟踪参数堆的分配参数栈的分配参数 零、在IDE的后台打...
2018-03-12 17:36:20 154
转载 readResolve()方法与序列化
原文地址http://blog.csdn.net/huangbiao86/article/details/6896565在CJC(一) 中提到一个问题,即 readResolve方法是干啥的? 当时也没多想, 只是列在那里, 今天忙里偷闲地把搜点材料整理下这个问题. 原来这个方法跟对象的序列化相关(这样倒是解释了为什么 readResolve方法是private修饰的). ??? 怎么跟对象的序...
2018-03-01 18:39:09 488
转载 Java反射AccessibleObject类的setAccessible方法
原文地址http://blog.csdn.net/min996358312/article/details/67674832看下面的代码:[java] view plain copypublic class A { private int data=0; } import Java.lang.reflect.*; public class B { public...
2018-03-01 18:00:05 543
转载 几张图轻松理解String.intern()
原文地址:http://blog.csdn.net/soonfly/article/details/70147205在翻《深入理解Java虚拟机》的书时,又看到了2-7的 String.intern()返回引用的测试。 其实要搞明白String.intern(),我总结了下面几条规则: 一、new String都是在堆上创建字符串对象。当调用 intern() 方法时,编译器会将字符串添加到常量池...
2018-02-27 10:57:34 170
转载 区块链是什么,如何简单易懂地介绍区块链?
作者:汪乐-LaiW3n链接:https://www.zhihu.com/question/37290469/answer/107612456来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。事情是这样的,最近我的室友Hasaki一直在问我区块链和比特币的事情,我尝试了很多种不通的姿势以求简单通俗形象生动地跟他解释什么是区块链技术,但是最后都
2018-02-02 15:11:30 570
转载 ORACLE中SID和SERVICE_NAME的区别
原文地址:http://blog.csdn.net/zhangzl1012/article/details/50752572先来讲一个小故事,2015年6月份,有个客户迁移了数据库,由单实例数据库变成了RAC。JAVA应用程序出现了无法连接数据库的情况,但是PL/SQL能连接上数据库。由于项目比较庞大,虽然在半夜切换的,但是也不能接受长时间的业务停顿。当时,我对ORACLE技术也只是略
2018-02-02 14:58:16 344
转载 Java线程同步:synchronized锁住的是代码还是对象
原文地址:http://blog.csdn.net/xiao__gui/article/details/8188833在Java中,synchronized关键字是用来控制线程同步的,就是在多线程的环境下,控制synchronized代码段不被多个线程同时执行。synchronized既可以加在一段代码上,也可以加在方法上。关键是,不要认为给方法或者代码段加上synchroni
2018-01-23 17:10:35 155
转载 深入分析Java ClassLoader原理
原文地址:http://blog.csdn.net/xyang81/article/details/7292380一、什么是ClassLoader? 大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都
2018-01-12 15:07:32 133
转载 dbcp配置--官方文档中文版本
原文地址:http://blog.csdn.net/coolhty/article/details/3624214 dbcp配置中文版本,翻译自apache 官方文档,原文请见http://commons.apache.org/dbcp/configuration.html。参数描述username传递给JDBC驱动的用于建立连接的用户名pa
2018-01-08 14:56:15 666
转载 由防火墙导致的数据库空闲连接断开问题
【线上问题】由防火墙导致的数据库空闲连接断开问题http://www.cnblogs.com/trust-freedom/p/6992952.html问题描述公司一个新项目上线,处于试运行阶段,这个项目虽然是外网可访问的,故部署在了DMZ区,但试运行阶段只给了公司内少部分员工地址和账号(其中包括一些领导),故访问量很小,但项目还是挺重要的。试运行阶段中,项目应用日志中不
2017-12-11 10:26:56 4609
转载 Spring+MyBatis多数据源配置实现
原文地址:https://www.cnblogs.com/lzrabbit/p/3750803.html最近用到了MyBatis配置多数据源,原以为简单配置下就行了,实际操作后发现还是要费些事的,这里记录下,以作备忘不多废话,直接上代码,后面会有简单的实现介绍jdbc和log4j的配置#定义输出格式ConversionPattern=%d %-5p [%t] %c
2017-11-27 11:05:08 218
转载 【spring配置】——spring整合Quartz定时器
原文地址:http://blog.csdn.net/javawebxy/article/details/50492409第一种:为普通java类中的某个方法配置跑批任务[java] view plain copyMethodInvokingJobDetailFactoryBean CronTriggerBean Schedul
2017-11-02 14:40:37 291
转载 Spring 事务管理机制概述
原文地址:http://blog.csdn.net/justloveyou_/article/details/73733278摘要: 一般地,用户的每次请求都对应一个业务逻辑方法,而一个业务逻辑方法往往包括一系列数据库原子访问操作,并且这些数据库原子访问操作应该绑定成一个事务来执行。然而,在使用传统的事务编程策略时,程序代码必然和具体的事务操作代码耦合,而使用Spring事
2017-11-02 10:42:17 306
转载 Spring使用远程服务之Hessian
原文地址:http://blog.csdn.net/junshuaizhang/article/details/28441907Hessian像RMI一样,使用二进制消息进行客户端和服务端的交互,它的二进制消息可以移植到其他非Java的语言中包括PHP、Python、C++和C#。因为Hessian是基于HTTP的,所以HessianSeriviceExporter实现为一个sprin
2017-08-29 16:49:04 275
转载 打开POST传参的弹出窗口
原文地址:http://www.cnblogs.com/DreamSeeker/p/7240193.htmlfunction openPostPopWindow(url,param,target){var $form = $("");$form.attr({method:"post",action:url,target:target});//写入参数fo
2017-08-24 16:11:48 405
转载 CSRF攻击与防御策略
原文地址:http://xmong.iteye.com/blog/15642611 CSRF攻击简介 1.1 什么是CSRF CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。尽管听起来像跨站脚本(XSS), 但它与XSS非常不同,并且攻击方式几
2017-08-21 14:48:42 1030
转载 Java反射机制详解
原文地址:http://www.cnblogs.com/lzq198754/p/5780331.html1反射机制是什么反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。2反射机制能做什么反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类...
2017-08-14 18:36:42 163
转载 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
原文地址http://blog.csdn.net/defonds/article/details/49496895本文将演示如何通过 Spring 使用 Quartz Scheduler 进行任务调度。Spring 为简化 Quartz 的操作提供了相关支持类。本文示例使用的相关工具如下:Spring 4.2.2 (发布于 2015 年 10 月)Quartz Schedule
2017-08-10 14:11:25 166
转载 Windows平台下Gitblit服务器搭建
转载自原文如下:WINDOWS平台下GIT服务器搭建Windows平台下Git服务器搭建第一步:下载Java,下载地址:http://www.java.com/zh_CN/第二步:安装Java.安装步骤不再详述。 第三步:配置Java环境变量.右键”计算机” => ”属性” => ”高级系统设置” => ”高级” => “环境变量
2017-01-05 14:15:53 496
转载 msysGit管理GitHub代码
原文地址如下:msysGit管理GitHub代码svn与git 说到版本控制,就不得不提它的发展历史。最开始流行的版本控制工具是cvs,但是cvs有个缺点,就是必须联网使用集中的代码库;于是SVN登上历史舞台,到现在很多公司都在使用SVN,它是一款集中式的管理代码的工具,可以使多个人共同协助开发一款产品,并有很强大的分支标签功能。 但SVN也局限于集中式管理
2017-01-04 17:18:19 285
转载 使用TortoiseGit操作分支的创建与合并
文章引用博客地址如下:使用TortoiseGit操作分支的创建与合并本文在介绍了软件安装和设置后, 写了TortoiseGit 常用的一些功能, 包括:创建新库添加文件及文件夹创建分支看分支情况及修改log比较版本差异合并分支其他操作: Stash; 忽略文件本文不包括:Git 服务器设置Push 版本到服务器上从其他机器上Pull
2017-01-04 17:06:29 20999
转载 使用Keytool为JDK添加https证书信任
原文地址:http://www.cnblogs.com/wupher/archive/2012/08/05/2623561.htmlhttps://www.cnblogs.com/langtianya/p/3334493.html在浏览器中访问https是件挺方便的事,与访问http站点相比,也就是地址栏上多个“s”。但是,在java平台上访问https,可就麻烦多
2016-12-08 10:03:44 12323
转载 mysql-proxy实现读写分离
文章来自整理:http://blog.jobbole.com/94606/其中Amoeba for MySQL也是实现读写分离Mysql-proxy代理在客户端与mysql服务器之间的交互控制逻辑图如下:环境描述:操作系统:CentOS6.5 32位主服务器Master:192.168.179.146从服务器Slave:192.168.179.147
2016-12-07 16:32:23 294
转载 mysql主从配置详解
原文地址如下其中有一些我自己做的修改:http://blog.csdn.net/hguisu/article/details/7325124/ Mysql内建的复制功能是构建大型,高性能应用程序的基础。将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的。复制过程中一个服务器充当主服务
2016-12-05 17:57:40 326
转载 详解Java中的clone方法 -- 原型模式
原文地址:https://blog.csdn.net/zhangjg_blog/article/details/18369201Java中对象的创建clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢?1 使用new操作符创建一个...
2016-11-18 17:29:28 369
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人