- 博客(38)
- 收藏
- 关注
原创 基本排序算法笔记
所谓八大排序算法: 冒泡、插入、选择、快速、归并、桶排序、计数排序、基数排序时间复杂度为O(n²)冒泡排序过程 每一次冒泡都会遍历整个数组,依次对比相邻的元素,符合条件就交换; 原来 : 1 5 6 8 2 第一次排序: 1 5 6 8 2 (8>2)交换 8的最终位置找到了 1 5 6 2 8 第二次排序 1 5 6 2 8 1 5
2021-09-21 16:08:30 162
原创 七牛云使用(异步、前后分离)
七牛云官方创建账户获取AK 跟 SK 这两个密钥创建私密空间记录空间名称 还有 地区(华东、华南)java(SpringBoot)+Vue测试1Vue导入依赖npm 下载异步请求的axionnpm 下载qiniu.js SDK2Maven导入依赖 <!--java 整合七牛云 依赖包--> <dependency> <groupId>com.qiniu</groupId>
2021-09-21 13:44:09 402
原创 Hystrix请求合并
应用场景将短时间内的,仅参数不同的多个请求合并成一个请求,这可以在高并发场景下减少线程数量以及网路连接数量。好处:在高并发下以及大量重复请求下很有用增加应用的请求吞吐量缺点会导致延迟大幅提上,具体延迟要看如何配置基本使用:创建provider提供接口@RestControllerpublic class UserController { @GetMapping("/user/{ids}") public List<User> getUserByIds(
2021-05-14 21:30:01 603 1
原创 Restemplate的Get.Post.Put.Delete请求
利用Spring框架提供的Restemplate四种常见的请求方法GetgetForEntity()-----返回响应头跟响应体getForObject()-----只返回响应体 @GetMapping("/hello3") public String sayHello3() throws IOException { //url ,返回值类型 return restTemplateBalance.getForObject("http://provider
2021-05-11 23:57:03 419
原创 Eureka集群注册服务消费
Eureka是SpringCloud框架提供的服务消费注册中心,将每一个springboot应用注册到注册中心,由注册中心担任消息中介。Eureka注册中心基础配置:#应用名spring.application.name=eureka#端口server.port=1111#是否将自己注册到注册中心eureka.client.register-with-eureka=false#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务eureka.client.f
2021-05-10 15:26:36 151
原创 (Andorid基础)基于SqlLite数据库的增删查改小案例(电话簿)
SqlLite可以提供应用持久化数据,可储存大量的数据(相比于内部存储)案例:效果图创建布局文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"
2021-04-26 22:54:35 219
原创 (Andorid基础)通过内部存储保存数据于文件案例
通过内部存储读写文件 ,从而保存数据,但是 不要要保存大量万事页面始<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:paddin
2021-04-25 22:07:10 137
原创 (Android基础)Intent意图实现携带数据跳转和回传
在Activity之间跳转可以使用Intent这个桥梁ps : 菜鸟教程总结实例:实现页面1点击按钮跳转到界面2选择图片后跳转回页面1 并显示首先创建布局文件:activity_my.xml 界面1<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_pa
2021-04-25 21:01:29 771
原创 (android基础) RecyclerView使用
RecyclerView是谷歌提供的控件,与ListView相似,但更强大1.导入依赖: implementation 'com.android.support:recyclerview-v7:28.0.0' implementation 'com.android.support:appcompat-v7:28.0.0'在activity_main.xml创建列表视图<?xml version="1.0" encoding="utf-8"?><RelativeLa
2021-04-24 15:17:18 499
原创 (Andorid基础)ListView控件的使用--BasicAdapter
ListView可用与列表展示数据数据设配器是数据与视图之间的桥梁BasicAdapter是最基本的适配器使用示例:创建总列表数据试图 activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:
2021-04-24 12:14:24 189
原创 (Android基础)自定义对话框
系统自带的对话框dialog并不能满足更严格的开发需求,所以需要自定义对话框;首先创建显示点击按钮布局文件:activity_main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_hei
2021-04-24 10:24:46 902
原创 KNN算法JAVA实现
KNN算法是一种分类算法,其实啊,KNN的原理就是当预测一个新的值x的时候,根据它距离最近的K个点是什么类别来判断x属于哪个类别。例如当K=3的时候,也就是取最靠近样本点的三个数据,然后看这三个数据大多数是什么类型的,就将样本点归为什么类;所以在代码中可以根据距离计算判断:例如二维数据KNN算法优点简单易用,相比其他算法,KNN算是比较简洁明了的算法。即使没有很高的数学基础也能搞清楚它的原理。模型训练时间快,上面说到KNN算法是惰性的,这里也就不再过多讲述。预测效果好,对异常值不敏感,毕竟取多数
2020-12-22 10:59:33 2188 1
原创 看看什么是Git
上传项目首先在项目根目录打开git控制台初始化git仓库git init添加文件git add excemplefile提交git commit -m "demo"关联仓库git remote add origin 自己仓库地址最终提交git push -u origin master
2020-12-17 00:10:44 174
原创 通过RabbitMQ实现邮箱的发送订阅功能
邮件配置准备工作配置邮件服务#配置邮件spring.mail.host=smtp.qq.comspring.mail.username = 1261349543@qq.comspring.mail.password = 授权码spring.mail.port = 587spring.mail.default-encoding=UTF-8spring.mail.properties.mail.smtp.socketFactoryClass=javax.net.ssl.SSLSocketFac
2020-12-12 20:17:22 592
原创 对文件读写稀疏矩阵
稀疏数组方便保存只有少量有效数据的数组创建一个样本数组int chessArr[][] = new int[11][11]; chessArr[1][2] = 1; chessArr[1][3] = 2; chessArr[1][4] = 2; chessArr[2][6] = 1; chessArr[2][1] = 1; for (int[] i : chessArr) { for
2020-11-28 03:27:37 1018 1
原创 mysql不能基于一张表的数据修改同一张表的数据
当mysql报错:1093 - You can’t specify target table ‘department’ for update in FROM clause 的时候,说明你想查询一张表的数据,再根据这个数据修改同一张表的数据,这在mysql是不允许的。但是有其他方法可以实现同样的效果:原来的sql:UPDATE department SET isParent = 0 WHERE id = ( SELECT parentId FROM department WHERE id = 10
2020-11-27 19:17:21 252
原创 RabbitMq消息服务(SpringBoot)
AMQP中文名:高级消息队列协议,他是线路层协议规范,所以可以跨平台,就像是HTTP一样,只要按照规范发送数据,就可以通过AMQP进行消息交互,本文基于我安装了超级久的RabbitMQRabbitMQRabbitMQ 是实现了AMQP的消息中间件,使用Erlang编写,所以使用前要安装Erlang环境#下载wget http://erlang.org/download/otp_src_21.0.tar.gz#解压tar -zxvf otp_src_21.0.tar.gzcd otp_src_
2020-11-11 23:21:04 146 1
原创 SpringBoot的WebSocket实现单聊群聊
说在开头在HTTP协议中,所有的请求都是由客户端发送给服务端,然后服务端发送请求要实现服务器向客户端推送消息有几种methods:轮询大量无效请求,浪费资源长轮询有新数据再推送,但这会导致连接超时,有一定隐患Applet和Flash过时,安全隐患,兼容性不好消息群发创建新项目:添加依赖: <dependency> <groupId>org.springframework.boot</groupId>
2020-11-09 01:08:27 263
原创 oauth2在SpringBoot怎么用
Oauth2oauth2采用令牌的方式让用户灵活地对第三方应用授权访问资源或者撤销权限授权流程客户端像用户请求授权用户同意后服务器返回一个授权凭证客户端可以拿着凭证访问授权服务器,申请令牌授权服务器确认无误后,发放令牌客户端可以拿着令牌访问资源服务器上的资源资源服务器确认后发放资源授权模式有四种:授权码模式:最完整,最严谨,第三方登录基本使用这种模式简化模式:不需要客户端参与,直接在浏览器中向授权服务器申请令牌密码模式:用户直接把用户名密码告诉客户端,客户端根据这些信息申请令牌
2020-11-06 03:26:43 428
原创 SpringSecurity动态权限笔记
前言要想实现动态配置URL权限,就要自定义权限配置数据库创建Beanpublic class Role { private Integer id; private String name; private String nameZh; //省略getter setter}public class Menu { private Integer id; private String pattern; private List<Role>
2020-11-05 02:53:06 707
原创 基于数据库认证的Spring Security用法
介绍Spring Security是相对复杂的安全管理框架,下面记录SpringBoot整合Spring Security框架Spring Security基本配置第一:导入相关依赖1.spring-boot-starter-security2.spring-boot-starter-web3.mybatis-spring-boot-starter4.mysql-connector-java5.druid-spring-boot-starter第二:配置druid连接池spring.da
2020-11-02 23:38:04 145
原创 SpringBoot持久层技术(jdbcTemplate+mybatis+springdataJPA)
整合jdbcTemplatejdbctemplate是Spring提供的JDBC框架,利用AOP技术来解决直接使用jdbc带来的大量代码的繁杂问题SpringBoot对JdbcTemplate的使用提供了一套自动化配置类:JdbcTemplateAutoConfiguration类,所以想要使用只需要提供JdbcTemplate的依赖和dataSource依赖即可案例整合MybaitsSpringBoot同样为Mybatis提供了自动化配置导入Mybatis依赖、数据库依赖、数据库连接池的依赖
2020-10-19 20:22:48 549
原创 SpringBoot返回JSON数据基本操作
创建工程时添加web依赖spring-boot-starter-web这个依赖默认添加jackson-databin作为json处理器,所以直接上手。创建实体类@Componentpublic class Man { private String name; private int age; @JsonFormat(pattern = "yyyy-MM-dd") private Date burn_date; //省略getter setter}创建控制器
2020-10-17 11:07:50 284
原创 第二章SpringBoot基础配置知识
spring-boot-starter-parent 主要提供了以下默认配置:JAVA版本默认1.8编码默认UTF-8提供Dependency Management进行项目依赖版本的管理默认的资源过滤与插件配置@Spring BootApplication是由@Spring BootConfiguration @EnableAutoConfiguration @ComponentScan组成@ComponentScan 默认扫描当前类所属的包下面的所有类可以在application. p
2020-10-15 20:36:46 104
原创 一次ssm+bootstrap4小项目总结
前言为了参加一次小比赛设计的一个小作品电商外卖网,才用的技术为SSM+bootstrap4+jquery+mysql。项目展示遇到的问题遇到的问题非常多,倒还大部分解决了。前端问题post()和ajax()参数的用法和区别,以及ssm框架对这数据的捕捉问题。栏栅系统使用问题。下拉菜单出现的问题。既然get方式有被缓存的概率,怎样避免缓存。异步请求回来的json对象为什么有些获取不到属性,控制台报错,需要改变代码位置。评论打星星功能(悬浮任意一颗星星,左边星星全部点亮,点击后记录亮星星
2020-10-15 10:40:56 217
原创 linux安装mysql8的时候忘记临时密码以及修改临时密码解决方案
linux安装mysql8的时候忘记临时密码以及修改临时密码解决方案修改my.cnf重启mysql服务打开mysql服务再次打开my.cnf配置文件重启mysql服务进入mysql服务修改密码修改my.cnf打开etc目录下的my.cnf配置文件,添加下面这行代码:skip-grant-tables然后保存退出重启mysql服务service mysqld restart;打开mysql服务mysql -u root -p此时密码是空的,直接回车进入mysql选择mysql系统数据
2020-09-28 23:22:56 3701 2
原创 IDEA创建Maven项目(Mybatis测试2020.6.23)
1.创建直接下一步2.输入项目名字3.创建目录4.配置pom.xml<?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-instance" xsi:schemaLocation="http://maven.apache.org/
2020-06-23 22:27:47 290
原创 JavaWeb邮箱注册激活账号
JavaWeb邮箱注册激活账号邮箱工具类MailUtil用法注意事项激活码工具类UuidUtil用法邮箱工具类MailUtil/** * 发邮件工具类 */public final class MailUtils { private static final String USER = "xxxxxxxx@qq.com"; // 发件人称号,同邮箱地址 private static final String PASSWORD = "xxxxxxxxxx"; // 如果是qq邮箱可以
2020-05-14 00:44:49 618
原创 典型JavaWeb关键知识点1(注册登录模块)
典型JavaWeb关键知识点注册模块前端后端数据库改变数据库编码:调用template的update方法,传入sql以及参数。注册模块前端注册表单采用典型JqueryAjax提交$(function(){ $("#registerFrom").submit(function(){ $.post("refisterFrom",$(this).serialize(),function(data){ //后端返回的data信息 }); });});后端数据库改变数据库编码:打
2020-05-13 00:28:15 453
原创 CSS的hover伪类概述
CSS的hover伪类概述定义: *hover伪类在鼠标移到元素上时向此元素添加特殊的样式*用法:选择器:hover{ /*style*/ }适用元素: 几乎所有的元素都适用,一般常用与a标签几种常见的hover失效:选择器不正确元素之间的堆叠(hover对象被覆盖在下)样式设置不正确a:hover 必须位于 a:link 和 a:visit...
2019-12-03 13:59:53 236
原创 thinkphp5用户登陆以及Session访问权限使用
thinkphp5用户登陆以及Session访问权限使用首先,简单概括一下Session的概念:Session 变量用于存储关于用户会话的信息,或者更改用户会话的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的。那么使用Session有什么优点呢?我来简单阐述一下:Session 是以文本文件形式存储在服务器端的,所以不怕客户端修改 Session 内容...
2019-11-12 00:20:04 1669
原创 Spring mvc出现404的几个原因
出在web.xmlxml配置出错一般为:<servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <...
2019-06-14 16:03:41 5084 2
原创 SpringMVC统一的异常处理
统一的异常处理在springmvc的开发中,肯定会遇到各种各样的异常需要处理,如果每个异常都单独处理,系统的代码耦合性高,工作量大,维护困难。Luckly,SpringMVC能将所有类型的异常从各层提取出来保障了相关处理过程的功能单一。对于实现这种功能,SpringMVC有三种方法:简单异常处理器SimpleMappingExceptionResolver:1.首先在exception包...
2019-06-14 16:02:09 261
原创 Spring MVC的国际化
导言很多面对全世界的网站或者软件都需要适应不同语言环境的人,这就需要程序或者网页能够很简便地切换语言种类,这就是Spring MVC的国际化。资源文件一般命名格式为:baseName_language_country.properties例如中国大陆:baseName_zh_CN.properties,在该文件加入:“hello=我要向不同的人民问号:你好!”,添加以后保存,系统会自动进...
2019-06-14 03:54:11 207
原创 Mybatis知识点以及工作原理和流程
Mybaits 概念它是一个基于java的持久层框架,它消除了几乎所有的JDBC代码和参数手工设置以及结果集的检索它使用简单的xml或者注解用于配置和原始映射,将接口和java的普通对象映射成数据库中的记录。这个框架小巧、方便、高效、简单、直接、半自动化。Mybitis工作原理读取Mybatis配置文件,一般命名为:mybatis-config.xml,需要配置运行环境等信息,例如...
2019-06-13 14:13:28 344
原创 Spring mvc 中的拦截器知识点
@Spring mvc 中的拦截器知识点什么是拦截器?三种方法perHandle方法(重点)postHandle方法afterCompletion方法拦截器的配置多个拦截器什么是拦截器?有时候有些网站只给特定的人群登陆浏览,这时候就需要使用拦截器,拦截器与js的过滤器Filter类似,它主要用于拦截用户的请求并做出相应的处理,通常用在限权登陆验证、记录请求信息的日志、判断用户是否登陆等功能。...
2019-06-12 00:29:53 444
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人