- 博客(114)
- 资源 (12)
- 收藏
- 关注
转载 TCP/IP之RTO、RTT
什么是 RTO、RTT底层的网络是不可靠的, 超时、丢包各种问题, 但 TCP 协议的设计初衷是作为一个可靠的数据传输协议, 超时重传机制是实现可靠性很重要的一个设计.每次 TCP 握手过程都会启动一个定时器, 如果在定时器时间内没有收到, 则进行重传.而重传的超时时间 则成为 RTO (Retransmission TimeOut)我们知道网络是一直在波动的, 所以超时重传也是随着网络一直变化的, 那我们基于什么来计算 RTO 呢?答案是 基于 TCP 单次握手的往返时间. 连接的往返时间成为
2022-04-17 21:14:47
4156
原创 Socket 和 ServerSocket 中 Connection timed out的作用
package org.example;import java.io.IOException;import java.net.InetSocketAddress;import java.net.Socket;public class client { public static void main(String[] args) throws IOException { final Socket socket = new Socket(); long t1
2022-04-17 20:54:58
2900
原创 Socket 和 ServerSocket 中 SoTimeout的作用
服务端,给具体某个Socket 设置socket.setSoTimeout(10000); //毫秒package org.example;import java.io.IOException;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;public class Server { public static void main(String[] args)
2022-04-17 20:16:56
1336
原创 Socket ServerSocket IP和Port详解
package org.example;import java.io.IOException;import java.net.ServerSocket;public class Server { public static void main(String[] args) throws IOException { final ServerSocket serverSocket = new ServerSocket(8888); serverSocket.ac
2022-04-17 14:04:14
3198
原创 Spring Security 入门 RBAC权限模型的构建
基于RBAC(Role-Based Access Control)角色的权限访问控制。用户表 ( sys_user ):保存用户信息角色表 ( sys_role ):保存角色信息权限表 ( sys_permission ):保存系统资源信息。如:菜单、按钮 和对应 URL它们的关系 :用户表与角色表是 多对多关系 ,角色表与资源表是多对多关系。用户角色关系表(sys_user_role):用于维护用户和角色的关系角色资源关系表(sys_role_permission):用于维护角色与资源的
2022-04-17 07:35:40
501
原创 Spring Security 入门 基于注解控制方法级权限
默认方法级权限控制是关闭的,要手动开启@EnableGlobalMethodSecurity(prePostEnabled = true)@Configuration@EnableGlobalMethodSecurity(prePostEnabled = true) //默认方法级权限控制是关闭的,要手动开启public class SpringSecurityConfig extends WebSecurityConfigurerAdapter { @Bean public Pas
2022-04-17 07:27:52
264
原创 Spring Security 入门 权限表达式控制URL权限
配置资源授权,默认是不需要授权。现在访问/say是要有权限aa的@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } @Override protecte
2022-04-17 07:08:57
507
原创 Spring Security 入门 存储session到redis
存储session到redis,达到session共享。pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <grou
2022-04-16 22:57:03
955
原创 Spring Security 入门 Remember-Me 记住我功能
用户选择了“记住我”成功登录后,将会把username、随机生成的序列号、生成的token存入一个数据库表中,同时将它们的组合生成一个cookie发送给客户端浏览器。当没有登录的用户访问系统时,首先检查 remember-me 的 cookie 值 ,有则检查其值包含的 username、序列号和 token 与数据库中是否一致,一致则通过验证。并且系统还会重新生成一个新的 token 替换数据库中对应旧的 token,序列号 series 保持不变 ,同时删除旧的 cookie,重新生成 cookie.
2022-04-16 22:53:23
852
原创 Spring Security 入门 自定义认证失败处理器
实现接口 AuthenticationFailureHandler 自定义认证成功处理器@Componentpublic class CustomAuthenticationFailureHandler implements AuthenticationFailureHandler { @Override public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse respons
2022-04-16 22:46:45
914
原创 Spring Security 入门 自定义认证成功处理器
实现接口 AuthenticationSuccessHandler 自定义认证成功处理器/** * 默认登录成功后,跳转到之前请求的 url , 而现在希望登录成功后,实现其他的业务逻辑。比如累计积分、 * 通过Ajax 请求响应一个JSON数据,前端接收到响应的数据进行跳转。那可以使用自定义登录成功处理逻辑。 */@Componentpublic class CustomAuthenticationSuccessHandler implements AuthenticationSuccessH
2022-04-16 22:44:52
1817
原创 Spring Security 入门 动态认证用户信息
动态获取用户的认证信息@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } @Override protected void configure(Http
2022-04-16 22:40:54
397
原创 Spring Security 入门 自定义登录页面
自定义登录页面@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } @Override protected void configure(Authenti
2022-04-16 22:36:29
2255
原创 Spring Security 入门 基于内存存储认证信息
基于内存存储认证信息@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { /** * authentication [ɔːˌθentɪˈkeɪʃn] n. 身份验证; 认证;鉴定; */ @Override protected void configure(AuthenticationManagerBuilder auth) thro
2022-04-16 22:26:22
370
原创 Spring Security 入门 Http Form 表单身份认证方式
@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { /** * authenticated 英 [ɔːˈθentɪkeɪtɪd] v 认证,证明…是真实的;证实 * authorize 英 [ˈɔːθəraɪz] vt 批准;授权 */ @Override protected void configure(HttpSecurit
2022-04-16 22:19:11
167
原创 Spring Security 入门 Http Basic身份认证方式
在上一篇文章的基础上添加Spring Security配置@Configurationpublic class SpringSecurityConfig extends WebSecurityConfigurerAdapter { /** * authenticated 英 [ɔːˈθentɪkeɪtɪd] v 证明…是真实的;证实 * authorize 英 [ˈɔːθəraɪz] vt 批准;授权 */ @Override protected
2022-04-16 22:08:03
820
原创 Spring Security 入门Hello World
构建Spring Boot项目,添加以下依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId></dependency><dependency> <groupId>org.springframework.boot&l
2022-04-16 21:55:44
310
原创 Java 继承
继承的关键字是 extendspublic class Parent { public int i = 10; public void test(){ System.out.println("Parent test"); }}// 继承的关键字是 extendspublic class Son extends Parent {}public class Main { public static void main(String[] .
2022-01-03 22:16:29
199
原创 Error Code: 2013. Lost connection to MySQL server during query 30.000 sec
mysql workbench 6.3执行查询语句时出错:Error Code: 2013. Lost connection to MySQL server during query 30.000 sec解决办法:Edit->Preferences->SQL Editor 将下图中的30改大一点,重启workbench即可。...
2018-11-05 07:59:21
3285
1
原创 Authentication plugin 'caching_sha2_password' cannot be loaded
执行以下语句修改:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'hsbc123';
2018-10-28 21:32:16
213
原创 Windows下在后台运行jar包
新建一个bat文件,输入:@echo offstart balabala -jar xxx.jarexit执行这个批处理程序就可以在后台运行jar包了注意: balabala只是一个名字,可以随便定义。写个停止脚本 stop.bat 内容如下@echo offtaskkill /f /im balabala.exeexit ...
2018-10-21 10:27:18
19412
7
转载 tortoisegit 常见错误disconnected no supported authentication methods available(server sent: publickey)
1.安装好小乌龟git后,用小乌龟的pull 从github上拉取项目,遇到错误:disconnected no supported authentication methods available(server sent: publickey)或者是 git did not exit cleanly (exit code 1)亦或者是 git did not exit cleanly (e...
2018-10-18 23:11:15
338
原创 test
testString.format("%s %s %s 1/1 * ?", RandomRange.nextIncInc(0,59),RandomRange.nextIncInc(0,59),RandomRange.nextIncInc(8,22));
2018-10-10 15:17:46
143
原创 common application properties
https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
2018-08-28 07:44:00
274
原创 Spring Boot Maven Plugin
https://docs.spring.io/spring-boot/docs/current/maven-plugin/
2018-08-28 07:39:00
175
原创 Temp
电商项目 https://github.com/paascloud/paascloud-master https://gitee.com/javashop/Javashop-B2C https://github.com/shuzheng/zheng秒杀 https://my.oschina.net/xianggao/blog/524943?fromerr=N2wiQ72F#OSC_h1...
2018-08-12 08:26:13
458
转载 禁止向catalina.out写入日志文件
catalina.out与按天的catalina.xxxx.log重复,屏蔽catalina.out的方法修改tomcat/conf/logging.properties1catalina.org.apache.juli.FileHandler.level = FINE1catalina.org.apache.juli.FileHandler.directory = 日志目录1ca...
2018-08-12 08:18:37
4887
转载 数据库分库分表
http://www.cnblogs.com/405845829qq/p/7552736.html https://3gods.com/database/MySQL-Sharding-Approaches.html
2018-08-12 08:15:23
469
转载 Spring Boot整合Thymeleaf模板引擎
什么是ThymeleafThymeleaf是一款用于渲染XML、XHTML、HTML5内容的模板引擎。类似Velocity,FreeMaker模板引擎,它也可以轻易的与Spring MVC等Web框架进行集成作为Web应用的模板引擎。Thymeleaf也是Spring Boot首要支持的模板引擎,并且在最新的Spring Boot版本中已经不再支持Velocity了。 官网:htt...
2018-08-12 08:11:40
477
转载 IntelliJ IDEA 与Eclipse Link with Editor等价功能设置
Link With Editor是Eclipse内置功能中十分小巧,但却异常实用的一个功能。 这个开关按钮 (Toggle Button) 出现在各式导航器视图 ( 例如 Resource Explorer, Package Explorer 等 ) 的右上角。 点击时能根据当前打开的文件,相应地展开导航器视图,并迅速关联到该结点。IntelliJ IDEA中也有等价功能,即项目视图中...
2018-08-11 16:59:19
2870
转载 IntelliJ IDEA Java项目手动添加依赖 jar 包
1. 事先下载完成需要的javacsv.jar包。 java项目在没有导入该jar包之前,显示如下图所示2. 点击 File -> Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Project Structure界面左侧的“Modules”显示下图界面3. 在 “Dependencies” 标签界面下,点击右边绿色的 “...
2018-08-11 11:50:58
103507
8
转载 开发工程师必会的Linux命令
1.日志查询类按关键字不分页查询 grep “applyId” app.log //applyId为要查询的关键字,app.log为日志名按关键字从前往后分页查询 cat -n app.log | grep “applyId” | more 以上命令会分页输出,使用空格键翻页,使用回车键显示更多按关键字只显示最后M行查询 tail -n M app.log | grep “app...
2018-08-11 11:44:26
289
原创 Shell 基础
使用系统变量$SHELL来获取当前系统默认的Shell很多时候写bash的时候指定为 #! /bin/sh 实际上是一个指向 /bin/bash的符号链接,也就是说实际上解释shell脚本的是/bin/bash查看bash脚本版本变量定义在Shell中,变量名可以由字母、数字或者下划线组成,并且只能以字母或者下划线开头。在Shell中,变量名的大小写是敏感的。Sh...
2018-08-11 11:43:00
201
原创 虚拟机VMware_Workstation和Linux的安装
1.0 安装VMware 软件 VMware_Workstation_11.0.0_Lite.zip 百度网盘:http://pan.baidu.com/s/1dF70cQd 安装 VMware_Workstation_11.0.0_Lite.exe 如果查看网卡,新增了已下两块网卡表示VMware安装成功。 2.0 启动 VMware, 新建一台虚拟机...
2018-08-11 11:11:05
478
转载 Java中URLEncoder.encode与URLDecoder.decode处理url特殊参数的方法
最近在使用 url 的 queryString 传递参数时,因为参数的值(注意是参数的值被加密),被DES加密了,而加密得到的是 Base64的编码字符串。类似于:za4T8MHB/6mhmYgXB7IntyyOUL7Cl++0jv5rFxAIFVji8GDrcf+k8g==显然 这里面含有了 特殊字符: / + = 等等,如果直接通过url 来传递该参数:url = "xxx...
2018-08-06 07:02:10
12674
转载 MyBatis SQL 在控制台打印
mybatis 怎么打印执行的sql?查看了官方文档,跟踪了mybatis源码发现有两种方式:方法一、在mybatis配置的xml中&amp;lt;configuration&amp;gt;标签下添加&amp;lt;settings&amp;gt; &amp;lt;setting name=&quot;logImpl&quot; value=&quot;ST
2018-08-06 07:01:35
742
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人