- 博客(135)
- 资源 (1)
- 收藏
- 关注
原创 异步读写通道-Channel
Java NIO: Channels and Buffers(通道和缓冲区)标准IO基于字节字符流,NIO基于Channel(通道)和缓冲区(Buffer),数据读操作是从通道读取到缓冲区,写操作是缓冲区写道通道。Java NIO: Non-blocking IO(非阻塞IO)Java NIO可以让你非阻塞的使用IO,例如:当线程从通道读取数据到缓冲区时,线程还是可以进行其他事情...
2020-01-02 14:45:22
1282
翻译 [ MySql ] InnoDB存储结构
InnoDB将数据划分为若干个页,以页作为磁盘和内存之间交互的基本单位,InnoDB中页的大小一般为16KB。也就是在一般情况下,一次最少从磁盘中读取16KB的内容到内存中,一次最少把内存中的16KB内容刷新到磁盘中。 MySql关系型数据库将记录以行格式的方式存储在磁盘上可以在创建表或是修改表时改变当前表的行格式CREATE TABLE(...) ROW_FORMAT...
2019-07-22 17:29:09
498
1
原创 单元测试
@RunWith(SpringJUnit4ClassRunner.class):标识为JUnit的运行环境; @SpringBootTest:获取启动类、加载配置,确定装载Spring Boot; @Test:声明需要测试的方法;//之前版本为test开头的方法 @BeforeClass:针对所有测试,只执行一次,且必须为static void; @AfterClass:针对所有测试,只执...
2019-05-20 17:29:30
203
原创 入门lambda(四) Streams map() example
stream().mapToDouble()转换为double的Streamstream().map()可以转换任意类型的Streampackage stream.map;import java.math.BigDecimal;import java.util.Arrays;import java.util.List;import java.util.stream.Col...
2019-04-10 16:07:57
245
原创 入门lambda(三) Streams filter example
Stream和Collection结构化的数据不一样,Stream是一系列的元素,就像是生产线上的罐头一样,一串串的出来。管道指的是一系列的聚合操作。管道又分3个部分管道源:在下面例子里,源是一个List中间操作: 每个中间操作,又会返回一个Stream,比如.filter()又返回一个Stream, 中间操作是“懒”操作,并不会真正进行遍历。结束操作:当这个操作执行后,流就被使用“光...
2019-04-10 15:10:31
193
原创 入门lambda(二) foreach
https://blog.csdn.net/qq_38930240/article/details/88994338https://mp.csdn.net/postedit/84840279总结的遍历需要注意的package foreach;import java.util.*;/** * 使用lambda 进行遍历,List的遍历前面试了,换成Map 玩玩 */pub...
2019-04-10 13:42:19
1266
原创 入门lambda(一) Comparator example
今天开始学习Java 8 的 Lambda 表达式,写比较器去操作List 的排序1.不使用Lambda 进行排序package sort;import java.math.BigDecimal;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import ...
2019-04-10 10:54:15
170
原创 postman 发送json 请求
选择“POST”方式,在“headers”添加key:Content-Type , value:application/json点击"body",''raw''并设定为JSON
2019-04-04 10:28:35
184
原创 char 和String
String str = "程新宇";for(int i =o;i<str.length();i++){ char c = str.charAt(i); System.out.println(Character.toString(c));}1. String s = String.valueOf('c'); //效率最高的方法2. String s = ...
2019-04-03 11:17:13
159
原创 JPA: 投影(Projection)的用法
有一个不方便的地方,@Query注解,如果查询直接是Select cfrom User c,这时候,查询的返回对象就是User这个完整的对象,包含所有字段,对于比较庞大的domain类,这个查询时就比较要命,并不是所有的字段都能用到,比较头疼。另外,如果定义select c.firstName as firstName,c.lastName as lastName from Customer c...
2019-03-13 16:04:10
2215
1
原创 mysql 服务
Windows删除服务: sc delete mysql1.mysqld :代表着MySQL服务器程序,运行这个可执行文件就可以直接启动一个服务器进程。但这个命令不常用以服务的方式运行服务器程序首先看看什么是个Windows服务?如果无论是谁正在使用这台计算机,我们都需要长时间的运行某个程序,而且需要在计算机启动的时候便启动它,一般我们都会把它注册为一个Wi...
2019-03-12 10:57:42
1702
原创 Chrome 调试 一 认识面板
了解面板元素面板 控制台面板 源代码面板 网络面板 性能面板 内存面板 应用面板 安全面板1. 元素面板使用元素面板可以自由的操作DOM和CSS来迭代布局和设计页面。检查和调整页面 编辑样式 编辑DOM2.控制台面板在开发期间,可以使用控制台面板记录诊断信息,或者使用它作为shell在页面上与JavaScript交互。使用控制台面板 命...
2019-03-11 16:44:47
235
原创 重写toString 减少+" "产生的String 对象
参考http://blog.sina.com.cn/s/blog_7ffb8dd50101aoxd.html与反射,自己定义对比https://blog.csdn.net/Darrensty/article/details/78395221场景:系统中一般都要打印日志的,因为所有实体的toString()方法 都用的是简单的"+",因为每"+" 一个就会 new 一个 String 对...
2019-03-05 17:33:56
153
原创 前端控制重复提交
#问题再现: 在写看点账号和关键词监控的微博文章部分时,有一个上拉加载的功能,基本实现后在测试时发现:每当下拉的过快或者做重复下拉的操作,ajax就会请求不到数据并返回canceled的状态码。#原因探究 经过排查,ajax请求被canceled是因为在ajax请求资源的时间内,后续的操作继续触发了ajax请求资源,因此请求操作被取消,所以解决问题关键就是如何防止重复发送ajax请求。#解...
2019-02-27 15:42:59
832
原创 Cookie Version0 & Version1
response.setCookie() 在响应头添加了Set-Cookie头字段,对于Cookie版本Version0还有一种头字段,Set-Cookie2,Version1(已弃用)Version0 响应头 Version1 响应头 Set-Cookie2属性值设置在Set-Cookie1中 Set-Cookie: ...
2019-02-26 13:54:07
1166
原创 shiro注解
1.要使用先开启Aop/** * * @描述:开启Shiro的注解(如@RequiresRoles,@RequiresPermissions),需借助SpringAOP扫描使用Shiro注解的类,并在必要时进行安全逻辑验证 * 配置以下两个bean(DefaultAdvisorAutoProxyCreator和AuthorizationAttributeSourceAdvisor...
2019-02-12 15:26:48
144
原创 Spring 事务回滚 及 事务注解@Transactionalv
1. 引入依赖(数据库相关)<!--依赖管理 --> <dependencies> <dependency> <!--添加Web依赖 --> <groupId>org.springframework.boot</groupId> <artifa...
2019-02-02 13:32:08
3622
原创 Pattern& Matcher
public static final Pattern CODE = Pattern.complie("[0-9]{6}$");//6位数字正则验证String code = "123456";boolean result1= Pattern.matches("[0-9]{6}$",code); boolean result2= CODE.matcher(smsCode)....
2019-02-01 15:49:37
110
原创 静态资源和拦截器处理
1.默认资源映射Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各种属性。建议大家使用Spring Boot的默认配置方式,提供的静态资源映射如下:classpath:/META-INF/resources classpath:/resources classpath:/static classpath:/pu...
2019-02-01 14:06:25
1525
原创 springboot禁用命令行更改application.properties属性
package com.cxy.manage;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.context.annotation.Configur...
2019-02-01 11:30:37
528
原创 shiro会话设置
一般选用DefaultWebSessionManagerDefaultWebSessionManager : 用 于 Web 环境的实 现 , 可 以 替 代ServletContainerSessionManager,自己维护着会话,直接废弃了 Servlet 容器的会话管理。 <!-- 会话ID生成器 --> <bean id="sessionIdGene...
2019-01-29 14:53:27
357
原创 shiro 权限控制方式jsp标签
1.引入标签库<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.util.*"%><!DOCTYPE html><%@ taglib prefix="shiro" uri=&qu
2019-01-29 13:29:11
1014
原创 shiro 自定义拦截器
1.拓展 OncePerRequestFilter 用于防止多次执行 Filter 的;也就是说一次请求只会走一次拦截器链;另外提供 enabled 属性,表示是否开启该拦截器实例,默认 enabled=true 表示开启,如果不想让某个拦截器工作,可以设置为 false 即可。保证一次请求只调用一次 doFilterInternal,即如内部的 forward 不会再多执行一次 doFi...
2019-01-29 11:04:26
4551
原创 Realm 域
即安全数据源一般继承 AuthorizingRealm(授权)即可;其继承了 AuthenticatingRealm(即身份验证),而且也间接继承了 CachingRealm(带有缓存实现)。权限系统实体类定义用户实体包括:编号(id)、用户名(username)、密码(password)、盐(salt)、是否锁定(locked);是否锁定用于封禁用户使用,其实最好使用 Enum...
2019-01-28 17:44:41
616
原创 Enum枚举
规范用法一:常量在JDK1.5 之前,我们定义常量都是: public static final.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。 定义枚举类public enum ColorEnum { RED, GREEN, BLANK, YELLOW }使用时ColorEnum color = Co...
2019-01-28 14:12:37
107
原创 shiro进行身份验证的流程
1.Subject.login(token) ,委托SecurityManager,所有使用前要用SecurityUtils.setSecurityManager(),设置安全管理者2.SecurityManager委托给Authenticator进行身份验证3、Authenticator 才是真正的身份验证者,Shiro API 中核心的身份认证入口点,此处可以自定义插入自己的实...
2019-01-28 11:01:44
615
原创 正确的使用变量
往往没有人在意如何使用变量,大部分人直接使用类变量和实例变量,减少了局部变量的使用,这样是错误的。但一些规范,比如(int i=0;i<10;i++){...} 已经告诉我们如何使用变量了,你总不会写成 static int i;public void test{for(i=0;i<10;i++))} 或者public void test{int i...
2019-01-27 23:13:08
195
原创 局部变量
•可分为三种:–形参,整个方法有效,很容易理解–方法局部变量 ,方法体内定义的,作用域从定义的地方到方法的结束,代码块局部变量,代码块内定义的,作用域从定义的地方到代码块的结束 不同于成员变量,除了形参,其他都需要显示初始化。虽然ide 会提醒我们,但是应该知道.同名问题,1.一个类中,不能定义两个同名的成员变量,即使一个是static变量,一个不是.2.一个方法内...
2019-01-27 23:03:03
103
原创 成员变量
1.成员变量指类里面定义的变量,分为实例变量和类变量(以static 修饰).当然不能重名2.对于类属性无论通过类还是对象来访问都是访问同一个对象,只要一个对象改变了类属性,那么其他对象对应的类属性也改变了.但是应该避免这种情况,尽量使用类.类变量来访问3.成员变量不用显式初始化,只要定义了一个类属性或实例属性,系统默认进行初始化。...
2019-01-27 22:48:02
389
原创 类型后面三个点(String...)和数组(String[])的区别
比如void test(String...) ,test("a","b")或者test(new String[]{"a","b"}),而如果形参是数组,void test(String[] books),调用时只能test(new String[]{"a","b"}) ,很麻烦一个方法最多有一个个数可变的形参,调用的时候,传入叫可变长度参数列表,其语法就是类型后跟…,表示此处接受的参数为...
2019-01-27 21:47:50
595
原创 md5加密,盐
import java.security.MessageDigest;public static String MD5(String key) { char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'...
2019-01-23 16:43:58
295
原创 shiro(三)数据库
RBAC 概念RBAC 是当下权限系统的设计基础,同时有两种解释:一: Role-Based Access Control,基于角色的访问控制即,你要能够删除产品,那么当前用户就必须拥有产品经理这个角色二:Resource-Based Access Control,基于资源的访问控制即,你要能够删除产品,那么当前用户就必须拥有删除产品这样的权限 用户,角色,权限, 以及 2 张中间...
2019-01-23 16:01:29
309
1
原创 shiro(一)框架结构
Subject:主体,代表了当前“用户”,这个用户不一定是一个具体的人,与当前应用交互的任何东西都是 Subject,如网络爬虫,机器人等;即一个抽象概念;所有 Subject 都绑定到 SecurityManager,与 Subject 的所有交互都会委托给 SecurityManager;可以把 Subject 认为是一个门面;SecurityManager 才是实际的执行者; Sec...
2019-01-23 11:11:52
209
原创 shiro(二)身份验证 基于ini文件
简单的身份验证 principals:身份,即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。一个主体可以有多个 principals,但只有一个 Primary principals,一般是用户名/密码/手机号。 credentials:证明/凭证,即只有主体知道的安全值,如密码/数字证书等。 最常见的 principals 和 credentials 组合就是用户名/密...
2019-01-23 11:02:50
166
转载 Quzrtz的Calendar 例子
概述在实际任务调度中,我们不可能一成不变地按照某个周期性的调度规则运行任务,必须考虑到实现生活中日历上特定日期。由于节日是每年重复的,所以使用org.quartz.Calendar的AnnualCalendar实现类注意事项Quartz 的 Calendar 对象与 Java API 的 java.util.Calendar,它们是应用于不同目的不一样的组件。Java 的 Cale...
2019-01-18 11:27:18
351
原创 iText的PDF操作
<dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.0.6</version></dependency>Document:这是i
2019-01-16 14:58:45
1115
原创 初识restful风格
在做Web开发的过程中,method常用的值是get和post. 可事实上,method值还可以是put和delete等等其他值。既然method值如此丰富,那么就可以考虑使用同一个url,但是约定不同的method来实施不同的业务,这就是Restful的基本考虑。CRUD是最常见的操作,在使用Restful 风格之前,通常的增加做法是这样的:/addCategory?name=xxx...
2019-01-14 16:08:20
168
原创 Stringutils.join()
private static final String[] str = {"1","2","3","4"}; String str2 = StringUtils.join(str, "|"); System.out.println(str2);commons.lang3.StringUtilsStringUtils.join(Object array[],String se...
2019-01-10 10:31:16
266
原创 jsp c:forEach 标签中varStatus 的作用
<tr> <th > 序号 </th></tr><c:forEach items="${carslist}" var="car" varStatus="status"><tr>
2019-01-08 09:56:16
691
原创 JDBCTYPE 对应Java类型
JDBC Type —- Java Type 1. CHAR —- String 2.VARCHAR —- String 3.LONGVARCHAR —- String 4.NUMERIC —- java.math.BigDecimal 5.DECIMAL —- java.math.BigDecimal 6.BIT —- boolean 7.BOOLEAN —- boolean 8...
2018-12-27 10:03:14
1827
2
java访问hbase所需的jar包
2018-06-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人