java
viktor-hi
这个作者很懒,什么都没留下…
展开
-
Spring初始化修改bean接口
BeanFactoryPostProcessor可以修改bean定义BeanDefinitionRegistryPostProcessor 可以自己自定义注册bean原创 2021-05-25 01:46:50 · 232 阅读 · 0 评论 -
Mybatis中selectkey写回主键的sql
• DB2 使用 VALUES IDENTITY VAL LOCAL () • MYSQL 使用 SELECT LAST_INSERT_ID () • SQLSERVER 使用 SELECT SCOPE IDENTITY ()。 • CLOUDSCAPE 使用 VALUES IDENTITY VAL LOCAL () • DERBY 使用 VALUES IDENTITY VAL LOCAL () • HSQLDB 使用 CALL IDENTITY () • SYBASE 使用 ...原创 2020-05-24 13:32:23 · 204 阅读 · 0 评论 -
Java POI使用小结
引入maven依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version> ...原创 2020-04-07 17:16:20 · 227 阅读 · 0 评论 -
SpringAOP介绍以及使用
SpringAOP提供两种编程方式1,@AspectJ 利用注解实现2,Schema-based 使用xml实现SpringAOP名词Poincut 切点,表示连接点的集合Join Poin 连接点,表示目标的方法(可以理解为要增强的方法)Weaving 织入,表示把代理逻辑加入 目标方法的过程使用增加依赖<dependency> ...原创 2020-04-07 00:48:58 · 106 阅读 · 0 评论 -
Spring注解事务失效原因以及解决方法
原因在于spring 声明示事物使用动态代理实现,而当调用同一个类的方法时,是会不会走代理逻辑的,自然事物的配置也会失效。比如Spring调用同一个类下的其他方法时用的是this.xxx(),所以不会走代理,导致事务失效解决方法在spring xml中配置 暴露proxy 对象,然后在代码中用AopContext.currentProxy() 就可以获当前代理对象xml配置文件...原创 2020-04-06 02:05:47 · 959 阅读 · 0 评论 -
Spring,SpringBoot整合Mybatis快速入门
Spring整合Mybatis版本对应1,pom文件依赖<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.4</version></d...原创 2020-04-04 21:17:41 · 125 阅读 · 0 评论 -
数据模型定义
原创 2020-03-23 16:45:29 · 682 阅读 · 0 评论 -
JVM,调优参数,回收算法总结
双亲委派模型启动类加载器->扩展类加载器->应用类加载器->自定义类加载器启动类加载器(rt.jar如io包,lang包)扩展类加载器(%JAVA_HOME%/lib/ext/)应用类加载器(classpath)自定义类加载器(自定义路径,如自己导的包自己写的类)类加载时如果未加载,会往上找类加载器,从而保证类的安全性不会被覆盖掉,如不可以重写...原创 2020-03-22 00:34:04 · 89 阅读 · 0 评论 -
Java线程池
/** * Creates a new ScheduledThreadPoolExecutor with the given * initial parameters. * * @param corePoolSize the number of threads to keep in the pool, even * if they are idle, unless {@c...原创 2020-03-11 19:08:16 · 69 阅读 · 0 评论 -
redis分布式锁逻辑分析与问题解决方案
Redis分布式锁方案一使用Redis实现分布式锁最简单的方案是在获取锁之前先查询一下以该锁为key对应的value存不存在如果存在,则说明该锁被其他客户端获取了,否则的话就尝试获取锁获取锁的方法很简单,只要以该锁为key,设置一个随机的值就行了因此,获取锁的过程可以用如下伪代码实现:以Java语言为例,我们一般获取锁后会将释放锁的代码放在finally块中这样做的好处...原创 2020-03-09 16:00:15 · 209 阅读 · 0 评论 -
Spring注解实现
1.创建注解public @interface AnnottationName{}2.元注解(描述注解的一种方式)@Retention定义注解的生命周期:[source->class->runtime]@Documented文档注解,会被Javadoc工具文档化@Inherited是否让子类继承该注解@Target描述了注解的应用范围: T...原创 2020-03-07 00:35:05 · 138 阅读 · 0 评论 -
idea经常用到的快捷键总结
1.Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate)2.Ctrl+Alt+T 生成try catch等等包裹的内容 或者 Alt+enter3.Ctr+shift+U 大小写转化(便于以后查询)4.ALT+回车 导入包,自动修正 遇到问题先使用这个快捷键5.CTRL+ALT+L 格式化代码6.CTRL+E ...原创 2020-03-04 00:13:06 · 134 阅读 · 0 评论 -
Java线程创建方式与区别面试题总结
第一种继承Thread类 重写run方法public class Demo1CreateThread extends Thread { public static void main(String[] args) throws InterruptedException { System.out.println("-----多线程创建开始-----"); ...原创 2020-02-28 17:27:46 · 141 阅读 · 0 评论 -
Java线程工具类的使用
countDownLatch是一个线程计数器,具体使用代码如下package com.tensquare.article.service;import java.util.concurrent.CountDownLatch;/** * @author haixin * @time 2020/2/12 */public class UseCountDownLatch { ...原创 2020-02-18 00:00:23 · 192 阅读 · 0 评论 -
redis问题小结
在启动类或者配置类下添加,解决redis乱码问题@Autowiredprivate RedisTemplate redisTemplate;@Beanpublic RedisTemplate redisTemplateInit() { //设置序列化Key的实例化对象 redisTemplate.setKeySerializer(new StringRedisSerial...原创 2020-02-08 20:09:40 · 83 阅读 · 0 评论 -
SpringBoot打包
1. pom.xml添加<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</ar...原创 2020-02-05 23:09:57 · 69 阅读 · 0 评论 -
docker命令
docker镜像相当于java的类,容器相当于类的实例化对象docker --help 获取docker所有命令docker images -a 获取docker所有镜像docker images -q 获取所有镜像iddocker search tomcat 搜索tomcat的最新镜像docker pull tomcat 拉取tomcat最新镜像docke rmi -f ...原创 2020-01-19 00:58:31 · 93 阅读 · 0 评论 -
nio详解代码实现总结
netty作为异步高性能的通讯框架,往往作为基础通讯组件被各种rpc框架使用,例如Dubbo协议默认使用的netty作为基础通讯组件,用于实现各进程节点之间的内部通讯。...原创 2020-01-06 00:52:37 · 300 阅读 · 0 评论 -
Tomcat的四种io模型介绍以及并发参数解读
nio实现一个线程可以处理多个请求,降低cpu的使用率,简单的实现思想就是使用缓冲区然后用一个集合收集多个请求,把多个请求变成一个队列,让一个线程来处理这个队列,非阻塞并且可以减少cpu要增加线程的消耗。(个人简单理解,有错请直接指出,感谢)package entity;import java.io.BufferedReader;import java.io.IOException;...public class NIOServer { public static void m原创 2019-11-24 15:52:53 · 3071 阅读 · 0 评论 -
Mysql索引总结
1、like是以%开头的查询语句,如果匹配字符串的第一个字符为“%”,索引不会起作用。只有“%”不再第一个位置,索引才会起作用。2、使用多列索引的查询语句,只有查询条件中使用了这些字段中第1个字段时,索引才会被使用。3、使用OR关键字查询语句,查询条件中只有OR关键字,且OR前后的两个条件中列都是索引时,查询中才会使用索引。否则,查询将不使用索引。4.如果列类型是字符串,那一定要在条件...原创 2019-11-16 18:32:26 · 61 阅读 · 0 评论 -
java手动实现hashmap
package com.haixintext.java;//哈希节点public class HashMapNode { int hash; Object key; Object value; HashMapNode next;}package com.haixintext.java;//hashmap方法public class HashMap...原创 2019-06-03 15:54:02 · 486 阅读 · 1 评论 -
java io流
package haixinpackage;import java.io.*;import java.util.ArrayList;import java.util.List;import java.util.Random;public class How2jTest { public static void main(String[] args) { ...原创 2019-06-22 20:05:48 · 82 阅读 · 0 评论 -
leetcode2两数相加 java实现
给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&...原创 2019-07-06 20:07:49 · 228 阅读 · 0 评论 -
mybatis二级缓存
一级缓存sqlsession级别,自动开启当调用SqlSession的修改,添加,删除,commit(),close()等方法时,就会清空一级缓存。二级缓存namespace级别,非自动开启 1到主配置文件中添加setting,2在影射文件中添加cache标签开启二级缓存3要进行二级缓存的javabean必须实现序列化接口serializable 二级缓存清...原创 2019-09-03 15:56:21 · 78 阅读 · 0 评论 -
ssm小结
spring MVC中使用 return "redirect:/car.jsp";实现请求转发时,假如接受方法类上带有@RestController注释时,不会被解析为转发而是直接作为json返回,所以页面会输出"redirect:/car.jsp"字符串。在使用图片上传功能时springmvc里一直注入的是id=resolver,不是multipartResolver,导致一上传就暴状...原创 2019-09-16 23:43:16 · 73 阅读 · 0 评论 -
java双链表实现
package com.haixintext.java;//节点类public class Node { Node previous; //上一个节点 Node next; //下一个节点 Object element; //元素数据 public Node(Node previous,Node next,Object element){ ...原创 2019-06-02 01:22:36 · 403 阅读 · 0 评论