`
文章列表
1. 什么是AQS AQS - AbstractQueuedSynchronizer AQS定义了实现线程同步器的基础框架, 线程同步器的作用是协调多个线程对共享资源的访问。 AbstractQueuedSynchronizer派生出Java并发包的重要类, 如下: - CountDownLatch(倒计时同步器) - CyclicBarrier( ...
1. 什么是线程? 线程和进程的区别 在了解线程的概念前,我们应该先知道什么是进程? 进程是操作系统的基本概念之一, 它是正在执行的程序实例。 * 下面的一些进程的基本概念你可以了解下 -------------------------------------------------------------------- 操作系统逻辑上将一个进程分为以下几部分(段): # 文本   程序的指令 # 数据   程序使用的静态变量 # 堆   程序可从该区域动态分配额外内存 # 栈   随函数调用和返回而增减的一片内存, 用于为局部变量和函数调用链接信息分配存储空间 - ...
DateDiff.java package corejava2.date; import java.time.LocalDate; import java.time.Period; public class DateDiff { public static void main(String[] args) { /** The date at the end of the last century */ LocalDate endofCentury = LocalDate.of(2000, 12, 31); LocalDate now = LocalDa ...
解决方法: 鼠标点击红色字,然后Intellij出现小红灯,选择Fetch external resource即可解决
0. 概述: Java中基于流的I/O构建在4个抽象类之上, 其中2个是字节流,另外2个是字符流。 字节流: InputStream / OutputStream 当操作字节或其它二进制对象时,应当使用字节流。 字符流: Reader / Writer 当操作字符或字符串时,应 ...
0. 大背景 全球No.1搜索引擎公司谷歌(Google)面临每天海量搜索引擎数据的问题,经过长时间的实践积累, 谷歌形成了自己的大数据框架,但是并没有开源,而是发表了一篇论文,阐述了自己的思想,在论文中 提到了MapReduce的方 ...
0. 大背景 众所周知,REST架构已经成为现代服务端的趋势。 很多公司,已经采用REST作为App, H5以及其它客户端的服务端架构。 1. 什么是JAX-RS? JAX-RS是JAVA EE6 引入的一个新技术。 JAX-RS即Java API for RESTful Web Services,是一个Java 编程语言的应用程序接口,支持按照表述性状态转移(REST)架构风格创建Web服务。 JAX-RS使用了Java SE5引入的Java标注来简化Web服务的客户端和服务端的开发和部署。 Roy Fielding也参与了JAX-RS的制订,他在自己的博士论文中定义了REST ...
用过Spring MVC的人都知道,我们如何在Controller中注入Service,可以使用@Resource注解的方法。 有时候,实际在项目的过程中,我们需要在某个Servlet中使用Service, 但是由于Spring MVC中的Servlet都是由 DispatcherServlet统一管理的,因此,像C ...
tomcat8.5管理员默认只能在安装tomcat的机器上访问,如果想在其他机器上访问,则需要进行配置修改 添加用户和权限(<tomcat>\conf\tomcat-users.xml): <role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="admin" password="admin" roles="admin-gui,manager-gui" / ...
1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期。    可以通过其命令做所有相关的工作,其常用命令如下:     - mvn compile     - mvn test     - mvn clean     - mvn package     - mvn install            //把新创建的jar包安装到仓库中     - mvn archetype:generate //创建新项目 2. 配置Maven 软件配置一次即可,所有Maven项目共享。 ...
你可以通过视图的getWidth()和getHeight()来获取视图的宽度和高度。 但是,可能会让你失望的是,如果你直接在onCreate方法内调用这两个函数,你会的到0。 为什么呢? 这是因为,当onCreate被调用的时候,视图的内容正在被LayoutInflater来填充xml布局。 这个过程会填充布局,但是暂时不会设置视图的大小。 那么视图到底什么时候获得自己的大小尺寸呢? 实际上是在Layout以后,而layout又是在onCreate调用以后。 那么,如果我们要在onCreate方法中获取视图的大小,应该怎么办呢? 其实,解决方法还是有的,就是利用视图的post方法。 废话不多说, ...
如果一个方法可能会产生异常,我们需要用throws关键字给它标注会抛出什么异常, 这样就可以在方法调用的时候捕获它。 代码如下: public class ThrowsDemo { static void throwOne() throws IllegalAccessException { System.out.println("Inside throwOne."); throw new IllegalAccessException("demo"); } public static void main(String args ...
问题: 如何抛出一个系统异常并且捕获它 代码如下: public class ThrowDemo { static void demoproc() { try { throw new NullPointerException("demo"); } catch (NullPointerException e) { System.out.println("Caught inside demoproc."); throw e; // rethrow the exception } } public ...
在Jelly Bean(API 16)以前,为了实现顶部的导航菜单,程序员们不得不手工写代码, 神马在OnCreate啊,神马onOptionsItemSelected啊,但是,现在一切都是浮云了。 你需要做的只是在AndroidManifest中增加那么一小句话,指定父Activity就好了。 我们来看下代码: ... <activity android:name=".CurrentActivity" android:label="@string/app_name" android:parentActivityN ...
问题描述: 如何使按钮水平垂直居中且始终占据屏幕宽度一半 效果如下: 竖屏: 横屏: 解决方案: 使用线性布局,指定线性布局的总权重(weightSum)为1, 指定按钮的权重为其一半即0.5 布局代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pare ...
Global site tag (gtag.js) - Google Analytics