自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(741)
  • 问答 (1)
  • 收藏
  • 关注

翻译 python os 命令

使用前 import os导入模块os模块:os.sep 可以取代操作系统特定的路径分割符os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n' 而Mac使用'\r'。os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'os.getcwd() 函数得到当前工作目录,os.getenv()和os.putenv() ...

2020-07-04 12:30:40 244

原创 python2下载网页图片

#! /usr/bin/pythonimport urllib, os,os.pathimport loggingimport datetime#file loglog_file = '/root/logs/sys_%s.log' % datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d')log_level = logging.INFOlog_format = '%(asctime)s[%(levelname)s]: %

2020-07-04 12:26:53 251

原创 redis.clients.jedis.exceptions.JedisDataException: ERR This instance has cluster support disabled

hosts.add(new HostAndPort("192.168.1.128",6379)); //不支持ip地址,应该配置hosts

2020-06-06 17:28:38 537

原创 redis: slaveof directive not allowed in cluster mode

将 cluster-enabled yes 设置为 no

2020-06-06 17:16:24 1102

原创 Spring Boot使用Spring Data Redis操作Redis(单机/集群)

Spring Boot简化了Spring Data Redis的引入,只要引入spring-boot-starter-data-redis之后会自动下载相应的Spring Data Redis和Jedis客户端,可以减少版本这块的冲突<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-...

2020-06-06 16:55:48 310

原创 Redis进阶Redis主从复制的集群模式

redis集群配置Redis有三种集群模式,第一个就是主从模式,第二种“哨兵”模式,第三种是Cluster集群模式:主从集群模式redis.conf bind 192.168.1.128 port 6379 timeout 30 # Client 端空闲断开连接的时间 daemonize yes #默认值是no,把值修改为yes,以后台模式运行从节点增加配置:slaveof 192.168.1.128 6379 192.168.1.128:6379&g.

2020-06-06 16:03:36 111

原创 @PostConstruct与InitializingBean

@PostConstruct public void init() { System.out.println("@PostConstruct.."); if(instance == null) { instance = getInstance(); } instance.redisTemplate = redisTemplate; initRedisTemplate(); }pu...

2020-06-06 10:10:30 1782

原创 使用redis实现排行榜

zrange 查看排行榜 (升序)zrevrange 查看排行榜 (降序)zadd 添加一个数据zrem 删除一个数据zrank 获取排名(升序)zrevrank 获取排名 (降序)语文分数排序ZSetOperations s=redisTemplate.opsForZSet(); s.removeRange("yuwen", 0, -1); s.add("yuwen", "stu1", 1); //key-value-score ...

2020-05-30 12:23:17 146

原创 Redisson延迟队列-30分种后订单取消

1.redisson jar<dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.8.0</version> </dependency>2.入队列、出队列import org.redisson.R...

2020-05-30 11:33:53 1506 1

原创 基于redis生成唯一ID

