java
cjwdemo
喜欢编程
展开
-
Exception calculating properties for model swagger-ui的model字段不显示问题
2020-12-15 10:17:00.952 WARN 11056 --- [ restartedMain] s.d.s.p.CachingModelPropertiesProvider : Exception calculating properties for model(com.cjw.javaWebFunAll.module.chandao.staff.StaffCreateDto) -> ModelContext{groupName=default, type=com.cjw...原创 2020-12-15 10:34:53 · 6654 阅读 · 4 评论 -
java多线程学习之Condition,实现唤醒指定的部分线程
package learn.thread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/*Condition,实现唤醒指定的部分线程 */public class Demo1原创 2017-05-26 12:11:43 · 5480 阅读 · 1 评论 -
java多线程学习之ReentrantReadWriteLock(一)
package learn.thread;import java.util.concurrent.locks.ReentrantReadWriteLock;/*ReentrantReadWriteLock,比ReentrantLock更强大的锁,读读共享,只有读读是异步,其他读写,写读,写写都是互斥 */public class Demo16 { static ReentrantRead原创 2017-05-26 12:13:46 · 245 阅读 · 0 评论 -
java多线程学习之ReentrantReadWriteLock(二)
package learn.thread;import java.util.concurrent.locks.ReentrantReadWriteLock;/*ReentrantReadWriteLock,比ReentrantLock更强大的锁,读写,写读互斥 */public class Demo17 { static ReentrantReadWriteLock lock = new原创 2017-05-26 12:15:23 · 299 阅读 · 0 评论 -
java多线程学习之原子类
package learn.thread;import java.util.concurrent.atomic.AtomicInteger;/*java原子类,通过Integer原子类进行减一并返回自身操作,免去加锁操作(变量在多线程环境下,例如减1操作是有三步的,每一步为一个原子操作,分取值,加一,再赋值回去,使用原子类的方法则把这3步实现为一个原子操作) */public class原创 2017-05-26 12:16:35 · 301 阅读 · 0 评论 -
java jdbc 查询与更新实现
package jdbc.demo;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;public class Demo1 { private f原创 2017-05-29 11:34:12 · 2967 阅读 · 0 评论 -
java通过jedis使用redis,以及部分api介绍
package redis.demo;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Set;import redis.clients.jedis.Jedis;public class Demo1 { public static Jedis buildJedis()原创 2017-05-29 17:35:30 · 842 阅读 · 0 评论 -
设计模式之代理模式和装饰者模式
package design.agencyAndAdornment.demo;//代理模式和装饰者模式public class Main { public static void main(String[] args) { // 代理模式和装饰者模式的不同是代理模式下调用者不知道会是什么类进行处理,装饰者则是调用者指定处理类 System.out.println(原创 2017-06-02 11:31:00 · 313 阅读 · 0 评论 -
设计模式之饿汉单例
package design.singleton.demo;//饿汉式单例public class SingletonHungryEntity { //直接创建对象实例 private static SingletonHungryEntity s = new SingletonHungryEntity(); // 实例输出出口 public static Singlet原创 2017-06-02 11:32:19 · 229 阅读 · 0 评论 -
设计模式之懒汉单例线程安全
package design.singletonLazy.demo;public class Main2 { public static void main(String[] args) { // 创建多线程验证 Thread t1 = new Thread() { @Override public void ru原创 2017-06-02 11:34:13 · 324 阅读 · 0 评论 -
设计模式之懒汉单例非线程安全
package design.singletonLazy.demo;public class Main { public static void main(String[] args) { // 创建多线程验证 Thread t1 = new Thread() { @Override public void run原创 2017-06-02 11:35:21 · 292 阅读 · 0 评论 -
java md5加密实现
package com.cjwdemo.tieba2017.util;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class MD5Util { public static String getMD5(String str) { String原创 2017-06-09 18:06:25 · 290 阅读 · 0 评论 -
java jdbc 两层轻量封装
package db;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLException;impo原创 2017-06-24 00:50:14 · 510 阅读 · 0 评论 -
java final 关键字使用
package finalTest;public class Test { public static final int num1 = 1;//常用方式1 public final int num2 = 2;//常用方式2// public final Integer num4;//final修饰的变量不初始化直接报错 public final Integer num5原创 2017-08-20 16:41:55 · 374 阅读 · 0 评论 -
java try return 和finally return 执行顺序证明
package finallyTest.demo;public class FinallyDemo1 { static int count = 0; public static int test() { try { count = 1; System.out.println("try的return执行");原创 2017-05-26 12:18:11 · 292 阅读 · 0 评论 -
java线程学习之Condition
package learn.thread;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/*Condition,和ReentrantLock配合使用提供唤醒线程和暂停线程功能 *原创 2017-05-26 12:10:21 · 304 阅读 · 0 评论 -
java多线程学习之ReentrantLock
package learn.thread;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/*ReentrantLock,比synchronized轻量灵活强大的锁 */public class Demo13 extends Thread { @Override原创 2017-05-25 15:21:16 · 729 阅读 · 0 评论 -
java 抽象类
package learn.abstract1;public abstract class AbstractDemo { // 抽象类自己的实现 private void test() { System.out.println("抽象类实现"); } // 抽象类留给继承类实现 public abstract void test2(); p原创 2017-05-25 11:28:16 · 230 阅读 · 0 评论 -
java接口
java8版本,接口与抽象类只有多继承和单继承的区别package learn.interface1;public interface InterfaceDemo { // java8新特性,接口也有自己实现 public default void test() { System.out.println("我是test方法"); } public def原创 2017-05-25 11:31:08 · 272 阅读 · 0 评论 -
java socketIO demo
先启动服务端,再启动客户端 clientpackage learn.io;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.InetSocketAddress;import java.net.Socket;public class ClientD原创 2017-05-25 11:33:33 · 4531 阅读 · 1 评论 -
java socketNIO demo
先启动server 再启动clientpackage learn.nio;import java.io.IOException;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;import java.nio.ByteBuffer;import java.nio.cha原创 2017-05-25 11:38:07 · 316 阅读 · 0 评论 -
初探 java反射机制
java可以通过反射机制获取类的各种信息和创建类的实例,就算将构造方法用private修饰,也可以创建,通过反射能创建很多强大的功能,算是写框架的常用方法和技巧这里只介绍通过反射获取类的各种信息实验类package learn.reflect;public class UserBean { private Integer id; private String usrname;原创 2017-05-25 11:46:01 · 244 阅读 · 0 评论 -
java 多线程学习之创建线程
package learn.thread;public class Demo1 { public static String stemp = null; public static void main(String[] args) { // 获取运行线程名称 stemp = Thread.currentThread().getName();原创 2017-05-25 11:49:48 · 205 阅读 · 0 评论 -
java多线程学习之线程安全问题
package learn.thread;/* * 线程访问变量在没锁情况下会有线程安全问题 */public class Demo3 extends Thread { public Demo3(String name) { super(name); } // 线程共享数据 String name; @Override public vo原创 2017-05-25 11:55:25 · 330 阅读 · 0 评论 -
java多线程学习之通过synchronized加锁解决线程安全问题
商品类package learn.thread;public class Commodity { public static int cNum = 5; // 购买并返回剩余数 public static int buyCommodity() { cNum -= 1; return getcNum(); } public stati原创 2017-05-25 11:58:34 · 420 阅读 · 0 评论 -
java多线程学习之异常停止方法
package learn.thread;/* * 线程停止方法方法 -异常停止法 */public class Demo5 extends Thread { public Demo5(String name) { super(name); } String name; @Override public void run() {原创 2017-05-25 12:00:29 · 317 阅读 · 0 评论 -
java多线程学习之状态停止法
package learn.thread;/* * 线程停止方法方法 -状态停止法 * 结合return 能达到立即停止的效果 */public class Demo6 extends Thread { public Demo6(String name) { super(name); } String name; @Override publ原创 2017-05-25 12:01:21 · 194 阅读 · 0 评论 -
java多线程学习之停止休眠中的线程问题
package learn.thread;/* * 线程停止方法方法 -使休眠中的线程进入停止状态 * 报这个错,然后停止线程java.lang.InterruptedException: sleep interrupted * 如果先设置停止状态后再休眠,会休眠后在退出 */public class Demo7 extends Thread { public Demo7(Strin原创 2017-05-25 12:02:48 · 764 阅读 · 0 评论 -
java多线程学习之线程通信-wait()等待 notify()唤醒
package learn.thread;import java.util.ArrayList;import java.util.List;import org.omg.Messaging.SyncScopeHelper;/* * 线程通信-wait()等待 notify()唤醒 */public class Demo9 { public static List<Object> os原创 2017-05-25 12:25:01 · 409 阅读 · 0 评论 -
java多线程学习之通过轮询实现线程通信
package learn.thread;import java.util.ArrayList;import java.util.List;/* * 线程通信-轮询方式 */public class Demo10 { public static List<Object> os = new ArrayList<Object>(); public static void main(S原创 2017-05-25 12:29:07 · 4230 阅读 · 0 评论 -
java多线程学习之使用join()方法实现线程插队
package learn.thread;/* * join() 线程插队方法 */public class Demo11 { public static int i = 0; public static void main(String[] args) { Thread t1 = new Thread() { @Override原创 2017-05-25 12:31:31 · 1403 阅读 · 0 评论 -
java多线程学习之通过ThreadLocal实现每个线程拥有自己的变量
package learn.thread;/* * ThreadLocal实现线程拥有自己的变量值 */public class Demo12 { public static ThreadLocal tl = new ThreadLocal(); public static void main(String[] args) { if (tl.get() == nu原创 2017-05-25 12:33:29 · 599 阅读 · 0 评论 -
java 类总结
package innerClassDemo;public class ClassDemo/* 所有包都可以访问和创建的类 */ extends Test/* 被继承类,每次new ClassDemo的时候都要调用Test的无参构造生成一个Test的实例给ClassDemo类使用 */ { // 当创建包含类时,可再创建这个内部类 public class class1原创 2017-05-25 11:21:55 · 215 阅读 · 0 评论