自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

uwei的博客

愿我如星君如月,夜夜流光相皎洁。

  • 博客(100)
  • 收藏
  • 关注

原创 使用JSR(Java规范请求)规范校验请求参数

JSR(Java规范请求,Java Specification Requests)是Java的一个验证框架,它定义了很多注解来验证Bean 的属性。spring-boot-starter-web包里面有hibernate-validator包,hibernate-validator实现了JSR的规范。所以如果开发 web 就不需要重复添加 spring-boot-starter-validation 依赖了。但如果没用 web 依赖时候想要实现 Bean 验证,则只要单单加入 spring-boot-st

2021-03-25 22:02:33 789

原创 Jmeter并发测试接口

Jmeter并发测试接口固定参数场景:每次请求接口时使用同样的参数。 新建计划: File→ New 。 在Name中可以输入计划名称 2. 新建线程组:在刚刚新建的计划上右键→ add→ Threads(Users)→ ThreadGroupName: 线程组名称Comments:附加信息Action to be taken after s Sample error: 当出现测试例失败时,选择的措施。 (继续 ,开始下一轮循环,...

2021-01-07 17:54:47 1580

原创 CollapsingToolbarLayout里面添加textview,一直重绘布局报错

布局如下<com.google.android.material.appbar.AppBarLayout android:id="@+id/appBarLayout" android:layout_width="match_parent" android:layout_height="wrap_content" app:expanded="false"&...

2020-03-27 10:30:53 816

原创 Android监听输入法的状态:弹起,关闭

Android监听输入法的状态:弹起,关闭在根视图添加一个id,@+id=root_view,如监听布局的状态@BindView(R.id.rl_rootview)FrameLayout frameLayout;frameLayout.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.On...

2020-03-23 13:28:54 1677 1

原创 必须学会的Linux下一键部署项目的shell脚本

必须学会的Linux下一键部署项目的shell脚本在公司也经历了几次项目更新,往服务器上部署上线。然鹅每次都是用的服务器上已经存在的脚本文件,类似这个样子:每次我就上传个jar包,然后执行./restart就结束所谓的发包,太无聊了, 于是想着为什么要用别人的脚本文件呢? 于是有了本篇博客。基础知识需要用到linux基本命令怎么执行shell脚本使用nohup启动jar包d...

2020-01-09 23:45:46 5709

原创 Springboot登录会话过期,重定向到登录界面

Springboot实现登录过期,重定向到登录页面集成spring session很多时候我们网站都会需要登录和验证.试想: 如果我登录了网站后, 有事离开了电脑60分钟; 在这段时间内, 如果有人使用我的电脑, 那么我的账号是十分危险的.因此需要一个浏览器与服务器之间的会话, 在没有一定时间内没有交互的话, 就让这次登陆状态过期, 如果过期后, 在页面上点击, 让它跳转回登陆页面.这...

2019-12-15 19:37:44 11990 16

原创 程序员不能不懂的Retry机制

Retry重试机制当我们调用一个接口时, 可能由于网络等原因造成第一次失败, 再去尝试就成功了, 这就是重试机制.重试的解决方案有很多, 比如利用 try-catch-redo简单重试模式, 通过判断返回结果或监听异常来判断是否重试, 具体可以看如下例子:public void testRetry(){ boolean result = false; t...

2019-12-09 00:24:20 1671 2

原创 程序员一定不能错过的全局异常处理

SpringBoot全局异常使用自定义错误界面Springboot自带的错误提示界面不太友好, 我们自己实现错误界面.在src/main/resources/static 下面新建自定义错误页面404.html, 具体代码如下图所示:<!DOCTYPE html><html lang="en"><head> <meta charse...

2019-12-08 23:35:58 380

原创 Springboot事务的使用

Springboot事务的使用Springboot事务介绍​ Springboot开启事务很简单, 只需要一个注解 @Transactional 就可以了, 因为在 Springboot 中已经默认对JPA, JDBC, Mybatis开启了事务, 引入它们依赖的时候, 事务就默认开启. 当然, 如果你需要用其他的ORM框架, 比如 Beat1SQL, 就需要自己配置相关的事务管理器.​ ...

2019-12-05 21:13:53 767

原创 Spring注解事务行为

Spring注解事务行为当事务方法被另一个事务方法调用时, 必须指定事务应该如何传播. 例如, 方法可能继续在现有事务中运行, 也可能开启一个新事务, 并在自己的事务中运行. 事务的传播行为可以在 @Transctional的属性中指定, spring定义了 7 种传播行为, 具体如下图所示.Spring传播行为表1 Spring事务播行为传播行为含义PROPAGA...

2019-12-05 01:20:34 231

原创 Spring常用注解含义

Spring常用注解含义@Service Springboot会自动扫描到@Service注解的类, 并把这些类纳入Spring容器中管理. 也可以用@Component注解, 只是@Service注解更能表明该类是服务层类.@Component 泛指组件, 当组件不好归类的时候, 我们可以使用这个注解进行标注.@Repository 持久层组件, 用于标注数据访问的组件, 即DAO层....

2019-12-04 23:49:45 570

原创 SpringBoot集成Druid

SpringBoot集成Druid先添加druid依赖<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <versio...

2019-12-01 23:55:23 250

原创 springboot集成tkbatis,并借助PageHelper进行分页 添加依赖

springboot集成tkbatis,并借助PageHelper进行分页添加依赖spring依赖jdbc依赖tkmybatis依赖pagehelper依赖pagehelper-autoconfigure依赖<dependency> <groupId>org.springframework.boot</groupId>...

2019-11-30 23:07:15 670

原创 Springboot整合mybatis

使用springboot整合mybatis。使用代码配置。整体结构:1. 添加所需依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta...

2019-11-25 21:18:30 280

原创 使用git将项目关联远程仓库并push到新的branch

场景:我有一个项目名为Test托管在GitHub,项目Test现在只有一个master分支,现在我朋友用邮件给我发了一份代码,我想把这份代码上传到我的Test项目的dev分支。lets go使用idea打开项目,然后在进入到项目所在目录,即/User/uwei/IdeaProjects/demo 目录,执行git init 来初始化git init初始化后,就将需要push到...

2019-11-14 21:47:53 2612

原创 Linux杀掉某个进程

Linux运行jar https://blog.csdn.net/dummyo/article/details/102622541Linux查看运行的java程序 https://blog.csdn.net/dummyo/article/details/102622651Linux查看某个端口号的运行程序 https://blog.csdn.net/dummyo/article/...

2019-10-18 11:51:12 2566

原创 Linux查看某个端口号的运行程序

Linux运行jar https://blog.csdn.net/dummyo/article/details/102622541Linux查看运行的java程序 https://blog.csdn.net/dummyo/article/details/102622651Linux查看某个端口号的运行程序 https://blog.csdn.net/dummyo/article/...

2019-10-18 11:45:15 5041

原创 Linux查看运行的java程序

Linux运行jar https://blog.csdn.net/dummyo/article/details/102622541Linux查看运行的java程序 https://blog.csdn.net/dummyo/article/details/102622651Linux查看某个端口号的运行程序 https://blog.csdn.net/dummyo/article/...

2019-10-18 11:41:41 22573 7

原创 Linux运行jar

Linux运行jar https://blog.csdn.net/dummyo/article/details/102622541Linux查看运行的java程序 https://blog.csdn.net/dummyo/article/details/102622651Linux查看某个端口号的运行程序 https://blog.csdn.net/dummyo/article/...

2019-10-18 11:35:11 2663

原创 使用@Conditional注解根据配置文件注入不同的对象

背景:项目中使用了datahub,kafka两种消息队列,为了避免硬编码,应该根据配置文件来决定使用哪种消息队列,以及初始化哪个对象。为了简洁,我只写了简单代码来表明实现逻辑。定义一个IBase的接口,声明一个send方法,然后datahub,kafka去实现:public interface IBase { void send();}@Component...

2019-10-14 00:14:16 1678 1

原创 springboot从application.properties中注入list, map

需求:在配置类中,从application.properties中读取一个复杂list。如List<Person>或者初始化一个map直接上代码:配置类:@Configuration@Component@ConfigurationProperties(prefix = "datahub")public class Config { private List&...

2019-10-11 10:21:59 3962 2

原创 python使用dos命令将多个文件拼接成一个

情景:我用python爬取了很多.ts的文件,他们是一个个只有几秒的短视频,现在想把它们合并成一个电影:合并的命令copy /b *.ts new_name.mp4/b是以二进制的形式合并:现在我要执行的命令为 :copy /b D:\pythonFetch\movie\20190905\*.ts D:\pythonFetch\movie\20190905\new.mp4...

2019-09-05 22:45:46 1240 1

原创 IDEA调试

Step Over:进入下一步,如果是方法,那就直接跳过(F8)Step Into: 进入下一步,如果是方法就进入内部,但不会进入jdk封装的方法(F7)Force Step Into:强制进入下一步,不管是什么方法,如果是jdk封装的方法,也会进入(Alt + Shift + F7)Step Out:跳转到下一个断点,没有就直接运行到最后(Shift + F8)Run t...

2019-07-30 15:02:32 96

原创 RecylerView下拉刷新与上拉加载(二)

效果图:此篇博客是在上一篇:Recylerview上拉加载与下拉刷新(一)的升级版,如果有不清楚先看Recylerview上拉加载与下拉刷新(一)(p.s. 这是我正在写的一个毕业设计,前端App使用Rxjava + Retrofit + EventBus; Java后台是 SSMgithub地址:https://github.com/uweii/SHShop 每天都会更新...

2019-05-19 21:35:53 358

原创 Java实现邮箱验证功能

(p.s.减少出现554垃圾邮件1。先给自己抄送一份:message.addRecipient(Message.RecipientType.CC, new InternetAddress(from)); //给自己抄送一份,避免出现5542。给邮件设置header:message.setHeader("Header", "SHShop激活验证"); //添加header,防止网易...

2019-05-17 02:23:27 2841

原创 Activity全屏

效果图:实现起来很简单:在theme里面新建一个继承AppTeme, 比如我命名为AppTheme.NoActionBar.FullScreen: <style name="AppTheme.NoActionBar_Goods_Detail"> <item name="windowActionBar">false</item> ...

2019-05-12 17:29:37 184

原创 自定义EditText控制DrawableRight的显示或隐藏

目的:有时候在做搜索功能时,如果EditText有内容,则在右侧显示一个删除图标,点击删除图标删除内容;当EditText内容为空时,则隐藏删除图标。效果图:p.s. 这是我正在做的一个毕业设计,Android + JavaWeb。前端app,后台都会有。我每天会往Github上提交代码,这个上面会有完整的项目。欢迎star,fork。GitHub:https://github...

2019-05-12 11:36:08 1864

原创 动态设置状态栏背景颜色和状态栏字体颜色

先看效果图:(上图为我的毕业设计,我会每天提交代码到Github,欢迎star,fork。GitHub链接:https://github.com/uweii/SHShop)1.设置状态栏背景颜色//拿到window Window window = activity.getWindow(); //取消设置透明状态栏,使 ContentView 内容不再覆盖状态栏 windo...

2019-05-11 13:57:57 2741

原创 ButterKnife在Activity和Fragment中的使用小结

以前在布局中找id时,需要根据findViewById()来找;现在有了ButterKnife则可以省去一大部分时间,他是利用了依赖注入的原理,以便达到低耦合。要使用ButterKnife,我们先要添加依赖。在build.gradle(Module:app)中添加implementation 'com.jakewharton:butterknife:8.8.1'annotationPr...

2019-04-30 01:20:18 2192

原创 禁止ViewPager左右滑动

最近在做一个二手校园交易平台的毕设,想达到仿咸鱼的tab效果。目前效果:但是咸鱼的是不可以左右滑动的,怎么禁止ViewPager左右滑动呢?建一个ViewPager的子类,重写它的 onInterceptTouchEvent 和onTouchEvent方法:package com.up.uwei.shshop.view;import android.content.Cont...

2019-04-26 22:38:35 6521 7

原创 clipChildren仿咸鱼底栏

咸鱼的底栏:最开始下面的tab我想的是使用Tablayout,但是 最中间的凸出不好实现,所以改用了LinearLayout布局,使用clipClildren属性,该属性控制是否允许子布局超出父布局。默认为true。显然,我们应该在根布局设置为clipClildren = false。然后使用android:layout_gravity="bottom" 来使超出的部分的对齐...

2019-04-20 12:31:14 296

原创 生产者消费者模式 - java

例子:生产者: 往一个公共的盒子里面放苹果消费者:从公共的盒子里面取苹果盒子:盒子的容量不能超过10方法一:Producer.java:public class Producer extends Thread{ private Test test; public Producer(Test obj){ this.test= obj;...

2019-03-29 23:48:17 160

原创 idea整合ssm框架,实现增删改查

1. 先创建一个maven项目,选择archetype-webapp,然后next2. 输入项目信息3,next --> finish4. 我的工程结构, main下没有Java目录就自己新建,然后标记为source5. 编辑pom.xml添加依赖文件<?xml version="1.0" encoding="UTF-...

2019-02-01 20:44:45 2092

原创 索引在什么情况下会失效

1.对于创建的多列索引(复合索引),不是使用的第一部分就不会使用索引 alter table student add index my_index(name, age) // name左边的列,age右边的列 select * fro...

2018-11-17 23:03:50 13439 1

原创 数据库的优化

1.  找到慢查询,优化sql语句      可以使用explain进行分析sql语句2. 建立索引【普通索引, 唯一索引, 主键索引,全文索引】3. 分表     ①垂直分表:当字段很少改变,但是内容量却很大的时候,可以把此字段单独分离出来,使用外键。     ②水平分表:当记录很大的时候,操作数据库很慢。可以考虑 按时间分表, 按区间范围分表(一般自增id),按 hash分...

2018-11-17 22:46:50 149

原创 LeetCode:给定一个n个元素的数组,是否存在a,b,c三个元素,使用得a+b+c=0,找出所有符合这个条件的三元组

如题:思路:1. 先将数组排序2.循环遍历数组元素,采用双指针法,如:当前元素下标为 i ,则低指针为 i+1, 高指针为 arr.length - 1 .3. 如果三下标所对应元素的和 大于0,则高指针减小一,如果和小于0则低指针加一, 否则 则等于 0。4. 如果等于0,再判断有没有重复元素。代码:public class AddThreeToZero...

2018-11-13 02:01:33 4369 1

原创 dialog设置背景透明

默认dialog是一个白底方形的,如果在xml设置中设置了一种边角是弧形的背景图片,那么显现的dialog角落就会留白,解决办法:dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);效果:只会显示你设置的圆弧形的背景图,dialog四角不会留白。...

2018-09-04 15:37:50 8823

原创 Recylerview的adapter.setHasStableIds(true)

Recylerview的item是 ImageView和 TextView构成,当数据改变时,我们会调用 notifyDataSetChanged,这个时候列表会刷新,为了使 url 没变的 ImageView 不重新加载(图片会一闪),我们可以用setHasStableIds(true);使用这个,相当于给ImageView加了一个tag,tag不变的话,不用重新加载图片。但是加...

2018-09-04 09:55:03 15331

原创 Recylerview添加分割线与自定义分割线

效果图:默认分割线:                                    自定义分割线: 看代码:1. 添加默认分割线:mRecylerView.addItemDecoration(new DividerItemDecoration(this,DividerItemDecoration.VERTICAL));2. 自定义分割线(分两步,①创建drawa...

2018-07-22 21:01:41 501 2

原创 Android连接蓝牙打开SCO,实现蓝牙耳机输入

在很多应用中,都存在使用蓝牙进行录音。首先我们写一个BroadcastReceiver,进行监听蓝牙状态改变。public class BluetoothStatusRec extends BroadcastReceiver{ private String TAG = "BluetoothStatusRec"; public static AudioManager mAu...

2018-07-17 13:46:38 13867 1

空空如也

空空如也

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

TA关注的人

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