- 博客(69)
- 收藏
- 关注
原创 Spring Security知识点笔记
Spring Security知识点笔记1.spring security 核心功能spring security 的核心功能主要包括:认证授权防护 (防止伪造身份)2.核心理解其核心就是一组过滤器链,项目启动后将会自动配置。最核心的就是 Basic Authentication Filter 用来认证用户的身份,一个在spring security中一种过滤器处理一种认证方式。比如,对于username password认证过滤器来说, 会检查是否是一个登录请求;是否包含username
2021-08-20 08:58:12
326
原创 windosw配置maven
windosw配置maven1.下载链接:https://pan.baidu.com/s/1o_i_7j803uGz1kM3OXkK0w 密码: 7hp62.下载好后,放到纯英文路径下。3.开始配置环境变量。4.新建环境变量MAVEN_HOME,赋值D:\Program Files\Apache\maven(修改为自己的地址)5.编辑环境变量Path,追加%MAVEN_HOME%\bin;6.测试是否配置成功cmd窗口输入mvn -v7.自己配置maven的阿里云镜像:找到set
2021-08-20 08:55:45
164
原创 windows配置JAVA环境
windows配置JAVA环境1.安装jdk1.8链接: https://pan.baidu.com/s/1BbinQOkHz_xeFr6U42JKEQ 密码: 95ut百度网盘下载,傻瓜式安装即可。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-19JA795P-1629420781418)(https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/56f81ab3617fcb9683256125
2021-08-20 08:53:32
281
原创 homebrew安装常见错误解决
homebrew安装常见错误解决1.错误信息大致如下:Error: Failure while executing; tar --extract --no-same-owner --file /Users/wangchuangyan/Library/C ......2.错误主要集中在使用Mac执行brew install xxx时报错。比如执行 brew install rabbitmq会遇见的问题:Error: Failure while executing; tar --extract --
2021-08-13 09:56:55
560
原创 MAC安装并配置RabbitMQ
MAC配置RabbitMQ1.通过homebrew安装mq2.更新homebrewbrew update3.终端输入安装命令行:brew install rabbitmq等待进度条完成即可。4.成功安装会显示如下信息:看到端口默认为15672。5.安装完成后需要配置环境变量6.编辑.bash_profile文件,输入如下命令:open -e .bash_profile7.复制如下代码:export RABBITMQ_HOME=/usr/local/Cellar/rabbitmq
2021-08-13 09:48:56
570
1
原创 8道 JVM ⾯试题(内存区域划分)
8道 JVM ⾯试题–内存区域划分Q1:运⾏时数据区是什么?虚拟机在执⾏ Java 程序的过程中会把它所管理的内存划分为若⼲不同的数据区,这些区域有各⾃的⽤途、创建和销毁时间。线程私有:程序计数器、Java 虚拟机栈、本地⽅法栈。线程共享:Java 堆、⽅法区。Q2:程序计数器是什么?程序计数器是⼀块较⼩的内存空间,可以看作当前线程所执⾏字节码的⾏号指示器。字节码解释器⼯作 时通过改变计数器的值选取下⼀条执⾏指令。分⽀、循环、跳转、线程恢复等功能都需要依赖计数器完 成。是唯⼀
2021-08-12 09:14:08
99
转载 swagger2的配置
swagger2的配置1.引入对应到jar包在pom文件中添加swagger2的包,引入相关的依赖,相关的pom文件可以在mvnrepository中搜索相关的包。 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2
2021-08-12 08:32:43
824
原创 Linux中启动Tomcat:Permission denied 问题
Linux中启动Tomcat:Permission denied 问题1.错误:-bash: ./startup.sh: Permission denied2.解决办法:用命令chmod 修改一下Tomcat的bin目录下的.sh权限就可以了如chmod u+x *.sh
2021-08-11 11:08:27
1162
原创 idea中maven引用本地包不成功
idea中maven引用本地包不成功1.删除本地仓库中所有的 _remote.repositories 文件2.不行的话,删除项目下的 .iml 文件,然后重启idea, 点击 maven 上面的刷新,就可以引用了3.重新刷新/启动idea
2021-08-10 15:56:03
1417
原创 linux-终止进程
linux-终止进程1.查看端口被哪个程序占用sudo lsof -i tcp:port如:sudo lsof -i tcp:80822.看到进程的PID,可以将进程杀死。sudo kill -9 PID如:sudo kill -9 3210
2021-08-10 15:55:09
128
原创 Mac安装oracle(使用Docker)
Mac安装oracle(使用Docker)1.安装拉取oracle 11g 镜像,这个版本可以自行选择docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g2.安装oracle容器docker run -dp 9090:8080 -p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g3.进入容器docker exec -it 容器id /bin/
2021-08-10 15:53:01
410
原创 Mac安装Docker
Mac安装Docker1.使用 Homebrew 安装2.打开终端,输入如下命令行:brew install --cask --appdir=/Applications docker等待进度条安装,完成后会显示如下信息:==> Installing Cask docker请继续等待,还在安装中,接着会显示 如下信息:==>docker was successfully installed!表示安装成功!3.可以通过命令行查看当前版本:docker --version出现如下
2021-08-10 15:52:17
394
原创 Java面试题(杭州面试初级总结)
一面1.arraylist linklist区别2.aop ioc3.mysql优化4.hashmap原理5.线程安全的map集合6.锁关键字 原理7.设计模式常用的几种8.jvm原理9.常用的linux命令10.多线程应用场景11.消息中间件mq12.redis13.springboot常用注解14.怎么测试代码15.分库分表16.spring生成bean方法17.单元测试18.谈谈网络编程(http协议)19.对web开发的了解一面1.springboot常用注
2021-08-10 12:54:17
1158
1
原创 Mac环境下配置JAVA环境
Mac配置JAVA环境1.首先查看mac上是否安装了JDK,在终端输入指令java -version如果输出为No Java runtime present, requesting install.那么就说明你过没有安装JDK,需要先安装JDK。下载jdk的网址是http://www.oracle.com/technetwork/java/javase/downloads。2.下载完成之后安装到mac上,这个时候在终端再次输入指令java -version ,如果输出的是jdk的版本信息:这样
2021-08-10 12:50:38
5435
2
原创 MAC配置mysql、maven
MAC配置mysql、maven1.去官网下载对应的版本。2.打开终端,输入命令行:vi ~/.bash_profile输入相关配置即可,我这里配置好了mysql以及maven和gradle,代码如下:(根据实际情况修改路径即可)export PATH=$PATH:/usr/local/mysql/binexport PATH=$PATH:/usr/local/mysql/support-filesexport M2_HOME="/Users/hanbin/apache-maven-3.6.
2021-08-10 12:49:59
151
原创 Mac环境下配置tomcat
Mac环境下配置tomcat1.下载:登录Apache Tomcat官网,地址 http://tomcat.apache.org ,点击左边的Download,选择需要下载的版本。2.设置本地放置路径:右键Finder—>前往文件夹—> ~/Library/ 目录下,把下载下来包解压,之后然后命名为Tomcat,放进来这里。3.启动Tomcat打开终端,输入如下命令行:cd /Users/apple/Library/Tomcat/bin (注释:切换到我们Tomcat的bin目录
2021-08-10 12:49:08
424
1
原创 MAC安配置Nginx
MAC安配置Nginx1.安装工具:homebrew2.安装以后,打开终端。3.输入如下命令:brew search nginx //查询要安装的软件是否存在我这里安装过了,所以会显示如下信息 :4.查询详细的nginx相关信息 :brew info nginx如果安装过了,会显示如下信息:如果没有安装,则会显示:我们可以看到,nginx在本地还未安装(Not installed),nginx的来源(From),Docroot默认为/usr/local/var/www,在/usr
2021-08-10 12:47:45
1331
原创 MAC电脑安装homebrew
MAC电脑安装homebrew1.brew官网https://brew.sh/但是通过官网提供的命令安装会失败,会报错:curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to raw.githubusercontent.com:443解决办法:2.使用国内源:复制如下命令行/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/
2021-08-10 12:46:07
156
原创 Java习题1|古典问题求兔子对数
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?解题思路: 一月 1对, 2月 1对,3月 2对,4月 3对,5月5对,6月8对,7月13对,8月 21只源代码演示:public static void main(String[] args) { System.out.print("请输入你想知道的兔子数量的月份:"); Scanner scanner=new Scanner(Sys.
2020-12-29 16:18:17
171
原创 日常笔记--BigDecimal的常用构造函数以及方法
BigDecimal常用构造函数1、创建一个具有参数所指定整数值的对象BigDecimal(int)2、创建一个具有参数所指定双精度值的对象BigDecimal(double)3、创建一个具有参数所指定长整数值的对象BigDecimal(long)4、创建一个具有参数所指定以字符串表示的数值的对象BigDecimal(String)BigDecimal常用方法1、BigDecimal对象中的值相加,返回BigDecimal对象add(BigDecimal)2、BigDeci
2020-11-11 19:38:00
1535
原创 日常记录-mysql常用操作命令
mysql常用操作命令今天做需求的时候,用到了一些mysql常用命令,记录一下!一、数据库全局搜索字段名:SELECT COLUMN_NAME,TABLE_SCHEMA,TABLE_NAMEFROM information_schema.COLUMNSWHERE COLUMN_NAME=‘字段名’举例搜索数据库中ticket_no这个字段都在哪张表有,可以操作以下脚本:SELECT COLUMN_NAME,TABLE_SCHEMA,TABLE_NAMEFROM information_s
2020-11-11 18:33:42
132
原创 日常笔记-xml中sql语句书写常见问题
运行项目报错:nested exception is org.apache.ibatis.type.TypeException: Could not set parameters for mapping:原因是使用idea快捷键时,添加的注释为/**/,注释里面我写了另外一条SQL,但是mybatis执行时仍然把里面的#{routeId}执行了,导致报错,参数异常,需要参数两个,实际传参才只有一个。注意xml中的注释要使用 <!-- ->,不能使用–...
2020-11-09 20:25:39
351
原创 日常记录-- 分时段预约管理删除时添加限制
分时段预约管理删除添加限制条件现在分时段预约管理进行删除操作的时候,不能进行全部删除,而是需要加上限制条件:有销售数据的时候不删除。思路1.找到分时段预约管理功能对应的删除接口。2.通过接口进入到service业务层进行代码的修改。3.再删除操作之前,首先需要加上判断,来判断时段是否被使用过。通过trip_staggered_reservation_daily分时预约-时段表先查询出所有时段,然后通过trip_order_ticket_info订单信息表中的·staggered_reservati
2020-11-04 16:41:59
341
原创 日常笔记--写一个简单的完整的查询接口
需求明确1.现有剧场信息,需要给前端提供一个查询接口,方便用户能够根据自己的订单号和手机号查询出对应的剧场票详情信息。2.比如订单号为“U820102819562509301”,查询出的信息应该如下:U820102819562509301 OFFLINE 新剧目 新剧目 2020-10-28 21:00:00 新产品 韩宾 410821199000000000 13930000000 T1321420552467152896 F -99 1 1 0 C区 01排06座1.首先要明确需要
2020-11-04 11:23:51
6251
1
原创 日常笔记--“!”的使用
if (!OrderTypeEnum.OFFLINE_FAST.getCode().equals(orderDO.getOrderType())) { //如果不是快速购票订单则不发送短信 return; } if (!OrderTypeEnum.ONLINE.getCode().equals(orderDO.getOrderType())){ //如果不是网上订单订单则不发送短信 ..
2020-11-03 20:39:41
442
原创 日常记录-mysql常用命令
mysql常用命令修改字段属性:-- 修改字段属性-- ALTER TABLE tb_name MODIFY 字段名称 字段类型 [完整性约束条件]-- 将email字段 VARCHAR(50)修改成VARCHAR(200)-- 注意,修改时如果不带完整性约束条件,原有的约束条件将丢失,如果想保留修改时就得带上完整性约束条件ALTER TABLE user10 MODIFY email VARCHAR(200) NOT NULL DEFAULT 'a@a.com';-- 将card移到tes
2020-11-02 20:23:36
66
原创 数据库报错:Field ‘Id‘ doesn‘t have a default value记录
今天运行项目的时候,服务器报错Field ‘Id’ doesn’t have a default value原因:‘id’主键没有设置自增。
2020-11-02 20:20:09
95
原创 日常记录--Mybatis报错:Available parameters are [arg1, arg0, param1, param2]
记录今天做需求的时候,出现的一个mybatis的bug报错内容:Available parameters are [arg1, arg0, param1, param2]报错原因:没有识别传入的参数。解决方法:使用@Param绑定参数。DAO层代码: List<PayInQueryVO> queryPayList(Date orderStartTime,Date orderEndTime);现在需要传入两个参数,分别为订单开始时间和订单结束时间。根据错误提示,发现它说它没有识别我
2020-10-28 18:59:14
5018
1
原创 日常记录--工具类DateUtil的使用(获取当天最早时间和最晚时间)
工具类DateUtil的使用今天在做需求的时候,其中有一个环节需要获取当前时间,并且根据当前时间获取当前时间的开始时间(00:00:00)和结束时间(23:59:59)。这时候可以使用jdk自带的工具类DateUtil来实现。首先new一个Date对象。Date date = new Date();接着定义DateTime类型的两个时间字段,并使用DateUtil中的方法。 DateTime beginDate = DateUtil.beginOfDay(date); DateTime en
2020-10-28 18:51:04
9130
8
原创 Java基础面向对象的思想
面向对象思想:面向过程:当需要实现一个功能时,每个具体的步骤都要亲力亲为,详细每一个细节。面向对象:当需要一个实现功能的时候,不关心具体操作,找一个已经具有该功能的人,来帮我做事。面向对象的三大特征:封装、继承、多态封装性体现在Java当中:1.方法就是一种封装2.关键字private也是一种封装**private关键字作用:**将需要保护的成员变量进行修饰(提高安全性)一旦使用private进行修饰,那么在本类中仍然可以随意访问,但是,超出本类,不可以访问。间接访问private成员
2020-10-27 20:20:03
83
原创 经常被问到的ioc和aop到底是什么
首先来说一下什么是ioc?ioc的定义是什么?IocIoC (Inversion of control )控制反转/反转控制。它是一种思想不是一个技术实现。描述的是:Java 开发领域对象的创建以及管理的问题。例如:现有类 A 依赖于类 B传统的开发方式 :往往是在类 A 中手动通过 new 关键字来 new 一个 B 的对象出来。使用 IoC 思想的开发方式 :不通过 new 关键字来创建对象,而是通过 IoC 容器(Spring 框架) 来帮助我们实例化对象。我们需要哪个对象,直接从 IoC
2020-10-27 01:12:21
412
原创 不用!=null作为判空条件
问题为了避免空指针调用,我们经常会看到这样的语句...if (someobject != null) { someobject.doCalc();}...最终,项目中会存在大量判空代码,多么丑陋繁冗!如何避免这种情况?我们是否滥用了判空呢?精华回答这是初、中级程序猿经常会遇到的问题。他们总喜欢在方法中返回null,因此,在调用这些方法时,也不得不去判空。另外,也许受此习惯影响,他们总潜意识地认为,所有的返回都是不可信任的,为了保护自己程序,就加了大量的判空。吐槽完毕,回到这个题目本身:
2020-10-24 09:59:15
439
原创 返回前端页面的名称和属性名称不一致问题
场景:比如前端要求你返回一个json数据类型,但是这个json类型的里面属性有的值重复了,比如{ name:zhangsan, age:12, teacher:[ name:Mrs Liu subject:math ]} 12345678就像这样,出现了两个name,但是前端就是要求这样传的,很蛋疼有没有,都是name,时间长了就不知道啥意思了,所以,咱们有解决一下@JsonProperty(“name”)
2020-10-24 09:10:12
636
原创 记录通过定时器推送入园人数
通过定时器推送入园人数最近有个需求,需要对接某景区大数据,推送入园游客数。解决思路就是在每天的22点推送一次当天的入园人数,然后获取大数据的入园人数。首先先在controller层写接口,作为推送记录测试。Controller层代码@RestController@Api(tags = "智游天府码(政务云)对接 接口服务")@RequestMapping("/tourism/platform")@Slf4jpublic class TourismPlatformController {
2020-10-22 20:35:29
142
原创 日常笔记-MySQL数据表插入数据语句
如何在mysql插入数据INSERT INTO table(column1,column2…) VALUES (value1,value2,…);首先,在INSERT INTO子句之后,在括号内指定表名和逗号分隔列的列表。然后,将括号内的相应列的逗号分隔值放在VALUES关键字之后。INSERT INTO tasks(subject,start_date,end_date,description)VALUES ('任务-1','2017-01-01','2017-01-02','Descripti
2020-10-21 20:59:54
121
原创 java使用redis缓存
记录一下 java使用redis缓存的情况最近写了一个查询接口,需要传手机号,获取与手机号对应的相关数据。然后对传入的手机号加了一个redis缓存。主要代码①首先调用已经写好的工具类redisutil。(我使用的工具类为公司代码,这里不贴出来了) @Autowired private RedisUtil redisUtil;②然后写两个常量,一个作为redis保存手机号,一个为缓存时间。 private static final String QUERY_ACTIVATETIC
2020-10-19 20:25:12
1232
原创 BigDecimal的数学运算
BigDecimal数学运算我们对其进行加减乘除绝对值的运算其实就是Bigdecimal的类的一些调用加法 add()函数减法subtract()函数乘法multipy()函数除法divide()函数绝对值abs()函数举例:以下代码用了减法//实付款金额 = 总金额 - 退款金额 if (result.getItemTotal() !=null && result.getPaymentTotal()!=null) { BigDecimal total = res
2020-10-19 20:13:21
251
原创 日常笔记-从数据库获取排序后的第一条数据
业务上有一个需求,要获取今天已缴款数据,就是获取数据库中的当天数据,然后按照缴款时间降序排序,取最新的一条数据作为查询结果。需要注意的点就是如何进行条件判断获取当天数据。下面是我写的sql:select * from jp_pay_printLogwhere TO_DAYS(now()) - TO_DAYS(pay_in_startTime) < 1order by pay_in_startTime desclimit 1;...
2020-10-18 01:32:22
1660
原创 什么是mybatis框架?
1.什么是框架: 软件开发中的解决方案,框架封装了许多细节,使开发者使用极简方式实现功能,提高效率2.三层架构: 1.表现层:用于展示数据 2.业务层:处理业务需求 3.持久层:和数据库交互3.持久层技术解决方案 **JDBC技术:** Connection PreparedStatement ResultSet **Spring的jdbcTemplate:** Spring中jdbc的简单
2020-10-18 01:21:10
1376
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人