自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决Keepalived监控脚步不执行

在学习Nginx配置高可用集群时,测试时发现Keepalived监控脚步不执行,问题可能是keepalived的配置文件keepalived.conf或脚本文件有问题,导致当主服务器的Nginx挂掉后,keepalived没有被杀死,从而导致请求无法转向到从(备份)服务器!ps:至于安装Nginx与keepalived 和 配置keepalived的配置文件、写脚本的步骤,这里不讲,默认是会的,这里只是讲解决脚本不是起效的解决方法!踩坑影响深刻,有多种原因的影响,检查解决如下:可能原因一:keepal

2020-12-28 11:25:15 2724 3

原创 安卓渐变色

先举个例子:如图:三种颜色从左往右渐变以下为各个属性详解:1.angleandroid:angle=“Integer” :当android:type=“linear” 时,angle为渐变的角度:0 代表从左往右渐变,90 从上到下,180从右往左,360左往右。值为 0 到 360,必须是45的倍数或0。(ps:type不等于linear时是不起作用的)2.startColor、centerColor、endColorandroid:startColor=“color” :渐变开始位置的颜

2020-12-18 15:15:38 2001 1

原创 Android 报错:open failed: EACCES (根据uri生成file)

因 Android 10 即以上 读取 内部存储 的file 会报错:open failed: EACCES (Permission denied),所以只能 根据uri 生成新的 file。ps:虽然在AndroidManifest.xml中的application结点里添加属性配置:android:requestLegacyExternalStorage="true"来请求使用旧的存储模式,就可以根据uri获取path 进而获取file,这样就解决了报:open failed: EACCES (Per

2020-11-30 07:48:37 1113

原创 TextUtil

在安卓中,我们经常需要对数据进行校验,如身份证、电话号码、姓名等等,此时可以写一个工具来使用,如下:public class TextUtil { /** * 判断姓名 * */ public static boolean isName(String name) { if (!name.matches("[\u4e00-\u9fa5]{2,4}")) { return false; } retu

2020-11-18 14:42:31 387

原创 ImageView 加载本地(手机)图片

*把手机里的某张照片加载到ImageView里的方法有三种:ivPicture 为 获取ImageView里的控件名第一种:ps:若多次设置:setImageURI(uri),若uri不变,即使文件内容变了,因为有缓存到uri,所以还是加载之前的文件。解决:变不同的uri或用第二种方法或其他 File file=new File("/sdcard/test.jpg"); ivPicture.setImageURI(Uri.fromFile(file));第二种 Bitmap

2020-11-07 20:54:24 2856 1

原创 Spinner 下拉框

下拉框可用自定义的列表做或查询出来的数据做!下拉框用自定义的列表显示:第一种方式:在布局文件里设置1.在res/values/strings.xml层里的里写: <string name="title">小说</string> <array name="books"> <item>--请选择--</item> <item>三国演义</item> <i

2020-10-28 10:52:50 690

原创 Android 10

在Android 10 文件储存机制修改为沙盒模式,App 只能访问自己目录下的文件和公共媒体文件,所以,即使获取了存储的权限,访问外部的存储受到了限制,也就是说除了自己目录和公共媒体文件,读取其它的文件就会报:open failed: EACCES (Permission denied)。解决方法:第一种方法:在 AndroidManifest.xml 的 application 添加属性:android:requestLegacyExternalStorage=“true”这代码意思是使用

2020-10-18 20:20:31 506

原创 Android 6

权限变更:Android 6.0 开始,Google把权限分为两类:一类为普通权限: Normal Permission ,这类权限不涉及用户隐私,是不需要用户授权的,在AndroidManifest.xml里申请权限即可,比如访问网络:一类为危险权限:Dangerous Permission,涉及隐私的,需要用户授权,比如访问通讯录、定位。这类不仅要在AndroidManifest.xml里申请权限,还要动态获取权限,需要用户同意!下面列出危险权限列表:来源: https://blog.cs

2020-10-07 20:35:32 753

原创 分类标题切换页 TableLayout+ViewPager2+Fragemnt+RecyclerView

先上图:已售、已退、已废 为分类标题;预加载数的意思是:例,预加载 1,页,就是“已退”的标题的数据预加载了思路:在fragment里,再放fragment,通过滑动事件就可以切换fragment里的fragment了。以下为实现步骤Step 1:首先准备好fragment在drawable添加如下文件:1.bg_order_top.xml:作用:在button上面画一条灰色的线<?xml version="1.0" encoding="utf-8"?><layer-lis

2020-08-19 20:49:36 787

原创 隐藏app的标题栏

在values层的styles.xml里的parent参数修改如下:<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">或者在某个ui里关闭:if (getSupportActionBar()!=null){ getSupportActionBar().hide();}`

2020-08-07 16:39:12 144

原创 获取焦点自动弹出软键盘

Step 1:写个方法:MainActivity为当前activity public void showSoftInputFromWindow(EditText editText){ editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); MainActivity.this.getWindow().setS

2020-08-07 15:48:07 862

原创 弹出软键盘带有输入框(像聊天时的手机软键盘上面有附带的框)

弹出软键盘并弹出输入框,并获取焦点在此输入框里:国际惯例,先上图:下面为步骤:Step 1:自定义带有输入框等等需要的样式的dialogpublic class SoftKeyboardInputDialog extends Dialog { private Activity activity; public SoftKeyboardInputDialog(@NonNull Context context, int themeResId) { super(cont

2020-08-07 15:46:51 1071

原创 点击确认按钮后不关闭diaog,必须手动设置关闭dialog

因dialog点击其按钮之后,都会关闭dialog需要,有时我们需求需要满足某种条件之后才能关闭,就可以用如下写法实现:Step 1 :activity_main.xml布局如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/a

2020-08-07 15:42:56 1613

原创 Android点击事件的四种写法

第一种:结合layout层的xml布局文件声明方法(不建议使用,希望代码和和layout层分开、解耦)在当前activity里写好点击事件:public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCon

2020-08-07 15:37:06 474

原创 SharedPreferences 轻量级的储存

说明:1.SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activity暂停时,将此activity的状态保存到SharedPereferences中;当Activity重载,系统回调方法onSaveInstanceState时,再从SharedPreferences中将值取出。2.严格来说,SharedPreferences最好不要用来保存“用户配置”,比如,用户选择了什么铃声,是否自动更新等等。如果要为应用创建用户

2020-08-07 10:30:41 438

原创 拨打号码

第一种:跳到电话界面并输入了号码,并未拨打号码 //tel: 固定写法,后面接着写号码。 Uri uri=Uri.parse("tel:10086"); Intent intent=new Intent(Intent.ACTION_DIAL,uri); startActivity(intent);第二种:直接拨打号码,正在拨打了Step 1:申请权限:<uses-permission android:name="android.permission.CALL_PHONE

2020-08-06 16:35:05 361

原创 Intent 组件之间的通讯(跳转、传参、打开应用)

使用Intent进行页面跳转Intent是一个将要执行的动作的抽象的描述,一般来说是作为参数来使用,由 Intent来协助完成 Android各个组件之间的通讯。使用方法:作用:作用一:完成activity之间的跳转、传参这传参也有几种类型,如下:第一种.从当前activity跳转到另一个activity: //参数1 为当前的 activity,参数 2 为:要跳转的activity的类对象 Intent intent =new Intent(MainActivity.this,

2020-08-06 16:32:01 380

原创 获取屏幕宽高

//获取屏幕宽高WindowManager manager=activity.getWindowManager();Display display=manager.getDefaultDisplay();int width=display.getWidth();int height=display.getHeight();

2020-08-05 16:02:53 110

原创 Dialog 对话框

Dialog 常用方法:(格式:dialog.以下方法)setProgressStyle:设置进度条风格,风格为圆形,旋转的。setTitlt:设置标题setMessage:设置提示信息;setIcon:设置标题图标;setIndeterminate:设置Dialog 的进度条是否不明确;这个属性对于ProgressDailog默认的转轮模式没有实际意义,默认下设置为true,它仅仅对带有ProgressBar的Dialog有作用。修改这个属性为false后可以实时更新进度条的进度。setCan

2020-08-05 16:01:43 5250

原创 Fragemnt 碎片

《Android Fragment 非常详细的一篇》Fragemnt是一个碎片,只是覆盖原来的布局而已,当Fragemnt和原来的布局一样大,则完全覆盖,若小,则没有覆盖完原来的布局,原来的布局还会显示没有覆盖的部分,但该fragment最大只能和原来的布局一样大,即fragment使宽和高都设置的match_parent。一:基本用法:添加和移除的例子:先上图:原本为蓝色的背景被紫色覆盖了,说明原来的控件id为 ll_main_content 被fragment_one.xml布局覆盖了

2020-08-05 15:41:56 126

原创 列表 RecyclerView&上下拉事件 SmartRefreshLayout

国际惯例,先上图:使用步骤:举例:Step 1:引入依赖:implementation ‘androidx.recyclerview:recyclerview:1.1.0’Step 2:在对应的布局里(例:activity_main.xml)添加<androidx.recyclerview.widget.RecyclerView<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http:/

2020-07-29 09:28:44 723

原创 OkHttp3 发送网络请求服务器

前言:应用程序需要发送网络请求服务器的接口,可使用OkHttp 3发送请求获取服务端数据GitHut地址Step 1:申请网络请求的权限:在manifests层的AndroidManifest.xml里的<manifest控件里添加: <!--允许程序打开网络套接字--> <uses-permission android:name="android.permission.INTERNET" />Step 2:引入依赖:在Gradle Scripts层的

2020-07-28 15:54:01 1023

原创 图片 Glide

GitHub地址参考:https://blog.csdn.net/guolin_blog/article/details/53759439https://www.jianshu.com/p/791ee473a89b使用步骤:Step 1 :引入依赖://图片加载implementation 'com.github.bumptech.glide:glide:4.11.0'annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'

2020-07-28 10:23:06 537

原创 解决Android P系统限制了明文流量的网络请求

前言:由于Android P系统的设备 ,限制了非加密的文明流量的http(https没事)网络请求,导致该应用无法进行网络请求!!!解决方案如下:Step 1 :在res层右键此文件夹》New》Folder》XML Resources Folder》finisStep 2:res层就多了个xml层,然后新建network_security_config.xml放进xml层,代码如下:<?xml version="1.0" encoding="utf-8"?><network-

2020-07-28 09:23:30 751

原创 Android 扫码登录

国际惯例:先上图:tip,用ssm做的后台。具体思路:1.准备一个bean(存放用户信息的类和记录是否同意登录的Boolean属性) 和 一个map,存放类型为bean(存放用户信息的类)2.后台生成二维码信息 和 生成二维码信息的时间,返回给web端,便于前端生成二维码和记录其生成的时间 和记录二维码信息3.后台写一个esauCode方法,供app端调用,当app端扫码把扫的二维码信息返回的后台,并用该信息作为map的key,创建一个key4.后台写ifEsauCode方法,根据情况返回结

2020-07-27 21:39:21 2293 1

原创 Android轮播

此为课堂笔记!!!用的是bannerGitHub地址国际惯例先上图:使用步骤:Step1:1.在build.gradle(Module:app)里引入依赖:implementation ‘com.youth.banner:banner:2.0.1’2.在build.gradle(Module:app)的android控件里添加支持java8,记得点击右上角的Sync Now同步 compileOptions { sourceCompatibility JavaVers

2020-07-27 19:20:26 380

原创 zxing 生成二维码 带logo图标和底部文字信息

在ssm项目里做的,可以根据参数值生成有logo图标或文字或没文字没logo等等几种样式Step 1 :maven 项目 的pom.xml 引入依赖: <!--二维码 --> <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.1</version>

2020-07-25 15:10:07 1527

原创 QRCode.js 生成验证码

下面介绍一种前台生成二维码的插件:QRCode.js,因为项目需要做扫码登录,所以为了 减轻服务器的压力,所以就在前台生成了!可到此次下次插件:GitHub地址下载插件:打开GitHub地址后,下载图中的js插件就行使用方法:1.简单方式: //参数1为要在哪个标签里生成二维码,参数2为根据该参数生成的二维码信息 new QRCode(document.getElementById("qrcode"), "你的二维码信息");2.设置参数方式: new QRCod

2020-07-25 15:00:43 417

原创 Android扫一扫 有仿微信版

第三方zxing的GitHub地址用法:国际惯例,先上图:Step 1 :添加依赖 //第三方zxing implementation 'com.journeyapps:zxing-android-embedded:3.6.0'Step 2 :添加权限 <uses-permission android:name="android.permission.CAMERA"/>Step 3 :activity_main.xml布局 添加 测试用的两个控件<?

2020-07-25 11:26:03 3466 6

原创 过滤器

开发工具与关键技术:Eclipse、java作者:梁添荣撰写时间:2020-06-08做项目时,我们经常会用到过滤器,步骤我们过滤方法、字符等等进行操作,例如下利用过滤器做登录验证:1.编写过滤器代码为:package com.gx.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;

2020-06-08 21:11:21 223

原创 全局变量引起并发

开发工具与关键技术:Eclipse 10、java作者:梁添荣撰写时间:2020-06-08有时候,在项目中难免会用到全局变量,但,当全局变量有多个线程操作该变量的时候,例如赋值和读取,就有可能出现数据混乱,出现读取到的是另一个线程设置的值,例如以下代码:Controller层代码:@RequestMapping(“Test”)public class Test{String str; //全局变量@RequestMapping(“toTest”)public String toTest

2020-06-08 21:05:43 1406

原创 登录拦截器

开发工具与关键技术:Eclipse、java作者:梁添荣撰写时间:2020-05-28有时我们要登录之后才能访问某些页面,所以就得用到拦截器1.该拦截器代码如下package com.gx.interceptor;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org

2020-05-29 11:29:15 303

原创 BaseController

开发工具与关键技术:Eclipse 10、java作者:梁添荣撰写时间:2020-05-28在ssm项目中,多个controller会有很多相同的代码或使用相同的功能,例如增删查改,这时我们就可以编写一个BaseController了,然后就继承该类,需要时再使用里面的方法。BaseController代码如下:package com.gx.commom; import java.util.List;import org.springframework.web.bind.annotation.R

2020-05-29 11:17:55 8404

原创 BaseService和其实现类

BaseService和其实现类开发工具与关键技术:Eclipse、java作者:梁添荣撰写时间:2020-05-08在service层,我们经常会写基本的增删查改方法,但有很多模块都有类似的写法,所以,抽取常用的增删查改BaseService接口,再实现该接口为BaseServiceImpl,通过service层的实现类继承BaseServiceImpl,就有了各个增删查改的方法了,只...

2020-05-08 16:38:26 4488

原创 添加常用查询新增方法

开发工具与关键技术:Eclipse 10、java作者:梁添荣撰写时间:2020-05-08项目很多模块都需要各种增删查改,每需要一次就写一次,这样就太浪费时间了,这时我们可以更改MyBatisBaseDao,添加一些常用的接口,并在mapper/dao对应的mapping文件添加实现该接口的方法,想法如下,重新写一个MybatisBaseDao替换之前的,重新写所有mapping文件...

2020-05-08 16:36:59 272

原创 创建Vo和相应的hbm.xml

开发工具与关键技术:MyEclipse 10、java作者:梁添荣撰写时间:2020-04-28有时候我们需要一个vo类返回给页面,是结合其它实体类属性的vo,因为是查询,所有我们必须要相应的hbm.xml,如果每次去手动创建,配置,就很麻烦的,所以,做了个工具,直接生成!package com.gx.util;import java.io.File;import java.io.F...

2020-04-28 16:43:20 397

原创 对象转换字符串格式的JSON

开发工具与关键技术:Eclipse 10、java作者:梁添荣撰写时间:2020-04-28有时我们传到页面的json数据,如果有日期格式,则不会以我们想要的格式去输出,这是我们可以自定义工具,对日期进行转换相应的格式,以下有三种方法,对应三种日期格式!第一种:/*说明:* 把集合里的数据序列化成json格式,并根据参数str的状态把数据的data类型转换成常用的时间格式;* 该j...

2020-04-28 16:41:24 347

原创 Servlet重写service

有时候应该模块的业务需求太多,则需要写较多的else if语句,所以为了方便,我们可以通过service写一个反射,然后在serlet层继承BaseServlet即可。以下是BaseServlet工具代码:public class BaseServlet extends HttpServlet {/*** 客户端请求servlet时,调用该servlet无参构造函数来创建对象,调用完后调用...

2019-07-28 20:09:12 865

原创 导出Excel

开发工具与关键技术:MyEclipse 10、java作者:梁添荣撰写时间:2019-07-28public class ExcelUtil {/*用法:例//导出Excelprivate void daying(HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingEx...

2019-07-28 20:06:44 139

原创 验证码图片

开发工具与关键技术:MyEclipse 10、java作者:梁添荣撰写时间:2019-07-18做登录时,不免会需要验证码。具体思路是:先随机生成几个数字或字母保存,再用BufferedImage和Graphics生成一张图片,再把生成的验证码放进图片中,具体代码如下:public class pictureLoginT extends HttpServlet { public vo...

2019-07-18 10:20:00 417

空空如也

空空如也

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

TA关注的人

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