- 浏览: 12284 次
- 性别:
- 来自: 深圳
最新评论
文章列表
public class DeadLock {
public static String obj1 = "obj1";
public static String obj2 = "obj2";
public static void main(String[] args) {
Thread thread1 = new Thread(new Lock1());
Thread thread2 = new Thread(new Lock2());
thread1.sta ...
/**
* @ClassName LoggerUtil
* @Description
* 日志工具类,使用静态方法打印日志 无需每个类中定义日志对象
* Logback对每个Logger对象做了缓存,每次调用LoggerFactory.getLogger(String name)时如果已存在则从缓存中获取不会生成新的对象;
* 同时也不会有对象的创建与销毁造成的性能损失
* @Author
* @Date
* @Version
**/
public class LoggerUtil {
public static void erro ...
思路:服务端接到请求,分发给多线程任务,返回时间给客户端
Bioserver服务端
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class BioServer {
/**
* 端口号
*/
private static final int PORT = 8080;
public static void main(String[] args) throws IOException { ...
原文:https://blog.csdn.net/georgeshaw1/article/details/74943089
背景:
做了一个TCP服务器来接入智能设备,然后需要将设备实时发送的定位等关键信息存储到数据库。为了考虑将来可能对外提供rest接口,采用将TCP服务器集成到SpringBoot框架,当然,也是为了能最快利用mybatis框架实现数据访问,然后依次解决了如何启动,如何注销等各种问题,然后在TCP服务器消息处理时,需要写数据库,直接调用DAO层,编译报错。改为调用Service层,编译正常,运行到调用的地方,报空指针异常,跟踪到异常位置,发现service为空 ...
简单工厂模式的概念
<!--5f39ae17-8c62-4a45-bc43-b32064c9388a:W3siYmxvY2tJZCI6Ijk1NDctMTU0NjY1NzUwNTUxMiIsImJsb2NrVHlwZSI6InBhcmFncmFwaCIsInN0eWxlcyI6e30sInR5cGUiOiJwYXJhZ3JhcGgiLCJyaWNoVGV4dCI6eyJkYXRhIjpbeyJjaGFyIjoi566AIiwic3R5bGVzIjp7ImJvbGQiOnRydWUsImZvbnQtZmFtaWx5IjoiVmVyZGFuYSIsImZvbnQtc2l6ZSI6MTYsI ...
内置锁:每个java对象都可以用做一个实现同步的锁,这些锁称为内置锁。线程进入同步代码块或方法的时候会自动获得该锁,在退出同步代码块或方法时会释放该锁。获得内置锁的唯一途径就是进入这个锁的保护的同步代码块或方法。
互斥锁:内置锁是一个互斥锁,这就是意味着最多只有一个线程能够获得该锁,当线程A尝试去获得线程B持有的内置锁时,线程A必须等待或者阻塞,直到线程B释放这个锁,如果B线程不释放这个锁,那么A线程将永远等待下去。
synchronized既是内置锁也是互斥锁
synchronized三种修饰
第一、修饰普通方法
代码示例:
public ...
1.“|”运算符:不论运算符左侧为true还是false,右侧语句都会进行判断,下面代码
public class TestOperator {
private static int j = 0;
private static Boolean methodB(int k) {
j += k;
return true;
}
public static void methodA(int i) {
boolean b;
b = i < 10 | methodB( ...
跨域:浏览器同源策略
1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。
最初,它的含义是指,A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源"。所谓"同源"指的是" ...
设置注释模板的入口:Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元素。文件(Files)注释标签:
/**
* @Title: ${file_name}
* @Package ${package_name}
* @Description: ${todo}(用一句话描述该文件做什么)
* @author ${user}
* @date ${date}
* @version V1.0
*/
类型(Types)注释标签 ...
先在数据库中执行sql语句,
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `user_t`
-- ----------------------------
DROP TABLE IF EXISTS `user_t`;
CREATE TABLE `user_t` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(40) NOT NULL,
`password` ...
在CentOS 7 下安装 mysql
- 博客分类:
- MySQL
卸载MariaDB
如果直接点击rpm包安装会得到错误提示。因为CentOS的默认数据库已经不再是MySQL了,而是MariaDB,为什么呢?
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
使用命令:
rpm -ev mariadb-libs-5.5.52-1.el7.x86_64 --nodeps
强制卸载干净 ...
一、redis安装
1、在centos下面安装gcc,我们使用yum(包管理器)安装,因为gcc依赖了很多东西,而有些包系统可能已经安装了,有些没有,所以下面的命令最后都执行一遍,在Xshell中执行下面的命令:
1)、 yum install cpp
2)、 yum install binutils
3 )、yum install glibc-kernheaders
4 )、yum install glibc-common
5 )、yum install glibc-devel
6 )、yum install gcc
...
Redis 常用数据类型
Redis 最为常用的数据类型主要有以下五种:
String
Hash
List
Set
Sorted set
在具体描述这几种数据类型之前,我们先通过一张图了解下 Redis 内部内存管理中是如何描述这些不同数据类 ...
最近对linux系统挺感兴趣的,加之对本人的电脑上的Windows系统卡的要死,就把系统换成deepin linux了,瞬间运行顺畅得像德芙巧克力一般,但是在安装Linux版的jdk上有一些小问题,现在把安装流畅记录下
第一步:在官网上下在jdk
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
第二步:解压
进入下载目录:cd /home/deepin/Downloads
解压jdk:tar -zxvf jdk-8u144-linux-x64.tar.gz
第三步 ...