VS2013写代码时几个常用的快捷键 0 查看函数具体实现:说明:组合键是同时按,非组合键是按住Ctrl依次按后面的键1.格式化 格式化全部代码 Ctrl+A+K+F 格式化选中的代码 Ctrl+K+F2.注释代码 注释代码 Ctrl+K+C(comment) 反注释代码 Ctrl+K+U3.代码录入智能提示 组合键 Ctrl+J 组合键 Alt+→4.移动调整代码 1)调整一行:按住Alt键同时,按方向键上或下可以调整代码...
C语言学习注意 1.函数:C中函数传递的是值,不是地址值。不会对原变量进行操作。例如:1.函数的传值与传址(ab与xy是俩个完全独立的空间,地址是不一样的)//swap1在被调用的时候,实参传给形参,其实形参是实参的一份临时拷贝//改变形参,不能改变实参//形参是在函数调用的时候才实例化,才开辟内存空间void Swap1(int x, int y)//{ int z = 0; z = x; x = y; y = z;}void Swap2(int* pa, int* pb)//{ i
策略模式对象初始化为空解决方案及项目中具体的使用 使用类:@Componentpublic class TaskReceiver { @Autowired TaskHandlerMapping mapper; @RabbitHandler @RabbitListener(queues = {MqTaskConstant.QUEUE_WS_CAMUNDA_EVENT_TASK} ) public void sendNotice(Message message, Channel channel) th
模板设计模式 模板设计模式:含义:父类统一事情步骤,父类定义抽象方法既是(钩子方法),其中细节由子类实现。第三方调用父类接口。例子: GetTimeTemplate定义固定的时间计算方式 :code()方法为真正操作,每个子类实现不一样。public abstract class GetTimeTemplate { // 固定流程方法 public long getTime() { // 获取起始时间 long t1 = System.currentTimeMillis();
代理模式中动态代理和静态代理 代理模式是SpringAOP的底层分类:动态代理和静态代理10.1、静态代理代码步骤:1、接口package pojo;public interface Host { public void rent();}2、真实角色package pojo;public class HostMaster implements Host{ public void rent() { System.out.println("房东要出租房子"); }}3、代理角色pack
单例模式实现方式 1. 双重检测锁方式:public class StudentTestwkb { private volatile StudentTestwkb student = null; private StudentTestwkb(){} public StudentTestwkb getStudentTestwkb(){ if(student == null){ synchronized(StudentTestwkb.class){
设计模式学习 七大设计原则 开闭原则(对修改关闭、对扩展开放):学习设计模式或者设计原则,就是为了去扩展代码功能的时候不去修改代码。 理式替换原则(继承):不要破坏类的继承关系,其实就是不要轻易去改动父类已经实现的代码。 接口隔离原则(接口):保证类实现的接口要单一,也是为了方便类的扩展和维护(也是为了开闭原则) 依赖倒置原则(面向接口或者面向继承编程):为了降低类之间的耦合性,尽量的不去面向细节或者实现进行编程。 单一职责原则(类):保证类本身功能职责单一,这样就会减少类的改动几率 合成复用原则(组合或者聚
mybatis源码分析 mybatis查看流程:1-3是项目启动时进行初始化的过程。4是我们进行查询时真正的执行过程。1 全局配置文件加载:1.SqlSessionFactoryBuilder创建SqlsessionFactory时,需要传入一个Configuration 对象。2.XMLConfigBuilder对象会去实例化Configuration。 3.XMLConfigBuilder对象会去初始化Configuration对象。 通过XPathParser去解析全局配置文件,形成Document对象
github创建新的仓库并上传文件夹 1. 界面创建新的库2. 根据提示将本地的文件夹创建为仓库echo "# kaikeba2020" >> README.mdgit initgit add README.mdgit commit -m "first commit"git branch -M maingit remote add origin https://github.com/wkbgithub/kaikeba2020.gitgit push -u origin main3. 此时仓库中没有.
docker安装redis和mysql docker psdocker imagesdocker help进入容器 : docker exec -it 容器id(或者name) /bin/bashredis:redis.conf的内容:protected-mode noappendonly yesrequirepass 123456 启动挂载命令docker run --restart=always -p 6379:6379 --name redis -v /root/docker/redis/con.
jackson和fastjson对比使用 其中jackson的工具类:public class CNPCJacksonUtil { private final static ObjectMapper objectMapper = new ObjectMapper(); static { objectMapper.configure(JsonParser.Feature.ALLOW_COMMENTS, true); objectMapper.configure(JsonParser.Featur
Spring boot Caffeine缓存 1. 引入jar: implementation 'com.github.ben-manes.caffeine:caffeine:2.8.4' implementation('org.springframework.boot:spring-boot-starter-cache')2. 使用配置类配置package com.cnpc.cmp.cmpworksheetapp.config;import com.github.benmanes.caffeine.cache.*;import
JDK1.8的lamda表达式 JDK1.8的lamda表达式主要有:1 //筛选与切片 filter:过滤出符合条件的元素 limit:使其元素不超过一定值。 skip:跳过前面一定数量的元素 distinct :去除重复数据,要重写hashcode和equals方法2 //映射 map :根据规则将元素a 转变成要的 元素b3 //排序 sorted() sorted(Comparator<? super T> comparator);4 //终止操作 1.匹配与查找 //allMatch 检查元素是否都
IO流中while 和if的区别 BIO服务端:public class BIOServer { ServerSocket server; //服务器 public BIOServer(int port){ try { //把Socket服务端启动 server = new ServerSocket(port); System.out.println("BIO服务已启动,监听端口是:" + p...
mysql 数据库连接池查询 show full processlist;show open tables where In_use > 0;show processlist;select * from information_schema.processlist where db = '数据库名称' and command != 'Sleep' and Time >1000 ...
云服务器 ECS MySQL 忘记 root 密码解决办法 转的阿里云的,但是里面会有没说明白的,请看我现在这个:如果使用 MySQL 数据库忘记了账号密码,可以通过调节配置文件,跳过密码的方式登数据库,在数据库里面修改账号密码,一般默认的账号问 root1、编辑 MySQL 配置文件 my.cnf注意: 以实际 my.cnf 配置文件路径为准vim /etc/my.cnf[mysqld]skip-grant-table
使用MDC和AOP及拦截器为日志加跟踪标识 1. 参考文章:https://segmentfault.com/a/1190000022721682,https://blog.csdn.net/millery22/article/details/866723542. 开始使用了TreadLocal和拦截器增加标识,但是发现想中消费mq消息的日志,无法打印唯一标识。文章:https://blog.csdn.net/whxwkb/article/details/111594712。查询到MDC可以。3. 拦截器:public class L
项目日志添加统一个uuid标识 1. 使用TreadLocal保存每个调用的uuidThreadLocalInfo:import java.util.HashMap;/** * @Description: * @Author: wangkebing * @Date: 2020/12/23 * @Param: * @Retrun: **/public class ThreadLocalInfo extends HashMap<String, Object> { public ThreadLoc
String.format常见使用(转) // %nd 输出的整型宽度至少为n位,右对齐,%5d即宽度至少为5位,位数大于5则输出实际位数// %0nd 用得比较多,表示输出的整型宽度至少为n位,不足n位用0填充 System.out.printf("%5d ",123 ); System.out.printf("%05d ",1234 ); System.out.printf("%05d ",12345 ); System.out.pri.