
java
文章平均质量分 90
Ricartc
这个作者很懒,什么都没留下…
展开
-
懒汉式单例中使用双重检测详解
一、前言本文的目的是探讨懒汉式单例为什么一定要使用双层if (instance == null)来保证多线程情况下安全运行,文章第二部分是双层检测的合理性,第三部分是双层检测的局限性,相互对应,从浅到深。二、双层检测的合理性2.1 双层检测的理论解释问题1:单例模式在多线程环境下的lazy模式为什么要加两个if(instance == null)?回答1:第一层 if (instance == null)是为了减少线程对同步锁锁的竞争,第二层if(instance==nul)是保证单例。转载 2021-06-08 21:44:50 · 2034 阅读 · 0 评论 -
Servlet异步请求
Tomcat实现异步Servlet有时Servlet在生成响应报文前需要等待某些耗时的操作,例如等待一个可用的JDBC连接或等待一个远程Web服务的响应,因此会导致Servlet中等待阻塞会导致web整体处理能力低下,所以对于比较耗时的操作可以放置到另外一个线程中进行处理,此过程保留连接的请求和响应对象,在处理完成之后可以把处理的结果通知到客户端,对于这种情况servlet规范中定义了异步处理方式。Servlet在同步情况下的处理过程:Tomcat的客户端请求由管道处理最后会通过Wrapper容器的转载 2021-06-01 22:04:49 · 438 阅读 · 0 评论 -
Servlet详解
一、什么是servlet? 处理请求和发送响应的过程是由一种叫做Servlet的程序来完成的,并且Servlet是为了解决实现动态页面而衍生的东西。理解这个的前提是了解一些http协议的东西,并且知道B/S模式(浏览器/服务器)。 B/S:浏览器/服务器。 浏览器通过网址来访问服务器,比如访问百度,在浏览器中输入www.baidu.com,这个时候浏览器就会显示百度的首页,那么这个具体的过程,步骤是怎样的呢?这个就了解一下http请求和响应了转载 2021-06-01 21:57:52 · 608 阅读 · 0 评论 -
Java中的注解到底是如何工作的?
来自:程序员大咖自Java5.0版本引入注解之后,它就成为了Java平台中非常重要的一部分。开发过程中,我们也时常在应用代码中会看到诸如@Override,@Deprecated这样的注解。这篇文章中,我将向大家讲述到底什么是注解,为什么要引入注解,注解是如何工作的,如何编写自定义的注解(通过例子),什么情况下可以使用注解以及最新注解和ADF(应用开发框架)。这会花点儿时间,所以为自己准备一杯咖啡,让我们来进入注解的世界吧。什么是注解?用一个词就可以描述注解,那就是元数据,即一种描述数.转载 2020-11-06 16:53:57 · 357 阅读 · 0 评论 -
深入理解java多态
本文转载自@宜春博主的博文,原文地址点此在博主认为多态绝对是面向对象的第三大特性中让很多小白同学以及初学者难以跨越的鸿沟,因为多态有很多细节性的知识,不花点时间,还真不好理解多态。这么说吧,如果你觉得你已经完全理解了多态,你不妨做做下面的程序,如果你能全都答对,那没问题了,多态对你来说真的不是问题!如果在第四个就趴下了,那可以看看这篇文章,或许对你有所帮助,可能会让你重新见识到多态的魅力。package Polymorphic;//爷爷类class Ye { public String转载 2020-10-13 10:58:18 · 563 阅读 · 1 评论 -
Java注解解析--一看就懂的大白话解释
在博客中看到一篇写的非常好的关于Java注解的分析文章,由于看的是转载,并且原文章已经找不到地址了,所以这里只放出转载出处,点击此处。Annotation 中文译过来就是注解、标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解。我个人认为,比较糟糕的技术文档主要特征之一就是:用专业名词来介绍专业名词。比如:Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。Java 注解是从 Ja.转载 2020-06-01 16:32:29 · 891 阅读 · 1 评论 -
Java代码优化,提升性能的方法
就像鲸鱼吃虾米一样,也许吃一个两个虾米对于鲸鱼来说作用不大,但是吃的虾米多了,鲸鱼自然饱了。代码优化一样,也许一个两个的优化,对于提升代码的运行效率意义不大,但是只要处处都能注意代码优化,总体来说对于提升代码的运行效率就很有用了。这个观点,在现在看来,是要进行代码优化的一个原因,但不全对。在机械工艺发展的今天,服务器动辄8核、16核,64位CPU,代码执行效率非常高,StringBuild...转载 2019-03-29 16:35:58 · 511 阅读 · 0 评论 -
java实现简单分页功能
虽然现在有很多好用的框架,对分页进行支持,很简单的就把分页的效果做出来,但是如果自己手写是一个怎样的流程的?今天就来说说它,手动实现分页效果。 --WH 一、分页的思路 首先我们得知道写分页代码时的思路,保持思路清晰,有步骤的进行,才能行云如水。先来看看分页的效果 ...原创 2019-01-08 17:11:23 · 2785 阅读 · 1 评论 -
Java Web一行代码实现文件上传下载
转自:https://blog.youkuaiyun.com/u013314786/article/details/49720671每当要实现文件上传下载的功能时,都要复制粘贴拼凑代码。如果用了不同的框架,代码还不一样,配置啥的一堆,甚是繁琐,不喜欢。科学家们喜欢把纷繁复杂的自然现象总结为一个个简洁的公式,我们也来试试,把上传下载整成一行代码~ 花了一天时间,整了个通用的工具类FileUt...转载 2018-11-21 11:49:53 · 240 阅读 · 0 评论 -
Eclipse详细设置护眼背景色和字体颜色并导出
Eclipse是一款码农们喜闻乐见的集成开发平台,但是其默认的主题和惨白的背景色实在是太刺激眼球了。下面,将给大家详细介绍如何设置成护眼主题的方法,也做个抛砖引玉,希望能有更多的主题出现在Eclipse的大家庭中。随后,本文将介绍如何将设置好的主题导出保存,用于重装系统或者分享给朋友。最后,介绍三种笔者用过的,适合Eclipse使用的编程字体作为彩蛋。工具/原料 Ecli...转载 2018-08-15 15:18:17 · 279 阅读 · 0 评论 -
用遍历打印6种三角形
演示为五阶三角形,需要的自行修改。1、打印定点在左下的直角三角形代码: for (int i = 1; i <= 5; i++) { for (int j = 1; j <= i; j++) { System.out.print("* "); } System.out.println(); }实现效果:2、打印定点在左上的直角三角原创 2017-08-04 11:21:45 · 675 阅读 · 0 评论 -
MyBatis框架学习--配置主配置文件
了解MyBatisMyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。它使用了简单的xml或注解用于配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录MyBatis的执行流程加载配置SQL解析SQL执行结果映射使用步骤导包原创 2017-10-23 21:52:31 · 605 阅读 · 0 评论 -
学习Hibernate框架--框架搭建及简单使用
在学习Hibernate框架之前首先来了解一下什么是Hibernate框架以及为什么要使用它Hibernate是一个开源的对象关系映射框架对JDBC进行了非常轻量级的对象封装将JacaBean对象和数据库的表建立对应关系它是一个优秀的Java持久化层解决方案是当今主流的对象——关系映射工具它简化了JDBC繁琐的编码,将数据库的连接信息都放置在配置文件中来...原创 2017-10-30 12:04:37 · 2546 阅读 · 0 评论 -
JAVA中字符串比较equals()和equalsIgnoreCase()的区别
1、使用equals( )方法比较两个字符串是否相等。它具有如下的一般形式:boolean equals(Object str)这里str是一个用来与调用字符串(String)对象做比较的字符串(String)对象。如果两个字符串具有相同的字符和长度,它返回true,否则返回false。这种比较是区分大小写的。2、为了执行忽略大小写的比较,可以调用equalsIgnoreC转载 2017-11-07 19:07:59 · 305 阅读 · 0 评论 -
I/O流学习--OutputStream的写入方法
本文介绍写入文件的方法,代码如下:package com.jredu.OutputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class Tch1 { public static void main(Str原创 2017-08-21 20:42:34 · 909 阅读 · 0 评论 -
I/O流学习--InputStream下的常用方法
本文介绍一些读取文件的常用方法,代码如下:skip方法:从输入流中跳过参数n指定数目的字节:package com.jredu.InputStream;/** * skip的使用 */import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;原创 2017-08-21 20:33:14 · 2280 阅读 · 0 评论 -
I/O流学习--InputStream的读取文件方法
本文介绍三种常见的文件读取方法,代码如下:方法1:package com.jredu.InputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStream;import java.u原创 2017-08-21 20:15:22 · 1276 阅读 · 0 评论