自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 收藏
  • 关注

原创 spring-boot项目,mybatis只读取了父模块的mapper目录,子模块的mapper目录读取不到

spring-boot项目,mybatis读取不到mapper文件

2024-01-16 11:30:15 652

原创 ApiPost实现每个目录单独一个前置url

ApiPost实现每个目录单独一个前置url

2022-06-15 12:55:22 5701 3

原创 SpringBoot启动项目报错: Consider defining a bean of type ‘xxx‘ in your configuration.

今天遇到一个问题很奇怪,SpringBoot项目启动报错提示:Description:Field userDAO in com.cml.service.impl.UserServiceImpl required a bean of type 'com.cml.dao.UserDAO' that could not be found.Action:Consider defining a bean of type 'com.cml.dao.UserDAO' in your configurati

2021-12-26 20:09:58 23184

原创 字符串中写代码_idea强大的语言注入功能

字符串中写代码_idea强大的语言注入功能语言注入介绍长期语言注入使用注释临时语言注入开启语言专用编辑器取消语言注入语言注入介绍语言注入就是告诉idea你这段字符串使用的是什么语言,这样编辑字符串时就会给你提供相应的语法提示和语法补全功能长期语言注入使用注释在字符串上一行添加注释//language=语法名称,比如//language=html,你在编辑字符串时idea就会按照html语法对字符串进行检查临时语言注入在字符串中使用Alt+Enter,选择inject language or

2021-11-12 11:12:36 2618 1

原创 线程池学习

线程池原理一、为什么要用线程池二、JUC的线程池架构1. Executor2. ExecutorService3. AbstractExecutorService4. ThreadPoolExecutor5. ScheduledExecutorService6. ScheduledThreadPoolExecutor7. Executors三、Executors的4种快捷创建线程池的方法1. newSingleThreadExecutor创建“单线程化线程池”2. newFixedThreadPool创建“

2021-11-11 16:12:19 1225

原创 spring aop记录日志存储在数据库

使用AOP记录日志存储在数据库第一步 创建日志表log第二步 定义切面类LogAspect第三步 配置JDBCTemplate和aop:aspect第四步 测试运行第一步 创建日志表log第二步 定义切面类LogAspectpackage com.cml.aspect;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.ProceedingJoinPoint;import org.springframework.beans.fa

2021-11-09 12:49:51 1138

原创 手写jdk动态代理_笔记

手写jdk动态代理_笔记思路实现MyInvocationHandler接口MyClassLoaderMyProxy测试动态生成的类长这个样子思路先上一张图对目标对象进行代理,本质其实是底层动态生成一个类加载到 jvm 中,该类将实现原目标对象的所有接口,重写所有方法,通过动态代理扩展功能,其实也可以理解为是通过重写扩展功能,下面就通过这个思路手写一个动态代理实现jdk动态生成代理对象步骤创建目标对象目标对象通过反射获取所有接口动态生成Java源代码,实现所有接口通过IO流生成Java文

2021-11-03 16:58:18 602 2

原创 Java动态代理笔记

Java动态代理笔记动态代理jdk1.定义通知类2.实现InvocationHandler接口3.定义接口和实现类4.测试cglib1.实现cglib的MethodInterceptor接口2.测试aop1.实现aop的MethodInterceptor接口2.在applicationContext.xml中配置代理对象3.测试动态代理jdk1.定义通知类package com.cml.one;/** * 此类做通知 * @author 曹明亮 * */public class Asp

2021-11-03 15:15:49 106

原创 I/O流_笔记

