MySQL性能优化必知:长连接、短连接、连接池

当数据库服务器和客户端位于不同的主机时,就需要建立网络连接来进行通信。客户端必须使用数据库连接来发送命令和接收应答、数据。通过提供给客户端数据库的驱动指定连接字符串后,客户端就可以和数据库建立连接了。可以查阅程序语言手册来获知通过何种方式使用短连接、长连接。01 短连接短连接是指程序和数据库通信时需
2023年08月07日 604次浏览

mybatis plus updaet时 更新时间 自动填充失效

问题描述:调用mybatisplus的IService接口中的update(Wrapper updateWrapper),update_time没有自动填充。spuService.update(updateWrapper);解决方案:不使用update(wrapper xxx)方法,使用以下方法替代
2023年06月17日 768次浏览

exists、in、inner join的区别和效率

in用于检查一个值是否包含在列表中。exists用于检查子查询返回行的存在性在子查询中,exists提供的性能通常比in提供的性能要好IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况in 和existsin是把外表和内表作hash 连接,而exists 是对外表作loop 循环
2023年06月09日 1,029次浏览

状态模式(二十五)

类的行为是基于它的状态改变的意图:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类菜鸟案例:我们将创建一个 State 接口和实现了 State 接口的实体状态类。Context 是一个带有某个状态的类。StatePatternDemo,我们的演示类使用 Context 和状态对
2023年06月09日 728次浏览

访问者模式(二十四)

我们使用了一个访问者类,它改变了元素类的执行算法元素的执行算法可以随着访问者改变而改变意图:主要将数据结构与数据操作分离。菜鸟案例:我们将创建一个定义接受操作的 ComputerPart 接口。Keyboard、Mouse、Monitor 和 Computer 是实现了 ComputerPart 接
2023年06月09日 600次浏览

模板模式(二十三)

一个抽象类公开定义了执行它的方法的方式/模板意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。感觉特别像父类把东西都写好了,你只需要加点东西就成跟自己的要求相同,并形成符合自己条件的类菜鸟案例:我们将创建一个定义操作的
2023年06月09日 596次浏览

策略模式(二十二)

一个类的行为或其算法可以在运行时更改意图:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换菜鸟案例:我们将创建一个定义活动的 Strategy 接口和实现了 Strategy 接口的实体策略类。Context 是一个使用了某种策略的类。StrategyPatternDemo,我们的演示
2023年06月09日 600次浏览

空对象模式(二十一)

一个空对象取代 NULL 对象实例的检查Null 对象不是检查空值,而是反应一个不做任何动作的关系菜鸟案例:我们将创建一个定义操作(在这里,是客户的名称)的 AbstractCustomer 抽象类,和扩展了 AbstractCustomer 类的实体类。工厂类 CustomerFactory 基于
2023年06月09日 584次浏览

代理模式(二十)

一个类代表另一个类的功能这里只讲代理模式,关于动态代理和静态代理请参考我另一个博客java中的代理菜鸟案例:我们将创建一个 Image 接口和实现了 Image 接口的实体类。ProxyImage 是一个代理类,减少 RealImage 对象加载的内存占用。ProxyPatternDemo,我们的演
2023年06月09日 578次浏览

观察者模式(十九)

当对象间存在一对多关系时,则使用观察者模式当一个对象被修改时,则会自动通知它的依赖对象菜鸟案例:观察者模式使用三个类 Subject、Observer 和 Client。Subject 对象带有绑定观察者到 Client 对象和从 Client 对象解绑观察者的方法。我们创建 Subject 类、O
2023年06月09日 571次浏览