- 博客(36)
- 收藏
- 关注
原创 Java springboot 前端向后端传参
后端 @GetMapping("/edit/{id}") @RequiresPermissions("shipment:driver:edit") public String edit(@PathVariable("id") Long id, ModelMap mmap) { DriverInfo driverInfo = driverInfoService.selectDriverInfoById(id); //参数用 ModelMa
2021-12-01 19:11:38
2014
原创 java (spring boot) 前后端传参
1.不使用任何注解前端:<!-- 1.直接url传递 //第一行为请求地址,第二行为传递参数 -->url = http://localhost:8080/shipment/lineMileage/ +"username="+username+"&password="+password<!--2.通过jquery 的ajax传递-->var data = "username="+vm.username+"&pa
2021-11-24 19:27:38
1794
原创 mybatis(ibatis)定义公共查询语句,拼接sql,以达到简化
首先我们定义公共查询语句<sql></sql> id为唯一标识符:<sql id="sql_row_start"> <!-- isPropertyAvailable表示有从dao传来的这个字段值rowStart,既有这个值,property的值为传入字段的值--> <isPropertyAvailable property="rowStart"> <!--isNotEmpty表示从dao传来的这个字段
2021-10-20 16:17:03
899
原创 ibatis中xml编写sql语句与dao层的交互
<select id="getSelectCloseInfo" resultMap="SelectCloseInfoResult" parameterClass="Integer"> select * from T_B_auto_close_delete where 1=1 <isNotEmpty prepend="and" property="TYPE"> <!-- property中为字段值 prepend中为连接词--> .
2021-10-15 17:15:18
380
原创 使用beans进行ioc(控制反转) xml配置文件
虽然现在都通过注解的方式配置,但前两天博主接触到ibatis时,竟然是通过xml文件配置的,一时竟忘了怎么写,因此在这记录一下,也方便学习的朋友<beans> //<bean>标签相当于new一个对象。id的值为这个属性指定唯一的 bean 标识符;class的值为创建对象的类 <bean id="autoCloseDelete-dao" class="...dao.impl.autoCloseDeleteDaoImpl"> //.
2021-10-11 17:30:15
83
原创 java格式化时间(SimpleDateFormat)
SimpleDateFormat就是将日期格式化成自己想要的格式import java.text.SimpleDateFormat;import java.util.Date; public class Main{ public static void main(String[] args){ Date date = new Date(); //定义字符串所要格式化数据的格式:yyyy-MM-dd HH:mm:ss String strDa
2021-09-27 17:53:44
3151
原创 java中进行压缩与解压
1.使用gzip进行压缩与解压(1)压缩public static String gzip(String primStr) { //如果所要压缩的数据为空或者长度为零,返回它 if (primStr == null || primStr.length() == 0) { return primStr; } //字节数组输出流,在内存中创建一个字节数组缓冲区,所有发送到输出流的数据保存在该字节数组 缓冲区中。解压缩通常用于此流 ByteArrayO
2021-09-27 11:39:00
614
原创 postman本地测试接口的地址路径,如何获取和拼接
首先,在本地进行接口自测,那么就是本地的ip,既:http://localhost,其他就是其他的ip地址。接着是端口号以及所添加的共用路径,我们可以从springboot项目的配置文件application.yml获取,找到server: # 服务器的HTTP端口,默认为8081 port: 8202 servlet: # 应用的访问路径 context-path: /avrs这里的port就是端口号,context-path则是共用路径,此时的路径就拼接.
2021-08-30 11:38:59
19232
1
原创 RestTemplate,ResponseEntity,JSONObject(与前端交互的理解)
RestTemplateRestTemplate 是一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。GET 请求可以调用getForEntity和getForObjectPOST 请求可以调用postForEntity和postForObject那么Entity类和Object有什么区别呢(以get请求进行比较)?getForOb
2021-08-26 17:08:54
4031
原创 return x==y是什么意思?
这其实是通常和判断语句连用的,比如:public static boolean isEmpty(String param) { return null == param || 0 == param.trim().length(); }如果null == param 或者 0 == param.trim().length(),返回值为true;如果null != param 或者 0 != param.trim().length(),返回值为false.换个更简单
2021-08-26 15:08:19
918
原创 记录下spring boot项目中日志(log)的切面编程(aop)编写 注解:[@Aspect]
package com.sqtxj.police.framework.log;import cn.dev33.satoken.stp.SaTokenInfo;import cn.dev33.satoken.stp.StpUtil;import cn.hutool.json.JSONUtil;import com.sqtxj.police.common.utils.HttpContextUtils;import com.sqtxj.police.common.utils.IPUtils;imp.
2021-08-13 11:06:38
335
转载 删除链表的倒数第 N 个结点(力扣)
给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]方法一:计算链表长度一种容易想到的方法是,我们首先从头节点开始对链表进行一次遍历,得到链表的长度 L。随后我们再从头节点开始对链表进行一次遍历,当遍..
2021-08-06 10:46:08
98
转载 杨辉三角(力扣)
给定一个非负整数numRows,生成「杨辉三角」的前numRows行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。示例 1:输入: numRows = 5输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]示例2:输入: numRows = 1输出: [[1]]方法:杨辉三角,是二项式系数在三角形中的一种几何排列。它是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中...
2021-07-29 18:52:10
406
转载 反转字符串中的单词(力扣)(切记:java中String是不可变量)
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:"Let's take LeetCode contest"输出:"s'teL ekat edoCteeL tsetnoc"思路与算法开辟一个新字符串。然后从头到尾遍历原字符串,直到找到空格为止,此时找到了一个单词,并能得到单词的起止位置。随后,根据单词的起止位置,可以将该单词逆序放到新字符串当中。如此循环多次,直到遍历完原字符串,就能得到翻转后的结果。class Solu
2021-07-29 14:51:57
120
转载 两个数组的交集 II(力扣)
给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[4,9]解法:排序 + 双指针如果两个数组是有序的,则可以使用双指针的方法得到两个数组的交集。首先对两个数组进行排序,然后使用两个指针遍历两个数组。初始时,两个指针分别指向两个数组的头部。每次比较两个指针指向的两个数组中的数字
2021-07-28 15:22:48
145
原创 移动零(力扣)
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]一:暴力破解class Solution { public void moveZeroes(int[] nums) { int count=0; int a=0; for(int i=0;i<nums.length-1;i++){ if
2021-07-28 10:36:08
220
转载 合并两个有序数组(力扣)(直接插入排序)(按顺序插入)
给你两个有序整数数组nums1 和 nums2,请你将 nums2 合并到nums1中,使 nums1 成为一个有序数组。初始化nums1 和 nums2 的元素数量分别为m 和 n 。你可以假设nums1 的空间大小等于m + n,这样它就有足够的空间保存来自 nums2 的元素。示例 1:输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]示例 2:输入:nums1 = [1]...
2021-07-27 17:20:28
423
转载 用两个栈实现队列(力扣)(duque的栈的使用,记录队列和双端队列)
用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead操作返回 -1 )示例 1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]输出:[null,null,3,-1]示例 2:输入:["CQueue","deleteHead","appendTail.
2021-07-27 14:58:05
200
转载 旋转数组(力扣)(数组翻转)(数组拷贝)
给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。进阶:尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。你可以使用空间复杂度为O(1) 的原地算法解决这个问题吗?示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]...
2021-07-27 11:43:01
189
原创 有序数组的平方(力扣)(冒泡排序)
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例 2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]提示:1 <= nums.length <= 104-104 &.
2021-07-27 10:13:24
399
转载 二叉树中第二小的节点(力扣)(深度优先遍历)
给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为2或0。如果一个节点有两个子节点的话,那么该节点的值等于两个子节点中较小的一个。更正式地说,root.val = min(root.left.val, root.right.val) 总成立。给出这样的一个二叉树,你需要输出所有节点中的第二小的值。如果第二小的值不存在的话,输出 -1 。示例 1:输入:root = [2,2,5,null,null,5,7]输出:5解释:最小的值是 2 ,第二小的值是 ...
2021-07-27 10:02:31
218
原创 第二高的薪水(力扣)
编写一个 SQL 查询,获取 Employee表中第二高的薪水(Salary)。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述Employee表,SQL查询应该返回200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。+---------------------+| SecondHi...
2021-07-26 15:32:10
290
原创 二分查找(力扣)
给定一个n个元素有序的(升序)整型数组nums 和一个目标值target ,写一个函数搜索nums中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:输入: nums = [-1,0,3,5,9,12], target = 9输出: 4解释: 9 出现在 nums 中并且下标为 4示例2:输入: nums = [-1,0,3,5,9,12], target = 2输出: -1解释: 2 不存在 nums 中因此返回 -1来源:力扣(LeetCod...
2021-07-26 11:53:10
121
转载 最长递增子序列(力扣)
给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。示例 1:输入:nums = [10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是 [2,3,7,101],因此长度为 4 。示例 2:输入:nums = [0,1,0,3,2,3]输出:4示例 3:输入:nums = [7,7,7,7.
2021-07-26 11:25:36
222
转载 整数与IP地址间的转换(牛客)
描述原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数。举例:一个ip地址为10.0.3.193每段数字相对应的二进制数100000101000000000030000001119311000001组合起来即为:000010100000...
2021-07-22 17:16:14
168
转载 合唱队(牛客)
描述计算最少出列多少位同学,使得剩下的同学排成合唱队形说明:N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK,则他们的身高满足存在i(1<=i<=K)使得T1<T2<......<Ti-1<Ti>Ti+1>......>TK。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列...
2021-07-22 10:55:35
254
转载 字符串排序(牛客)
描述编写一个程序,将输入字符串中的字符按如下规则排序。规则 1 :英文字母从 A 到 Z 排列,不区分大小写。如,输入: Type 输出: epTy规则 2 :同一个英文字母的大小写同时存在时,按照输入顺序排列。如,输入: BabA 输出: aABb规则 3 :非英文字母的其它字符保持原来的位置。如,输入: By?e 输出: Be?y注意有多组测试数据,即输入有多行,每一行单独处理(换行符隔开的表示不同行)输入描述:输入字符串输出描述:输出字符串示例.
2021-07-21 17:28:03
216
原创 简单密码(牛客)
描述密码是我们生活中非常重要的东东,我们的那么一点不能说的秘密就全靠它了。哇哈哈.接下来渊子要在密码之上再加一套密码,虽然简单但也安全。假设渊子原来一个BBS上的密码为zvbo9441987,为了方便记忆,他通过一种算法把这个密码变换成YUANzhi1987,这个密码是他的名字和出生年份,怎么忘都忘不了,而且可以明目张胆地放在显眼的地方而不被别人知道真正的密码。他是这么变换的,大家都知道手机上的字母:1--1,abc--2,def--3,ghi--4,jkl--5,mno-...
2021-07-21 15:39:33
145
原创 密码验证合格程序( 牛客)
描述密码要求:1.长度超过8位2.包括大小写字母.数字.其它符号,以上四种至少三种3.不能有相同长度大于2的子串重复输入描述:一组或多组长度超过2的字符串。每组占一行输出描述:如果符合要求输出:OK,否则输出NG示例1输入:021Abc9000021Abc9Abc1021ABC9000021$bc9000输出:OKNGNGOKimport java.util.Scanner;public class M
2021-07-21 14:35:47
136
转载 简单错误记录(牛客)
描述开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理:1、记录最多8条错误记录,循环记录,最后只用输出最后出现的八条错误记录。对相同的错误记录只记录一条,但是错误计数增加。最后一个斜杠后面的带后缀名的部分(保留最后16位)和行号完全匹配的记录才做算是”相同“的错误记录。2、超过16个字符的文件名称,只记录文件的最后有效16个字符;3、输入的文件可能带路径,记录文件名称不能带路径。4、循环记录时,只以第一次出现的顺序为准,后面重复的不会更新它的...
2021-07-21 11:48:39
235
原创 识别有效的IP地址和掩码并进行分类统计(牛客)(学习)
请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。所有的IP地址划分为A,B,C,D,E五类A类地址1.0.0.0~126.255.255.255;B类地址128.0.0.0~191.255.255.255;C类地址192.0.0.0~223.255.255.255;D类地址224.0.0.0~239.255.255.255;E类地址240.0.0.0~255.255.255.255私网IP范围是:10.0.0..
2021-07-21 09:35:54
358
转载 最长回文子串(中心扩散法)
给定一个仅包含小写字母的字符串,求它的最长回文子串的长度。所谓回文串,指左右对称的字符串。所谓子串,指一个字符串删掉其部分前缀和后缀(也可以不删)的字符串(注意:记得加上while处理多个测试用例)输入描述:输入一个仅包含小写字母的字符串输出描述:返回最长回文子串的长度示例1输入:cdabbacc输出:4说明:abba为最长的回文子串 import java.util.Scanner;public class Main{ p
2021-07-20 17:19:44
192
转载 斐波那契 递归算法 迭代算法
public static int Fibonacci(int i) { if(i <= 0) { return 0; } if(i == 1 || i == 2) { return 1; } return Fibonacci(i -2) + Fibonacci(i-1); }
2021-07-20 13:46:18
203
原创 等差数列(牛客)(仅供自己参考)
功能:等差数列2,5,8,11,14。。。。输入:正整数N>0输出:求等差数列前N项和本题为多组输入,请使用while(cin>>)等形式读取数据输入描述:输入一个正整数。输出描述:输出一个相加后的整数。示例1输入:2输出:7import java.util.Scanner;public class Main{ public static void main(String[] args) { ..
2021-07-20 11:47:07
485
原创 坐标移动(牛客)
开发一个坐标计算工具,A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S)+数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10;A1A;$%$;YAD;等。下面是一个简单的例子如:A10;S20;W10;D30;X;A1A;B10A11;;A10;处理过程:起点(0,0)+A10=...
2021-07-20 10:41:12
183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人