- 博客(16)
- 资源 (25)
- 问答 (1)
- 收藏
- 关注
原创 ERROR 1820 (HY000): You must reset your password using ALTER USER statement
新安装好的mysql5.7数据库,用root登录以后执行操作报这个错。解决方法:mysql> alter user 'root'@'localhost' identified by 'root密码'Query OK, 0 rows affected (0.01 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec...
2018-05-27 20:35:27 6623 3
原创 修改mysql默认字符集和排序规则
1.查看当前数据库字符集和排序规则2.修改my.ini文件,改后内容如下# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html# *** DO NOT EDIT THIS FILE. It's a te...
2018-05-20 21:20:57 7888
原创 Java并发编程实例--20.使用Semaphores(信号量)控制资源的并发读取
前面我们介绍了2种同步机制:1)使用synchronized关键字2)使用Lock接口及其实现类:ReentrantLock,ReentrantReadWriteLock.ReadLock, and ReentrantReadWriteLock.WriteLock本例中,我们将学习更高级的同步方式:semaphore (信号量)先看下概念:Semaphores: A semaphore is a ...
2018-05-19 17:12:29 627
原创 Java并发编程实例--19.在一个锁中使用多个条件
一个锁可能关联了一个或多个条件。这些条件可以在Condition接口中声名。使用这些条件的目的是去控制一个锁并且可以检查一个条件是true或false,如果为false,则暂停直到另一个线程来唤醒它。Condition接口提供了这样一个机制 去暂定一个线程和唤醒一个暂停中的线程。本例中继续拿生产者-消费者问题举例。FileMock.javapackage com.dylan.thread.ch2....
2018-05-15 23:27:23 397
原创 Java并发编程实例--18.修改锁的公平性
ReentrantLock和ReentrantReadWriteLock类的构造函数可接受一个布尔类型参数fair,表示你可以控制这2个类的行为。其默认值为false,代表non-fair(不公平)模式。这种模式下,如果有多个线程等待获得锁并且只能有一个线程获得,上面2个锁类会无条件选择一个。(也就是随机抽一个)值为true的话就表示fair模式,即公平模式。意思是有个先来后到,就跟咱们买东西要排...
2018-05-15 00:21:58 282
原创 Java并发编程实例--17.使用read/write锁同步数据访问
锁机制带来的最有意义的改进是提供了ReadWriteLock接口及其实现类ReentrantReadWriteLock。这个类有2个锁,一个针对读操作另一个针对写操作。可以有多个线程使用读操作,但是只有一个线程使用写操作。当一个线程做写操作时,不能有任何线程做读操作。本例中,我们将学习如何通过ReadWriteLock接口实现一个对2个产品价格的访问进行控制。PricesInfo.javapack...
2018-05-13 23:22:49 294
原创 Java并发编程实例--16.使用ReentrantLock实现线程同步
Java提供另一机制去同步代码块。它比synchronized关键字更强大且易用。它是基于Lock接口和其实现类例如:ReentrantLock。这一机制对比synchronized关键字的优势在于:1.可以构建更加灵活的同步代码块;2.Lock接口提供了一些额外功能,例如tryLock()方法,它会返回一个布尔值以表示当前资源是否被锁。3.Lock接口可以实现读写分离,多个...
2018-05-12 23:58:25 430
原创 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Mysql安装后使用root用户登陆报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)这时需要以下方式设置root用户密码,并重新登陆:1、停止mysql服务2、修改安装目录下配置文件my.ini如果没有my.ini,则直接将my-default.ini重命名成my.ini即可。...
2018-05-12 15:20:31 763 2
原创 启动MySQL5.7服务无法启动或Table 'mysql.plugin' doesn't exist
首先说一下我这个是mysql5.7.16免安装版,不过这个问题对于5.7版本应该都适用。问题重现:安装过程也说一下吧:1.将下载的压缩文件解压到指定目录, 我的是:E:\program\mysql-5.7.16-winx642.配置PATH环境变量,在最后追加bin路径: ;E:\program\mysql-5.7.16-winx64\bin3.CD到bin目录执行mysqld去安装w...
2018-05-12 15:14:52 26006 19
原创 Java并发编程实例--15.在同步代码块中使用条件
并发编程中有个经典问题:生产消费者问题。我们有一个数据缓冲区,一个或多个生产者往其中存入对象,另外一个或多个消费者从中取走。因此,该数据缓冲区是一个共享数据结构,我们需要对其添加读取同步机制,但是我们还需要一些限制。如果缓冲区满了,生产者不能继续向其中写入;反过来如果缓冲区空了,消费者也不能继续读取。对于这种情况,Java提供了wait(),notify()和notifyAll()方法。一个线程可...
2018-05-11 22:31:50 346
原创 Java并发编程实例--14.在一个同步类中安排独立属性
当你使用synchronized关键字去保护一个代码块时,你必须传入一个对象的引用。正常来讲,你讲使用this关键字去引用执行这个方法的对象,但是你可以使用其他对象的引用。通常的,这些对象将会是专有的。例如,如果多个线程共享一个类中有2个独立的属性,你必须对每个变量做读取同步操作,但是如果一个线程读取一个属性而另一个线程读取另一个这个没问题的。本例中,你讲学会如何解决这个问题。我们将模拟带有2块屏...
2018-05-11 00:22:25 408
原创 Java并发编程实例--13.方法同步(synchronized)
使用synchronized关键字去控制对某个方法的并发调用。某一时段内,只能有一个线程可以读取该方法。其他线程需要等待前面线程调用完毕后方可调用。不过,静态方法有着不同的行为。虽然也是每次只能有一个线程调用它,但是另一个线程可以调用该类对象的其他非静态方法。这一点需要注意,因为如果2个线程可读取2个不同的同步方法,一个是静态另一个不是。如果这2个方法修改的是同样的数据,可能会导致数据不一致错误。...
2018-05-06 18:21:20 273
原创 Java并发编程实例--12.使用线程工厂创建线程
工厂模式是面向对象编程世界中最有用的设计模式。它是一个创新型的模式,目标是开发一个对象,这个对象的任务是去创建其他类对象。这样一来,如果我们想创建某些类的对象就不需要使用new关键字。好处有以下几点:1.容易改变对象的类或者创建这些对象的方式;2.容易限制所创建的对象。例如,我们只能创建N个某类型的对象;3.容易生成对象创建的统计数据;Java并发API提供了ThreadFactory接口以实现一...
2018-05-05 16:36:09 865
原创 Java并发编程实例--11.在线程组中处理未检查异常
第8个例子讲了如何在线程中捕捉未检查异常,本例将介绍如何在线程组中处理未检查异常。Task.javapackage com.dylan.thread.ch1.c11.task;import java.util.Random;/** * Class that implements the concurrent task * */public class Task implements...
2018-05-05 15:55:06 322
原创 解决linux下zip文件解压后中文乱码问题
最近项目上碰到在windows上压缩了一些图片,图片文件名称都是中文的,scp到linux下用unzip解压后文件名全是乱码,找了半天解决方案,下面这个亲测可行,特记录一下,与大家分享:原因:由于zip在压缩时并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,而Linux下的默认编码是UTF8因此,导致这些zip文件在Linux下解压时出现中文乱码问题。解决方案...
2018-05-03 22:41:16 7144
原创 Java并发编程实例--10.使用线程组
并发API提供的一个有趣功能是可以将多个线程组成一个组。这样我们就能将这一组线程看做一个单元并且提供改组内线程对象的读取操作。例如你有一些线程在执行同样的任务并且你想控制他们,不考虑有多少个线程仍在运行,一个打断动作将会打断所有组内线程的执行。Java提供了一个ThreadGroup类来表示一组线程。一个线程组对象由多个线程对象和另一个线程组对象组成,从而形成树状的线程结构。本例中,我们将学习使用...
2018-05-02 23:41:18 362
datatables_demo.zip
2021-01-24
LiveReload210(解压后在谷歌浏览器插件里面加载).zip
2020-12-14
express_file_upload.zip
2020-04-15
springboot_layui_demo.zip
2020-04-14
Java Swing五子棋项目
2019-03-24
AES前端加密解密工具js-crypto.js
2019-02-14
libstdc++.so.5
2014-09-08
mantis1.2.5_XAMPP安装
2014-01-09
PDF解密工具--winDecrypt
2014-01-09
java打包jar文件实例
2013-12-15
ORACLE如何按以下要求返回查询结果?
2015-01-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人