
Java
文章平均质量分 70
Joker_0312
在求知中不断成长
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring-mybatis整合 获取properties 创建SQLSessionFactory失败
代码:class="org.springframework.jdbc.datasource.DriverManagerDataSource">测试类:输出结果:如果想加载properties 配置文件的方式读取 dataSource Bean:这时,你会发现没有问题;会得到数据库连接,但是加上SQLSess原创 2016-05-16 10:27:12 · 7125 阅读 · 3 评论 -
Java String 为什么是Final的?
先考虑一下:String 不是基本数据类型,为什么会放在常量池?Java 类被定义成 Final 的是不想类被继承;String 类被标记为 final 保证了,String 类型的对象只可能是String类型,不会有其它的子类型。String 在初始化之后不可变化,因为其不可变性保证了在共享对象的同时的安全性。创建String对象的两步:1.在常量池创建一个不存在的字符串对象。2.在堆中创建对象...原创 2018-06-29 15:27:16 · 461 阅读 · 0 评论 -
Java多线程死锁
什么是死锁?因为互相请求被其他线程占用的资源而造成的线程一直等待。举个例子:两个线程分别请求对方占用的锁对象,首先不能释放原有的锁对象,然后再重新申请对方占用的对象。public class DeadlockTest { public static void main(String[] args) { String str1 = new String("资源1"); ...原创 2018-07-03 02:04:54 · 208 阅读 · 0 评论 -
Java 垃圾回收 之 CMS
....原创 2018-07-03 17:08:35 · 388 阅读 · 0 评论 -
SpringMVC内部流转过程
SpringMVC的工作原理图(图中为HandlerAdapter):SpringMVC流程1、 用户发送请求至前端控制器DispatcherServlet。2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给Dispatch...转载 2018-07-05 02:36:20 · 1324 阅读 · 0 评论 -
Java 关键字 assert
Java 运行时参数 -ea/-da 开启/关闭断言。一、语法 在Java中,assert关键字是从JAVA SE 1.4 引入的,为了避免和老版本的Java代码中使用了assert关键字导致错误,Java在执行的时候默认是不启动断言检查的;如果要开启断言检查,则需要用开关-enableassertions或-ea来开启。assert关键字语法很简单,有两种用法: ...原创 2018-08-26 12:02:45 · 278 阅读 · 0 评论 -
Maven 配置以及冲突解决
POM文件结构: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven....原创 2018-09-11 23:37:00 · 944 阅读 · 0 评论 -
线程切换
import org.junit.jupiter.api.Test;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * ThreadCount too young...原创 2019-01-25 01:22:36 · 229 阅读 · 0 评论 -
mybatis 配置文件
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_...转载 2019-04-12 14:14:27 · 403 阅读 · 0 评论 -
关于XML文档的xmlns、xmlns:xsi和xsi:schemaLocation
https://yq.aliyun.com/articles/40353*************************************摘要: 相信很多人和我一样,在编写Spring或者Maven或者其他需要用到XML文档的程序时,通常都是将这些XML文档头拷贝过来,并没有理解其中元素 (比如xmlns,xmlns:xsi,xsi:schemaLocation)的真正含义,不知道哪些元素...转载 2018-05-28 14:19:59 · 208 阅读 · 0 评论 -
ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderExce
客户端没有证书,会报以下错误:Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to原创 2017-05-09 18:49:51 · 3205 阅读 · 0 评论 -
正则表达式匹配汉字编码
这里是几个主要非英文语系字符范围2E80~33FFh:中日韩符号区。收容康熙字典部首、中日韩辅助部首、注音符号、日本假名、韩文音符,中日韩的符号、标点、带圈或带括符文数字、月份,以及日本的假名组合、单位、年号、月份、日期、时间等。3400~4DFFh:中日韩认同表意文字扩充A区,总计收容6,582个中日韩汉字。4E00~9FFFh:中日韩认同表意文字区,总计收容20,902原创 2016-07-12 15:02:02 · 2639 阅读 · 0 评论 -
正则表达式
一、捕获组的概念捕获组可以通过从左到右计算其开括号来编号,编号是从1 开始的。例如,在表达式 ((A)(B(C)))中,存在四个这样的组:1 ((A)(B(C)))2 (A)3 (B(C))4 (C)组零始终代表整个表达式。 以 (?) 开头的组是纯的非捕获 组,它不捕获转载 2016-07-04 14:45:01 · 294 阅读 · 0 评论 -
JAVA多线程Callable、Executors -- ExecutorService简介
Callable的出现是因为传统的多线程实现是继承Thread和实现Runable接口,但是都不能获取返回值。Callable 中的call可以通过泛型实现确定类型的返回值。ExecutorService接口继承了Executor接口,定义了一些生命周期的方法Java代码 public interface ExecutorService转载 2016-08-31 11:27:46 · 309 阅读 · 0 评论 -
Executors 四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor
1、new Thread的弊端执行一个异步任务你还只是如下new Thread吗?Javanew Thread(new Runnable() { public void run() { }}).start();那你就out太多了,new Thread的弊端如下:a. 每次new Thread新建对象性能差。b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能转载 2016-08-31 11:58:51 · 1350 阅读 · 0 评论 -
java中Executor、ExecutorService、ThreadPoolExecutor介绍
1.Excutor 源码非常简单,只有一个execute(Runnable command)回调接口 public interface Executor { /** * Executes the given command at some time in the future. The command * may execute in转载 2016-10-20 09:37:49 · 488 阅读 · 0 评论 -
JAVA8中Lambda表达式入门
Lambda表达式是Java SE 8中一个重要的新特性。lambda表达式允许你通过表达式来代替功能接口。 lambda表达式就和方法一样,它提供了一个正常的参数列表和一个使用这些参数的主体(body,可以是一个表达式或一个代码块)。Lambda表达式还增强了集合库。 Java SE 8添加了2个对集合数据进行批量操作的包: java.util.function 包以及java.util.s原创 2017-02-10 14:33:29 · 1728 阅读 · 0 评论 -
Java内存分配与管理
Java内存分配与管理是Java的核心技术之一,一般Java在内存分配时会涉及到以下区域:1.栈区:由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2.堆区:由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。 3.全局区(静态区):全局变量和静态变量的存储是放在一块的,转载 2016-11-24 12:02:50 · 1997 阅读 · 0 评论 -
CountDownLatch 浅谈
/**CountDownLatch类是一个同步计数器,构造时传入int参数,该参数就是计数器的初始值,每调用一次countDown()方法,计数器减1,计数器大于0 时,await()方法会阻塞程序继续执行CountDownLatch如其所写,是一个倒计数的锁存器,当计数减至0时触发特定的事件。利用这种特性,可以让主线程等待子线程的结束。下面以一个模拟运动员比赛的例子加以说明。*/原创 2017-02-13 18:17:24 · 320 阅读 · 0 评论