long id=sf.generate("uniqueid");@Servicepublic class SequenceFactory { @Autowired RedisTemplate<String, String> redisTemplate; public void set(String key, int value, Date expireTime) { RedisAtomicLong counter = new RedisAto...

2020-05-30 10:56:06 478

原创 springboot中使用redisTemplate操作redis

springboot中使用redisTemplate操作redis(1)引入jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <version>1.5.8.RELEASE<...

2020-05-30 09:18:37 231 1

原创 设计模式之策略模式

 public class Person { private IGoHome home; public void toHome(){  home.goHome(); } public void setHome(IGoHome home) {  this.home = home; }  public static void main(String[] args){  Person p = ...

2018-05-30 21:17:10 119

原创 设计模式之责任链2

 使用责任链模式进行类型转换 public class Test { public static void main(String[] args) {  Date d = new Date();  Double d2 = new Double("99.145456");  String str = null;    FormaterChain fc = FormaterChain...

2018-05-27 17:48:19 124

原创 使用反射将对象转Map

 //使用反射将对象转Map&lt;String, String&gt;public class Object2Map { public static void main(String[] args) throws Exception{  User user = new User();  user.setName("zhangsan");  user.setAge(20);  user....

2018-05-27 17:33:37 229

原创 设计模式之责任链

 essage从第一个链开始判断和处理,如果不能处理就传给下一个链,每一个链用handler表示。所有的链继承自同一个父类,Handler 使多个对象都有机会处理请求,从而避免请求的 发送者和接受者之间的耦合。将这些对象连成一个链,并按着这个链传递该请求,直到有一个对象处理他为止 public class Test { public static void main(St...

2018-05-26 15:28:56 105

原创 设计模式之建造者

 /** * 建造者模式:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以有不同的表示。 * 建造者模式通常包括以下这几个角色:    1、Builder:给出一个抽象接口,规范建造者对于生产的产品的各个组成部分的建造。这个接口只是定一个规范,不涉及具体的建造,具体的建造让继承于它的子类(ConcreteBuilder)去实现。    2、ConcreteBuilder:实现bu...

2018-05-20 19:40:51 121

原创 设计模式之原型模式

 /** * 原型设计模式:原型模式主要用于对象的复制 * Prototype类需要具备以下两个条件:     1.实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clone方法。在java虚拟机中,只有实现了这个接口的类才可以被拷贝,否则在运行时会抛出CloneNotSupportedExce...

2018-05-20 18:42:01 117

原创 通过nio的Channel-Buffer来读写文件

 // 通过nio的Channel来读写文件public class NioFileReadWrite { public static void main(String[] args) {  String file = "d:\\n4.txt";  String file2 = "d:\\ncc.txt";    // 1.通过Channel-Buffer进行文件读写//  new Th...

2018-05-20 14:25:37 2388

使用JNDI获取数据库连接池

 使用jndi获取数据库连接池 JNDI是J2EE13个规范之一,也是非常重要的。这里我来先简单介绍一下JNDI: JNDI(Java Naming and Directory Interface) java命名和目录服务接口             降低程序和程序之间的耦合性            降低设备和设备的耦合性   Tomcat服务器实现了JNDI服务,启动Tomcat服...

2018-05-20 11:25:16 1047

原创 echarts 图表

  echarts 图表 - ECharts.js &lt;script type="text/javascript" src="echarts.min.js"&gt;&lt;/script&gt; &lt;script type="text/javascript"&gt;function zhexiantu(){ //指定图标的配置和数据 var option = { ..

2018-05-12 08:02:10 130

webservice之使用jaxb把xml转换Object或把对象转换成xml文件

 //使用jaxb把xml转换Object或把对象转换成xml文件public class Xml2Object { public static void main(String[] args) {    //转换成对象//  String xmlFile = "G:\\workspace\\jaxb\\src\\user.xml";//  Class&lt;User&gt; clazz...

2018-05-07 11:07:32 1103

Socket通信-UDP-DatagramSocket

 使用DatagramSocket通信(UDP) //使用udp发送消息public class UDPMsgSender { private static int port = 8000; //需要换一个端口,不能和tcp相同 public static void send(String msg, InetAddress host){  if(msg == null)    r...

2018-04-27 11:05:35 169

原创 使用synchronized控制线程的执行顺序

 //线程按顺序执行:A-&gt;B-&gt;C-&gt;Dpublic class ThreadTest { private int order = 0; private Object lock = new Object(); //使用synchronized控制线程顺序执行 public static void main(String[] args) {  ThreadTest o ...

2018-04-26 20:49:13 330

原创 java集合的数据结构

 String[]: 数组    固定长度  ArrayList&lt;E&gt;: Object[] 数组实现    查询快、插入快、删除慢      有序    1.5倍+1扩容  LinkedList&lt;E&gt;: Entry&lt;E&gt; next、previous 链表实现  插入快、删除快     有序  1.5倍+1扩容  HashMap&lt;K,V&gt;...

2018-04-26 19:16:33 78

原创 activemq消息队列-使用监听器来接收消息(常用)

//点对点-使用监听器接收消息public class ConsumerListener { // tcp 地址 服务器器端地址 //public static final String BROKER_URL =ActiveMQConnection.DEFAULT_BROKER_URL; // 其值为 "tcp://localhost:61616";public...

2018-04-25 10:29:33 4931

原创 activemq消息队列-发布/订阅

   发布-订阅消息:一个消息多次消费(群发)   阻塞的方式接收消息   public class TopicProducter {        // 发送次数   public static final int SEND_NUM = 10;   // tcp 地址 服务器器端地址   //public static final String BROKER_URL =...

2018-04-25 10:12:21 352

原创 activemq消息队列-点对点通讯

   点对点通讯:消息发送-Queue-消息接收,消息发送到队列,消息接收者阻塞式接收消息。                       如果没有消息,接收消息方法receive()阻塞。   package mq.p2p;import java.util.concurrent.atomic.AtomicInteger;import javax.jms.Connectio...

2018-04-24 21:03:50 249

多线程之计数器CountDownLatch来控制线程的顺序

 /** * 线程等待,类似线程join的作用 * 假设3个线程:2个T1与1个T2, T1执行完之后, T2再执行 * 除了可以使用join控制线程的执行顺序,还可以使用CountDownLatch控制线程的先后顺序 */public class CountDownLatchTest { private AtomicInteger total; CountDownLatch latch =...

2018-04-21 19:24:05 403

多线程之读写锁

 /** * 读写锁:分为读锁和写锁,多个读锁不互斥,读锁与写锁互斥,这是由jvm自己控制的, * 我们只要上好相应的锁即可。如果你的代码只读数据,可以很多人同时读,但不能同时写, * 那就上读锁;如果你的代码修改数据,只能有一个人在写,且不能同时读取,那就上写锁。 * 总之,读的时候上读锁,写的时候上写锁! *  * ReentrantReadWriteLock--顾名思义是可重入的读写锁...

2018-04-21 19:10:02 129

原创 多线程之volatile

 //volatile 保证线程变量的透明public class Volatil { volatile int x =0; //线程共有内存变量,可获取最后一次写的值 private int y = 0;   private void write() {   x = 5;   y = 1;  }      private void read() {   int dummy = y;   w...

2018-04-21 13:30:51 82

多线程之集合类

   CopyOnWriteArrayList   ConcurrentHashMap  CopyOnWriteArraySet  public class SynCollectionTest { //1.同步list: 每个线程都添加一个元素,看总数 private CopyOnWriteArrayList&lt;String&gt; list = new CopyOn...

2018-04-21 13:29:20 170

原创 多线程之AtomicInteger

 public class AtomicIntegerTest { //原子操作:使用 AtomicInteger自增、自减 达到同步的效果 private AtomicInteger num = new AtomicInteger(0); public static void main(String[] args) throws InterruptedException {  Atom...

2018-04-21 13:14:16 386

原创 使用join让线程按顺序执行

 //使用join三个线程按顺序执行:T1、T2、T3public class Test { T1 t1; T2 t2; T3 t3;  public Test() {  t1 = new T1("t1");  t2 = new T2("t2");  t3 = new T3("t3");  t1.start();  t2.start();  t3.start(); } public st...

2018-04-20 19:08:57 408

原创 jdk自带的线程池

public class ThreadPool { public static void main(String[] args) {  /*  //线程池  int corePoolSize = 2;  int maximumPoolSize = 5;  long keepAliveTime = 0;  TimeUnit unit = TimeUnit.SECONDS;  BlockingQ...

2018-04-19 18:18:24 104

重入锁ReentrantLock

 //多个线程增加1public class StaticNum {  private static Object obj = new Object(); private static ReentrantLock lock = new ReentrantLock();  public static void main(String[] args) {    for(int i=0;i&lt;...

2018-04-17 16:23:44 61

线程池

 //线程池: 只是按初始线程数执行任务,并没有创建新的工作者线程(take给阻塞了,影响吞吐量)public class ThreadPool {  //任务队列 private BlockingQueue&lt;Runnable&gt; queue = new LinkedBlockingQueue&lt;Runnable&gt;();  private int poolSize; //...

2018-04-16 08:52:54 80

原创 web项目通过端口访问

   发布到webapp下改一下web项目名为ROOT,这样就可以通过端口访问:http://localhost:8080/

2018-04-15 14:16:31 1295

连接池之四

//简单连接池之四public class RedisPool5 { public static void main(String[] args) {  RedisPool5 pool = new RedisPool5(10,20,5);  try {   for(int i=0;i&lt;280;i++) {    Thread t1 = new TestThread2("t"+i, po...

2018-04-14 20:49:58 125

连接池之二

//简单连接池之二public class RedisPool2 { public static void main(String[] args) {  RedisPool2 pool = new RedisPool2(10,20,5);  try {   for(int i=0;i&lt;28;i++) {    Thread t1 = new TestThread2("t"+i, poo...

2018-04-14 20:13:44 105

连接池之一

 import java.util.Vector;import redis.clients.jedis.Jedis;//简单连接池public class RedisPool { public static void main(String[] args) {  /*  RedisPool pool = new RedisPool(1,1,1);  for(int i=0;i&lt;...

2018-04-14 19:01:46 128

空空如也

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

TA关注的人

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