自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

搬砖小松鼠的博客

越努力,越幸运!

  • 博客(12)
  • 收藏
  • 关注

原创 java多线程---顺序打印ABC的三种实现---join方法

使用join方法,让三个线程之间存在等待关系代码如下:package com.zcj.join;public class JoinTest { public static void main(String[] args) { ThreadA threadA = new ThreadA(); ThreadB threadB = new ThreadB(threadA);

2016-05-31 15:37:06 3965

原创 java多线程---线程的状态

线程是最小的执行单位,也拥有自己的生命周期主要包含以下几个阶段:NEW(新建状态):线程创建了但是还没有执行它的start方法;RUNNABLE(运行状态):包括(RUNNING执行)和READY(准备状态),处于这个状态的线程使用isAlive方法返回为真BLOCK(阻塞状态):线程因为等待锁而处于阻塞队列中WAITING(等待):执行wait(),sleep(),join()等

2016-05-31 13:15:59 237

原创 java多线程---等待/唤醒以及生产者消费者经典同步Lock的实现

在jdk1.5并发包中引入的Lock,其主要实现重入锁,和读写锁,并且相对于synchronized原生的将锁的获取和释放显示化,并且可以提供了非阻塞的获取锁,并结合condition实现多路分之,将条件更加细化,并且比synchronized效率更高,但是在jdk1.6,对synchronized做出了很多优化,所以性能不一定比lock差,下面给出使用lock来实现等待/唤醒和之前的生产者消费者

2016-05-31 13:06:26 347

原创 java多线程---等待/唤醒以及生产者消费者经典同步synchronized的实现

一个线程开始执行后就进入等待,然后另外一个线程来唤醒它代码如下:package com.zcj.thread02;public class Thread01 { private static Object object= new Object(); public static void main(String[] args) { ThreadA theA = new

2016-05-30 22:45:56 450

原创 java多线程---停止、暂停一个线程

1.使用线程的stop方法,但是这个方法已经被deprecated了,因为使用它会释放锁并停掉线程,但是会出现数据不一致以及重要资源不能正确释放的问题2.使用interrupt方法:调用线程的这个方法会修改线程的中断标志位真,可以通过interrupted和isInterrupted这两个方法来判断线程是否已经被中断,区别是第一个方法在调用之后会把状态改为false,第二个方法则不会使用i

2016-05-28 23:13:12 3972

原创 java多线程---线程的创建方式

线程常见的拥有两种创建方式:使用继承的方式来创建线程有一个弊端就是java类是单继承的,不利于线程类再继承其他的类,所以一般使用实现Runnable接口的方式代码分别如下:package com.zcj.thread;public class ThreadCreateWay { public static void main(String[] args){ Thread01

2016-05-28 22:00:26 263

原创 java多线程---顺序打印ABC的三种实现---ReentrantLock方式

使用jdk1.5并发包中引入的lock方式,这种方式使用比synchronized这种方式更加灵活,也提供了在获取锁时阻塞的办法代码如下:package com.zcj.thread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;public

2016-05-27 16:55:49 3059

原创 java多线程---顺序打印ABC的三种实现---synchronized方式

利用同步锁,这种方式存在问题就是唤醒的过程中不能指定我说需要唤醒的线程,导致同一个锁上的线程都唤醒了代码如下:package com.zcj.thread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;public class PrintABC

2016-05-27 16:52:19 6072 1

原创 java多线程---顺序打印ABC的三种实现---volatile方式

利用volatile的立即可见性:package com.zcj.thread;public class PrintABC2 { private volatile int status =1; public void printA(){ while(status!=1){ } System.out.print("A"

2016-05-27 16:50:26 1286

原创 ssm框架学习---springmvc和mybatis整合

1.前端控制器(DispatcherServlet)2.处理器映射器(handlermapping)3.处理器适配器(handlerAdaper)4.视图解析器(ViewerResolver)目录结构如下首先配置前端控制器:在web.xml中配置如下: springmvc org.springframework.web.serv

2016-05-14 19:18:46 479

原创 ssm框架学习---mybatis和spring的整合

整合主要是将数据源和映射等交给spring来管理,准备工作需要spring和mybatis的整合包,这里采用mybatis的第二种mapper的开发方式mapper接口,映射文件,pojo类和之前的编写一样,这里不再列举首先来看看sqlmapconfig.xml文件<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3

2016-05-14 18:52:05 470

原创 ssm框架学习---mybatis学习文件结构和代码示例

准备工作:mybatis的jar包,数据库的驱动包,日志log4j和单元测试的包开发模式:(1)基于原始dao开发,需要编写dao接口和dao接口的实现类                    (2)基于mapper开发,只需编写dao接口,但是需要遵守一定规范(映射文件的命名空间为dao接口全限定名,接口中的方法,参数类型和返回类型和映射文件中statement语句输入参数和输出参数相对

2016-05-14 17:45:21 3740

空空如也

空空如也

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

TA关注的人

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