- 博客(31)
- 收藏
- 关注
原创 Spring如何加载配置文件
配置文件加载代码调用链Main方法 public static void main(String[] args) { ApplicationContext applicationContext = new ClassPathXmlApplicationContext("test.xml"); User user = applicationContext.getBean(User.class); System.out.println(user.g
2021-11-21 15:38:55
842
转载 Filter过滤器学习
一、JAVA代码配置过滤器1.1、自定义一个过滤器MyFilter//自定义一个过滤器MyFilter public class MyFilter implements Filter{ @Override public void init(FilterConfig filterConfig) throws ServletException { System.o...
2019-07-30 19:28:19
299
转载 SpringBoot集成SpringSecurity和JWT
一、配置securityconfig@Configuration@EnableWebSecurity@EnableGlobalMethodSecurity(prePostEnabled = true)public class WebSecurityConfig extends WebSecurityConfigurerAdapter { private final JwtAuth...
2019-07-30 18:39:33
533
转载 拦截器Interceptor学习
拦截器配置一、创建我们自己的拦截器类并实现HandlerInterceptor接口。@Componentpublic class MyInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletRes...
2019-07-25 20:51:36
351
原创 mybatis 插入数据时获取刚插入记录的主键值
mybatis 插入数据时获取刚插入记录的主键值1、<insert id="insert" parameterType="****" > <selectKey resultType="java.lang.Integer" order="BEFORE" keyProperty="id"> SELECT LAST_INSERT_ID() </selectKey...
2019-07-24 17:14:34
1495
原创 wait和sleep方法的区别
1.sleep是Thread类的方法,wait是Object类的方法2.sleep可以使用任何地方,wait只能在同步控制方法和同步代码块中使用3.sleep主要用于线程暂停,wait主要用于线程交互4.sleep方法并不会释放锁,而wait()方法则不同,当调用wait()方法后,线程会释放掉他所占用的锁,从而使线程所在对象中的其他synchronized数据可以被其他线程使用5.sle...
2019-07-24 11:21:02
376
原创 Linux mysql5.7安装
Linux压缩包方式安装Mysql1.选择mysql安装目录(mysql安装在/usr/local/mysql目录里面)mkdir mysql2.本地下载mysql压缩包https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz3.删除linux的mysql1)使用...
2019-07-10 10:57:50
151
转载 Linux安装nginx
Nginx 安装系统平台:CentOS release 6.10 (Final) 64位。一、安装编译工具及库文件yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel二、首先要安装 PCREPCRE 作用是让 Nginx 支持 Rewrite 功能。1、下载 PCRE 安装包,下载地址: ...
2019-07-10 10:57:16
182
转载 HashMap中链表长度超过8会转换成红黑树原因
HashMap在JDK1.8及以后的版本中引入了红黑树结构,若桶中链表元素个数大于等于8时,链表转换成树结构;若桶中链表元素个数小于等于6时,树结构还原成链表。因为红黑树的平均查找长度是log(n),长度为8的时候,平均查找长度为3,如果继续使用链表,平均查找长度为8/2=4,这才有转换为树的必要。链表长度如果是小于等于6,6/2=3,虽然速度也很快的,但是转化为树结构和生成树的时间并不会太短。...
2019-07-03 17:27:53
2558
转载 什么是Redis缓存穿透、缓存雪崩和缓存击穿
Redis缓存极大的提升了应用程序的性能和效率,特别是数据查询方面。但同时,它也带来了一些问题。其中,最要害的问题,就是数据的一致性问题,从严格意义上讲,这个问题无解。如果对数据的一致性要求很高,那么就不能使用缓存。另外的一些典型问题就是,缓存穿透、缓存雪崩和缓存击穿。目前,业界也都有比较流行的解决方案。本篇文章,并不是要更加完美的解决这三个问题,也不是要颠覆业界流行的解决方案。而是,从实际代...
2019-05-24 16:09:06
632
转载 Java中的equals和==
总结1)对于==,如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等;如果作用于引用类型的变量,则比较的是所指向的对象的地址2)对于equals方法,注意:equals方法不能作用于基本数据类型的变量如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;诸如String、Date等类对equals方法进行了重写的话,比较的是所指向的对象的内容。文...
2019-05-09 10:19:08
124
原创 ArrayList源码学习
一.继承的类AbstractList二.实现的类List, RandomAccess, Cloneable, java.io.Serializable三.成员变量private static final int DEFAULT_CAPACITY = 10; //默认容量大小10private static final Object[] EMPTY_ELEMENTDATA = {};//...
2019-05-06 15:36:10
149
原创 Java多态学习
一、多态的运行:实例方法:动态绑定,即引用的变量实际引用的类型是哪一个,则运行哪一个实例方法。在运行时由java虚拟机动态决定。静态方法:静态绑定,即引用的变量所声明的类型是哪一个,则运行哪一个静态方法。在编译阶段就已经做出了决定。成员变量(包括静态变量和实例变量):静态绑定,即引用变量所声明的类型是哪一个,则运行哪个成员变量。在编译阶段就已经做出了决定。public class Supe...
2019-04-28 17:47:03
156
转载 java配置数据池、SessionFactory、事务
一、数据池1.cp30 @Bean public DataSource createDataSource() { ComboPooledDataSource dataSource = new ComboPooledDataSource(); try{ dataSource.setDriverClass(jdbcDriver); ...
2019-04-17 15:44:45
525
原创 mybatis插入语句返回数据的Id
mybatis插入语句返回数据的Id一、mybatis在XML中的Insert语句中加入useGeneratedKeys和keyProperty属性1.设置useGeneratedKeys参数值为true,允许 JDBC 支持自动生成主键,在执行添加记录之后可以获取到数据库自动生成的主键ID。2.keyProperty是实体类主键字段<insert id="insert" useGe...
2019-04-16 16:18:55
1451
原创 启动mvc配置
一、在Java配置中,您可以使用@EnableWebMvc批注来启用MVC配置,如以下示例所示:@Configuration@EnableWebMvcpublic class WebMvcConfig implements WebMvcConfigurer { }二、在XML配置中,您可以使用该mvc:annotation-driven元素启用MVC配置,如以下示例所示:&l...
2019-04-11 15:39:08
252
原创 学习Queue接口源码
Queue一、介绍Queue是一个接口,继承Collection,队列是一种数据结构.它有两个基本操作:在队列尾部加人一个元素,和从队列头部移除一个元素就是说,队列以一种先进先出的方式管理数据二、API分析1.addboolean add(E e); //将元素插入队列中,当队列容量满足时会返回ture否则会返回IllegalStateException异常2.offerboole...
2019-02-22 18:06:11
208
原创 Jpa复杂查询字段、分页、排序
Jpa复杂查询字段、分页、排序 page = page * pageSize; startTime = startTime + " 00:00:00"; endTime = endTime+ " 23:59:59"; Date startDate = DateUtil.parse(startTime, "yyyy-MM-dd HH:mm:ss"); Date endDate = Dat...
2019-02-22 14:13:24
1030
原创 Stack源码学习心得
Stack源码学习一、介绍1、Stack 称为栈(LIFO)后进先出,Stack是继承于Vector(矢量队列)的,Vector底层是数组实现二、示意图三、特点栈(stack),是一种线性存储结构,它有以下几个特点:1、栈中数据是按照&amp;quot;后进先出(LIFO, Last In First Out)&amp;quot;方式进出栈的2、向栈中添加/删除数据时,只能从栈顶进行操作四、源码分析1、默认构造函...
2019-02-21 17:31:24
258
转载 Map排序
一、Key值排序Comparator可以对集合对象或者数组进行排序的比较器接口,实现该接口的public compare(T o1,To2)方法即可实现排序,该方法主要是根据第一个参数o1,小于、等于或者大于o2分别返回负整数、0或者正整数 public static void main(String[] args) { Map<String, String>...
2019-01-14 19:21:08
145
转载 Spring Data Jpa分页查询
Pageable pageable = PageRequest.of(page, pageSize);Page<User> page1 = userRepository.findAll(new Specification<User>() { @Nullable @Override public Predicate toPredicate(Root&...
2019-01-14 16:28:04
301
转载 Java定时任务(Cron表达式详解)
cron表达式详解Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:Seconds Minutes Hours DayofMonth Month DayofWeek Year或Seconds Minutes Hours DayofMonth Month DayofWeek每一个域可出现的字符如下:Seconds:可出现...
2019-01-14 16:17:34
20016
原创 上传Execl号码文件
解析Execl表格中的号码try { MultipartFile file = request.getFile(&quot;file&quot;); //判断文件是否为空 if (file.isEmpty()) { return new ResultModel(1, &quot;空文件错误&quot;); } String fileName = file.getOriginalFilename(...
2018-12-18 11:48:43
213
转载 JDBC
JDBC使用一、加载数据库驱动try { //驱动类com.mysql.jdbc.Driver //就在 mysql-connector-java-5.0.8-bin.jar中 //如果忘记了第一个步骤的导包,就会抛出ClassNotFoundException Class.forName("com.mysql.jdbc.Driver")...
2018-12-18 11:23:42
178
1
转载 Jmeter的几种参数化方式
jmeter工具无论做接口测试还是性能测试,参数化都是一个必须掌握且非常有用的知识点。参数化的使用场景: 1)多个请求都是同一个ip地址,若服务器地址更换了,则脚本需要更改每个请求的ip 2)注册账号,不允许账号重复;想批量注册用户时 3)模拟多个用户登录,需要用到不同用户信息登录时 4)上一个请求的输出结果用于下一个请求的参数传入,例如登录获取到的token信息,用于提交账单请求...
2018-09-29 10:26:28
4558
1
转载 Linux下jira自启动设置
jira 的启动主要依靠的是bin目录下的catalina.sh脚本,提供了如init脚本的start,stop等参数 #!/bin/bash # # chkconfig: 2345 85 15 # description: jira # processname: jira # source function library. /etc...
2018-09-26 16:20:12
1854
转载 JAVA调用中国网建接口实现发送短信验证码
import java.io.UnsupportedEncodingException;import org.apache.commons.httpclient.Header;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.NameValuePair;import or...
2018-09-13 15:38:26
365
原创 Python2使用QQ的SMTP发送邮件
# !/usr/bin/python# -*- coding: UTF-8 -*-import smtplibfrom email.mime.text import MIMETextfrom email.header import Header# 第三方 SMTP 服务mail_host = &amp;quot;smtp.qq.com&amp;quot; # 设置服务器(使用第三方 SMTP 服务发送或本机安装 s...
2018-09-11 14:36:34
737
转载 Linux下安装破解和卸载JIRA7.3
安装与破解 一、环境准备 1、jira7.3的运行是依赖java环境的,也就是说需要安装jdk并且要是1.8以上版本 2、安装MySQL服务器2.1安装MySQL的yum源 # yum -y install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm2.2安装MySQL# yum -y...
2018-08-27 16:47:32
6449
转载 unittest框架学习
一、unittest中最核心的四部分是:TestCase,TestSuite,TestRunner,TestFixture(1)一个TestCase的实例就是一个测试用例。测试用例就是指一个完整的测试流程,包括测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后环境的还原(tearDown)。元测试(unit test)的本质也就在这里,一个测试用例是一个完整的测试单元,通过...
2018-08-23 09:02:36
408
转载 HTMLTestRunner+uiautomator+unittest生成带截图链接的测试报告
1、更改HTMLTestRunner.py文件里的内容<tr id='header_row'> <td>Test Group/Test case</td> <td>Count</td> <td>Pass</td> <td>Fail</
2018-08-21 11:29:05
1183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人