上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页
摘要: 表A ID NAME 1 A1 2 A2 3 A3 表B ID AID NAME 1 1 B1 2 2 B2 3 2 B3 SELECT ID,NAME FROM A WHERE EXIST (SELECT * FROM B WHERE A.ID=B.AID) 等价于 select id.name 阅读全文
posted @ 2019-04-24 16:24 第二人生Bonnie 阅读(1404) 评论(0) 推荐(0) 编辑
摘要: 代码示例: 阅读全文
posted @ 2019-04-23 15:28 第二人生Bonnie 阅读(177) 评论(0) 推荐(0) 编辑
摘要: git本地创建多个分支,互不干扰。 情景:在做某个需求a时,先需要修改紧急bug b;发版时发的是远程dev的代码。 方式一(推荐): (1)本地已有分支dev,写了需求a,先commit,即将工作区的内容提交到版本库中,否则切换到其他分支时,就会覆盖当前工作区的代码。(这步很重要) (2)在本地创 阅读全文
posted @ 2019-04-15 17:27 第二人生Bonnie 阅读(6021) 评论(0) 推荐(1) 编辑
摘要: java设计模式: 1、单例模式 2、工厂模式 3、代理模式 4、迭代器模式 5、原型模式 阅读全文
posted @ 2019-03-20 15:11 第二人生Bonnie 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 1. Java中导致死锁的原因 Java中死锁最简单的情况是,一个线程T1持有锁L1并且申请获得锁L2,而另一个线程T2持有锁L2并且申请获得锁L1,因为默认的锁申请操作都是阻塞的,所以线程T1和T2永远被阻塞了。导致了死锁。这是最容易理解也是最简单的死锁的形式。但是实际环境中的死锁往往比这个复杂的 阅读全文
posted @ 2019-03-12 11:12 第二人生Bonnie 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1、创建线程: 2、实现同步 结果: 由于没有实现同步,出现了num为负数的情况。 3、生产者和消费者 生产者: 消费者: 测试: wait():执行该方法的线程对象,释放同步锁,JVM会把该线程放到等待池中,等待其他线程唤醒该线程 notify():执行该方法的线程唤醒在等待池中等待的任意一个线程 阅读全文
posted @ 2019-03-12 11:12 第二人生Bonnie 阅读(188) 评论(0) 推荐(0) 编辑
摘要: public class A{ private static int c=50;//全局静态变量 private String b;//实例变量(全局非静态变量) public void m(int n){ System.out.println(n);//局部变量 } } 全局静态变量:存放在jvm 阅读全文
posted @ 2019-03-11 15:52 第二人生Bonnie 阅读(130) 评论(0) 推荐(0) 编辑
摘要: (1)String:String s="abc";如果像上面这样声明String变量,则现在jvm的方法区的运行时常量池中寻找是否存在"abc"这个字符串。如果有就使用已经存在的,如果没有,则在运行时常量池创建这个字符串。String s="abcd";String 字符串是不可更改的,接着执行上句 阅读全文
posted @ 2019-03-05 11:06 第二人生Bonnie 阅读(268) 评论(0) 推荐(0) 编辑
摘要: java8新特性: lamda表达式 方法引用 函数式接口 stream Optional 阅读全文
posted @ 2019-02-20 13:59 第二人生Bonnie 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 1.组建扫描 在类上添加注解@Component注解可以实现组建扫描 2.自动装配 通过在属性上或者方法上添加@Autowired注解可以实现自动装配(在单例bean,没有歧义的情况下) 3.通过java代码实现显示装配 当使用第三方库时,无法实现自动装配,所以需要显示装配bean。在配置类中添加@ 阅读全文
posted @ 2019-01-21 14:03 第二人生Bonnie 阅读(1718) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页