I/O流I 是 input 输入, O 是output输出。BIO输入输出CPU有输入输出、内存有输入输出、硬盘输入输出、网卡有输入输出…每一个硬件都是以自己为基准。JVM是一个程序,程序又都运行于内存之上。文件操作Java中需要使用 File 类来进行文件的CURD操作。File file = new File(文件地址);创建文件public static void create() throws IOException { File file = new File(地址)

2021-09-26 19:09:52 216 1

原创 2018第九届蓝桥杯国赛C组_java

2018第九届蓝桥杯国赛C组_java1.年龄问题2.海盗与金币3.全排列4.约瑟夫环1.年龄问题【问题描述】s夫人一向很神秘。这会儿有人问起她的年龄,她想了想说:“20年前,我丈夫的年龄刚好是我的2倍,而现在他的年龄刚好是我的1.5倍”。你能算出s夫人现在的年龄吗?答案提交注意,需要提交的是一个整数,不要填写任何多余的内容。【题解】答案:40列方程 2(x-20)+20=1.5x解得x = 402.海盗与金币【问题描述】12名海盗在一个小岛上发现了大量的金币,后统计一共有将近5

2020-11-03 18:27:12 737 1

原创 第十届蓝桥杯国赛C组_java

第十届蓝桥杯国赛C组_java试题 A: 奇数倍数【问题描述】【题解】试题 B: 递增序列【问题描述】【题解】试题 C: 平方拆分【问题描述】【题解】试题 D: 切割【问题描述】【题解】试题 E: 序列求和【问题描述】【题解】试题 F: 最长子序列【问题描述】【题解】试题 G: 数正方形【问题描述】【题解】试题 H: 矩阵计数【问题描述】【题解】试题 I: 大胖子走迷宫【问题描述】【题解】试题 J: 估计人数【问题描述】【题解】试题 A: 奇数倍数本题总分:5 分【问题描述】请你找到最小的整数 X

2020-10-29 17:34:40 3626 11

原创 2020蓝桥杯省赛第二场附件【2020.txt】

0020000002202020002220002022002222202022020200022200020200222022002202202020020022200202000000002200222002022220222202220000222202200200202220200222200222202200000220220020202200022002200200200222000202220202002000000202200200220022020002022220202200200200

2020-10-17 15:34:12 523

原创 2020蓝桥杯省赛第二场C组_java

2020蓝桥杯省赛第二场C组试题 A: 约数个数【问题描述】【题解】试题 B: 寻找 2020【问题描述】【题解】试题 C: 跑步锻炼【问题描述】【题解】试题 D: 平面分割【问题描述】【题解】试题 E: 七段码【问题描述】【题解】试题 F: 成绩统计【问题描述】【题解】试题 G: 单词分析【问题描述】【题解】试题 H: 数字三角形【问题描述】试题 I: 作物杂交【问题描述】【题解】试题 J: 子串分值【问题描述】【题解】试题 A: 约数个数本题总分:5 分【问题描述】对于一个整数,能整除这个整数的

2020-10-17 15:32:32 4065 9

原创 十一届蓝桥杯JavaC组_REPEAT 程序_栈处理解法

REPEAT 程序问题描述题解三月前的那篇博客里面写了这道题的一个用python取巧做法前文链接但是有人就问了,要是没有python环境怎么做那你可以装一个啊不开玩笑了,正好最近复习了一下java的IO流,想起这道题,就重新做了一下问题描述文件链接本题附件地址本题总分:15 分【问题描述】附件 prog.txt 中是一个用某种语言写的程序。其中 REPEAT k 表示一个次数为 k 的循环。循环控制的范围由缩进表达,从次行开始连续的缩进比该行多的(前面的空白更长的)为循环包含的内容。

2020-10-14 15:05:08 749

原创 LeetCode【每日一题】_657. 机器人能否返回原点_java

657. 机器人能否返回原点问题描述题解问题描述机器人能否返回原点在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束。移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。注意: 机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动

2020-08-28 23:01:21 206 2

原创 java日期类的使用

日期类的使用Date类Calendar类SimpleDateFormat类新增日期时间类-LocalDateTime新增的日期时间格式化类-DateTimeFormatterDate类Date类是我们常用的一个日期和时间的对象,用于记录某一个含日期的、精确到毫秒的时间,此类在 java.util 包中,并不是java.sql中的Date常用的构造方法:Date();使用当前日期和时间初始化对象。Date(long date);接收一个参数创建对象,该参数是从1970年1月1日起的毫秒数。

2020-08-26 10:23:09 738 1

原创 LeetCode【每日一题】_491. 递增子序列_java

491. 递增子序列问题描述题解问题描述递增子序列给定一个整型数组, 你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是2。示例:输入: [4, 6, 7, 7]输出: [[4, 6], [4, 7], [4, 6, 7], [4, 6, 7, 7], [6, 7], [6, 7, 7], [7,7], [4,7,7]]说明:给定数组的长度不会超过15。数组中的整数范围是 [-100,100]。给定数组中可能包含重复数字,相等的数字应该被视为递增的一种情况。题解方

2020-08-25 20:04:04 242

原创 LeetCode【每日一题】_679. 24 点游戏_java

679. 24 点游戏问题描述题解问题描述679.24 点游戏你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24。示例 1:输入: [4, 1, 8, 7]输出: True解释: (8-4) * (7-1) = 24示例 2:输入: [1, 2, 1, 2]输出: False注意:除法运算符 / 表示实数除法,而不是整数除法。例如 4 / (1 - 2/3) = 12 。每个运算符对两个数进行运算。特别是我们不能用 - 作为

2020-08-22 21:10:27 399

原创 LeetCode【每日一题】_43. 字符串相乘_java

43. 字符串相乘问题描述题解问题描述43.字符串相乘给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例 2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1 和 num2 的长度小于110。num1 和 num2 只包含数字 0-9。num1 和 num2 均不以零开头,

2020-08-13 23:04:50 173 2

原创 11. 盛最多水的容器_java_LeetCode

11. 盛最多水的容器问题描述题解暴力破解双指针法问题描述11.盛最多水的容器给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。**说明:**你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 4

2020-08-13 00:31:27 152

原创 LeetCode【每日一题】_133. 克隆图_java

133. 克隆图问题描述题解深度优先搜索广度优先搜索问题描述133.克隆图给你 无向连通图 中一个节点的引用,请你返回该图的 深拷贝 (克隆)。图中的每个节点都包含它的值val(int) 和其邻居的列表(list[Node])。class Node { public int val; public List<Node> neighbors;}测试用例格式:简单起见,每个节点的值都和它的索引相同。例如,第一个节点值为 1(val = 1),第二个节点值为 2(va

2020-08-12 23:07:06 193

原创 LeetCode【每日一题】_130. 被围绕的区域_java

130. 被围绕的区域问题描述题解深度优先搜索广度优先搜索问题描述130.被围绕的区域给定一个二维的矩阵,包含 ‘X’ 和 ‘O’(字母 O)。找到所有被 ‘X’ 围绕的区域,并将这些区域里所有的 ‘O’ 用 ‘X’ 填充。示例:X X X XX O O XX X O XX O X X运行你的函数后,矩阵变为:X X X XX X X XX X X XX O X X解释:被围绕的区间不会存在于边界上,换句话说,任何边界上的 ‘O’ 都不会被填充为 ‘X’。 任何不在边界上

2020-08-11 20:53:26 378

原创 LeetCode【每日一题】_696. 计数二进制子串_java

696. 计数二进制子串问题描述题解种子搜索分割字符左右迭代问题描述696.计数二进制子串给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例 1 :输入: "00110011"输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“001100

2020-08-10 23:20:05 195

原创 LeetCode【每日一题】_114. 二叉树展开为链表_java

114. 二叉树展开为链表问题描述题解问题描述114.二叉树展开为链表给定一个二叉树,原地将它展开为一个单链表。例如,给定二叉树 1 / \ 2 5 / \ \3 4 6将其展开为:1 \ 2 \ 3 \ 4 \ 5 \ 6题解先将左子树展开为单链表,再将右子树展开为单链表,然后连接在一起。class Solution { publ

2020-08-02 10:29:42 149

原创 LeetCode【每日一题】_面试题 08.03. 魔术索引_java

面试题 08.03. 魔术索引问题描述题解暴力匹配二分查找问题描述面试题 08.03. 魔术索引魔术索引。 在数组A[0…n-1]中,有所谓的魔术索引,满足条件A[i] = i。给定一个有序整数数组,编写一种方法找出魔术索引,若有的话,在数组A中找出一个魔术索引,如果没有,则返回-1。若有多个魔术索引,返回索引值最小的一个。示例1: 输入:nums = [0, 2, 3, 4, 5] 输出:0 说明: 0下标的元素为0示例2: 输入:nums = [1, 1, 1] 输出:1说明:

2020-07-31 19:36:02 159

原创 LeetCode【每日一题】_392.判断子序列_java

392.判断子序列问题描述题解问题描述给定字符串 s 和 t ,判断 s 是否为 t 的子序列。你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。示例 1:s = "abc", t = "ahbgdc"返回 true.示例 2:

2020-07-27 15:56:14 146

原创 9.回文数_java_LeetCode

9.回文数问题描述题解偷懒法双指针法不用字符串,直接操作数字反转只反转一半数字问题描述9.回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。进阶:你能不将整数

2020-07-24 20:09:41 168

原创 栈结构_逆波兰计算器的实现(java)

栈结构_逆波兰计算器的实现一、前缀、中缀、后缀表达式1.中缀表达式2.前缀表达式3.后缀表达式二、计算机对表达式的解析1.计算机解析前缀表达式2.计算机解析中缀表达式3.计算机解析后缀表达式三、表达式的转化1.中缀表达式转前缀表达式2.中缀表达式转后缀表达式四、逆波兰计算器的实现整体思路代码实现一、前缀、中缀、后缀表达式1.中缀表达式中缀表达式是一个通用的算术或逻辑公式表示方法, 操作符是以中缀形式处于操作数的中间(例:3 + 4),中缀表达式是人们常用的算术表示方法。与前缀表达式(例:+ 3 4

2020-07-24 18:14:23 417

原创 8.字符串转换整数 (atoi)_java_LeetCode

8.字符串转换整数问题描述题解问题描述8.字符串转换整数 (atoi)请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下:如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成一个整数。该字符串在有效的整数部分之后也可能会存在多余的字符,那么这些字符可以被忽略,它们对

2020-07-24 00:16:37 114

原创 7.整数反转_java_LeetCode

7.整数反转问题描述题解问题描述7.整数反转给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。题解将一个整数反转过来并不难,只需从原数的个位往前取,依次拼成一个新的数,但是题上要

2020-07-22 14:14:20 257

原创 6.Z 字形变换_java_LeetCode

6.Z 字形变换问题描述题解问题描述6.Z 字形变换将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int

2020-07-22 12:53:50 124

原创 自定义栈实现计算器_直接处理中缀表达式

栈实现计算器整体思路代码实现验证截图整体思路我只实现了整数的加减乘除运算输入一个字符串表达式定义一个index作为索引,来遍历表达式定义一个数栈numStack存储数字,定义一个符号栈operStack存储符号当index指向一个数字,就判断下一位是否为数字若是,则拼接在一起,然后再判断下一位,直到index指向符号,则停止,并将拼接好的数字存入数栈。当index指向一个符号,则分为以下几种情况5.1 若符号为 ‘(’ ,就直接存入符号栈,为后面的‘)’做准备5.2 若符号为 ‘)’

2020-07-22 09:57:57 217

原创 java实现简易贪吃蛇小游戏

贪吃蛇整体思路代码实现游戏窗体类节点类蛇类食物类方向枚举类开始游戏类运行效果截图整体思路初始化画一个游戏背景框,生成蛇和食物蛇的生成定义节点类Node定义蛇类Snake,其中成员变量body表示蛇的身体,由节点的链表集合组成,初始方向为左。蛇的移动实现是通过在头节点前面生成一个节点,然后删除尾节点。蛇吃食物长大是在头节点前面生成一个节点。食物的生成定义食物类Food,继承节点类Node,通过Random类随机生成食物。键盘监听通过碰撞检测蛇的头节点超出背景框范围,或碰到蛇身体上

2020-07-21 20:04:08 860

原创 5. 最长回文子串_java_LeetCode

5. 最长回文子串问题描述题解问题描述5.最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"题解1.暴力破解枚举所有子串,判断是否为回文串,因为题目要求找到最长回文子串,所以从最长子串开始遍历,直到找到一个回文串就一定满足题意,直接结束即可,代码如下:class Solution { p

2020-07-21 18:26:06 198

原创 4.寻找两个正序数组的中位数_java_LeetCode

4.寻找两个正序数组的中位数问题描述题解问题描述4.寻找两个正序数组的中位数给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 (2 + 3)/2 = 2

2020-07-21 13:47:42 253

原创 3. 无重复字符的最长子串_java_LeetCode

3. 无重复字符的最长子串问题描述题解问题描述无重复字符的最长子串给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"*斜体样式*输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。

2020-07-20 13:22:43 256

原创 2. 两数相加_java_LeetCode

2. 两数相加问题描述题解问题描述2.两数相加给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807题解/**

2020-07-20 09:16:27 138

原创 1. 两数之和_java_LeetCode

1. 两数之和问题描述题解暴力破解哈希表法问题描述1.两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]题解暴力破解import java.util.Arrays;p

2020-07-20 08:06:20 97

原创 167.两数之和 II - 输入有序数组_java_LeetCode

167.两数之和 II - 输入有序数组给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], target = 9输出: [1,2]解释: 2 与 7 之和等于目标数

2020-07-20 07:34:10 230

原创 REPEAT程序_十一届蓝桥杯省赛第一场B组附件

A = 0REPEAT 2:A = A + 4REPEAT 5:REPEAT 6:A = A + 5A = A + 7REPEAT 6:A = A + 7REPEAT 4:A = A + 2A = A + 7A = A + 2REPEAT 7:REPEAT 4:A = A + 8A = A + 7A = A + 4A = A + 5A = A + 8REPEAT 8:A = A + 5REPEAT 1:A = A + 2REPEAT 7:A = A + 5

2020-07-18 22:24:18 1608

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除