java代理模式 代理模式的定义代理模式是指为其他对象提供一个代理,以控制对这个对象的访问代理模式现实生活场景房产中间婚介所黄牛买票代理模式的适用场景保护目标对象增强目标对象静态代理的实现/** * 定义一个接口 */public interface Person { void buyCars();}/** * Zhangsan的需求 */public class Zhangsan implements Person{ @Override public
设计模式-单例模式 设计原则开闭原则依赖倒置原则单一职责原则接口隔离原则迪米特法则里氏替换原则合成复用原则饿汉式单例/** * 饿汉式单例 * 优点:执行效率高,没有锁 * 缺点:某些情况会造成内存浪费 */public class HungrySingleton { private static final HungrySingleton hungrySingleton = new HungrySingleton(); public HungrySingleton() {
线程死锁与解决 产生死锁的条件互斥,共享资源A和共享资源B只能被一个线程占用占有且等待,线程1已经取得共享资源A,在等待共享资源B的时候不释放共享资源A不可抢占,其他线程不能强行抢占线程1占有的资源循环等待,线程1等待线程2占有的资源,线程2等待线程1占有的资源,就是循环等待如何解决死锁重启应用提前规避(破坏死锁条件的一个,互斥是锁的本身一个条件,无法破坏)死锁举例/** * 创建一个账号类 */public class Account { private String accoun
线程的基本操作和原理 Thread.join()的使用和原理public class ThreadJoinDemo { private static int x= 0; private static int i= 0; public static void main(String[] args) throws InterruptedException { Thread t1 = new Thread(() -> { x = 1;
2021-11-06 【多线程的基本认识】 多线程认识线程的基本认识线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位为什么出现线程1.在多核CPU中,利用多线程可以实现真正意义上的并行执行2.在一个应用进程中,会存在多个同时执行的任务,如果其中一个任务被阻塞,将会引起不依赖该任务的任务也被阻塞,通过对不同任务创建不同的线程去处理,可以提升程序处理的实时性3.线程可以认为是轻量级的进程,所以线程的创建、销毁比进程更快线程的生命周期线程从创建到销毁,一共经历6个状态1. NEW:初始状态,线程被构
ArrayList源码解读 ArrayList源码分析相关接口抽象类介绍 1.AbstractCollection:实现了Collection中大量的函数,除了特定的几个函数iterator()和size()之外的函数 2.AbstractList:该接口继承于AbstractCollection,并且实现List接口的抽象类。它实现了List中除size()、get(int location)之外的函数。AbstractList的主要作用:它实现了List接口中的大部分函数 和AbstractCollection相比,A
2021-11-05 java集合 初步认识java集合java数组初步理解新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入java数组初步理解你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器,
eclipse中的代码补全快捷键 修改快捷键的方法,点eclipse中的 windows - preferences;选择General->keys;找到Content Assist,修改成其他快捷键。转一篇网上的快捷键大全:Eclipse快捷键大全(转载)2009-05-15 15:31Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行Ctrl+Alt+↓ 复制当前行到下一行(复制增...
java 集成腾讯云发送短信 首先申请一个腾讯云的账户,登陆后访问以下网址https://console.cloud.tencent.com/sms新建一个应用查看SDK AppID和App Key 设置常量 SMSContentUtil中常量皆由腾讯云中申请服务类代码package com.util;import com.github.qcloudsms.*;import com....
Oracle将一列分成多列 和 行转列 一列分成多列方法:1.SELECT REGEXP_SUBSTR(name,'^[^ ]*') first_name, REGEXP_SUBSTR(name, '([[:alpha:]]+)$') middle_name FROM CELEBRITY2.SELECT SUBSTR(NAME, 1, INSTR(NAME, ' ')-1) FIRST_NAME, SUBSTR(NAME, IN...
java附件上传Aes加密,下载解密 package com.demo;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;i...
java导出excl方法 public class RequireExcelController { @Resource private RequireService requireService; @RequestMapping(value="requireExport") public String requireExport(HttpServletRequest request,HttpServletRespo...
vus.js 常用语法 Vue.js的指令是以v-开头的,它们作用于HTML元素,指令提供了一些特殊的特性,将指令绑定在元素上时,指令会为绑定的目标元素添加一些特殊的行为,我们可以将指令看作特殊的HTML特性(attribute)。v-if:v-if是条件渲染指令,它根据表达式的真假来删除和插入元素,它的基本语法如下:v-if="expression"expression是一个返回bool值的表达式,表达式可以是一个bo...
easyui 中的方法 1.鼠标右键 菜单先创建一个隐藏的div style="width: 80px; display: none;">onclick="updateDy()">修改onclick="submitDeleteForm()">删除js代码编写$("#dg").datagrid({onRowContextMenu: function (e, rowIndex,
easyui 编辑单元格 保存 var editIndex = undefined;function endEditing() {//该方法用于关闭上一个焦点的editing状态 if (editIndex == undefined) {return true}if ($('#用table id').datagrid('validateRow', editIndex)) {$('#用table id')
orcle orcle配置url=jdbc\:oracle\:thin\:@localhost\:1521\:orclusername1=myBatispassword=123456driverClassName=oracle.jdbc.driver.OracleDriverorcle驱动包加载ojdbc6ojdbc63.3.0systemorcle jar
java 基础常见面试题和答案 1.String类为什么是final的。主要是为了“效率”和“安全性”的缘故。若String允许被继承,由于它的高度被使用率,可能会降低程序的性能,所以String被定义成final。2.HashMap的源码,实现原理,底层结构。总的来说,HashMap就是数组+链表的组合实现,每个数组元素存储一个链表的头结点,本质上来说是哈希表“拉链法”的实现。3.描述一下Arr
json的方法 String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%>">My JSP 'list.jsp