自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 问答 (3)
  • 收藏
  • 关注

原创 设计模式之生产者消费者模式

❤实现机制        生产者生产数据到缓冲区中,消费者从缓冲区中取数据。        如果缓冲区已经满了,则生产者线程阻塞;        如果缓冲区为空,那么消费者线程阻塞。❤为什么要建立缓冲区?为什么不让生产者直接调用消费者的某个方法直接把数据传递过去?1.并发性        由于方法调用是阻塞的,在消费者的方法没有返回之前,生产者只好一直等在那边。万一消费者处理数据很慢,生产者一直等...

2018-05-01 12:30:58 746

原创 设计模式之适配器模式

❤定义适配器就是一种适配中间件,它存在于不匹配的二者之间,通过转换将二者匹配。简单点理解就是平常所见的转接头,转换器之类的存在。❤分类类适配器、对象适配器、接口适配器1.类适配器❤实例场景:将传统的ps2接口转换为热插拔的usb接口public interface Ps2 { void isPs2();}public interface Usb { void isUsb();}publ...

2018-05-01 12:04:58 172

原创 设计模式之观察者模式

❤角色组成❤抽象目标(Subject):增加观察者方法+删除观察者方法+通知所有观察者的方法。一般用一个抽象类和接口来实现。❤抽象观察者(Observer):有一个更新方法,在得到主题通知时更新自己。(即把目标信息同步给自己)❤具体目标(ConcreteSubject):目标信息+观察者集合。是一个具体的信息,信息状态改变后通知所有观察者(比如天气状态)❤具体观察者(ConcreteObserve...

2018-05-01 11:58:38 177

原创 设计模式之工厂模式

1.简单工厂模式❤场景辅助理解        一个面条工厂生产不同的面条❤模式分析        简单工厂模式是由一个工厂对象利用if或者 switch等逻辑判断创建不同的产品,当需要增加产品时,需要修改工厂方法的代码,即新增一个逻辑条件,违背开闭原则❤源码撑腰public interface Noodles { void getNoodles();}public class LaNoodl...

2018-05-01 11:37:14 139

原创 Spring MVC Ajax Json

请求数据为空,响应数据json格式的字符串@ResponseBody当控制器处理后不需要进行页面跳转而是返回一些数据,则需要使用@ResponseBody@ResponseBody表示Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。 控制层:    @RequestMapp

2017-12-24 09:21:20 174

原创 rownum和rowid

区别rownum和rowid都是伪列rownum是根据sql查询出的结果给每行分配一个编号rowid是物理结构上的,在每条记录insert到数据库中时,都会有一个唯一的物理记录rownum先看结果:①查找前三行的数据Select *from test where rownum ②查找三行以后的数据错误:Select *from tes

2017-12-01 14:19:21 1247

原创 含有return的try catch finally 异常嵌套测试总结

try { A try { B } catch { C } finally { D } E} catch { F} finally { G}如果内部E中无returnA异常:A-F-GB异常:         C能捕获:A-B-C-D-E-G         C不能捕获:A-B-D-F-G(无E)C异常:A-B-D-E-GD

2017-11-30 12:04:32 536

原创 数据库三范式总结

1NF1NF中的每个属性都不可再分,是所有关系型数据库的最基本要求。即关系型数据库中不可能存在这样的表 在了解2NF之前首先要了解几个概念:函数依赖X→Y(X可能有多个属性),成Y函数依赖X学号 → 姓名(学号,课名) → 分数完全函数依赖X的任何一个真子集,都不能保证X→Y成立,称Y完全函数依赖X例如:(学号,课名)→分数,但是X的真子集学号→

2017-11-30 11:29:38 245

原创 ==、equals()、hashcode()对比

结论:1.     对于基本数据类型,==比较的是值,equals方法不能使用2.     对于String和包装类,==比较的是地址,equals方法比较的是值3.     对于继承Object的类,==比较的是地址,equals比较的也是地址1.基本数据类型==比较的是值equals()是不能使用的(因为eauqls()是Object类的方法,对象才能调用)

2017-11-27 18:45:19 440

原创 ThreadLocal的由来

个人理解,请大家擦亮眼睛,有错必究,否则误人子弟! 首先要知道,线程安全,通俗来讲就是,一个线程调用此变量不会影响另一个线程 静态变量:线程非安全(因为静态变量位于方法区,所有对象共享内存,一旦静态变量被修改,其他对象均受影响,故线程非安全)成员变量:非单例线程安全                      单例模式线程非安全(因为成员变量为对象私有,存放在堆中,调用该对象

2017-11-27 10:24:41 267

原创 Hibernate 查询返回值总结

PDM Tclass Tstudent Get和load区别1.get方式得到学生信息,get以后发出sql语句,得到stu对象    public void getTstudent(String sno) throwsException{       this.openConnection();       Tstudent stu=(Tstudent

2017-11-24 09:21:48 3990

空空如也

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

TA关注的人

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