随笔分类 -  java纯小白,绕行

上一页 1 2 3 4 5 6 7 8 9 下一页
廖雪峰Java10加密与安全-4加密算法-1对称加密算法
摘要:1.对称加密算法 加密和解密使用同一个密钥,例如WinRAR。 WinRAR在对文件进行打包的时候,可以设置一个密码,在解压的时候需要使用同样的密码才能正确的解压。 加密:encrypt(key,message) s 解密:decrypt(key,s) message |算法|密钥长度(决定加密的强 阅读全文
posted @ 2019-05-10 22:19 singleSpace 阅读(471) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-4BouncyCastle
摘要:1.BouncyCastle: 第三方提供的一组加密/哈希算法 提供JDK没有提供的算法 RipeMD160哈希算法 "官方网站" 2.如何使用第三方提供的算法 2.1 添加第三方jar至classpath "jar包下载地址" IDEA:project structure modules depe 阅读全文
posted @ 2019-05-10 18:38 singleSpace 阅读(522) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-3SHA-1算法
摘要:1.SHA 1算法 SHA 1算法也是一种哈希算法。 输出160 bits/20bytes 由美国国家安全局开发 ~~SHA 0~~/SHA 1/SHA 256/SHA 512 ~~SHA 0~~有问题,已经作废了 |算法|输出长度:bits|输出长度:bytes | | | |SHA 1|160 阅读全文
posted @ 2019-05-08 22:09 singleSpace 阅读(556) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-3摘要算法-1MD5
摘要:1.摘要算法 1.1 摘要算法(哈希算法/Hash/数字指纹): 计算任意长度数据的摘要(固定长度) 相同的输入数据始终得到相同的输出 不同的输入尽量得到不同的输出 1.2 摘要算法目的: 验证数据和原始数据是否一致,被篡改 1.3.java的Object.hashCode()方法就是一个摘要算法: 阅读全文
posted @ 2019-05-07 22:37 singleSpace 阅读(278) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-2加密算法-2Base64编码
摘要:1.Base64编码 Base64一种把二进制数据用文本表示的编码算法。例如 中有3个字节{\xe4, \xb8, \xad},一共是24位,每6位分组,变成4个字节{39, 0b, 22, 2d},最终结果位5Lit。 如果长度不是3的整数倍: 末尾补0x00或0x00 0x00 编码后加=表示补 阅读全文
posted @ 2019-05-07 21:13 singleSpace 阅读(306) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-2加密算法-1URL编码
摘要:1.URL编码 URL编码是浏览器发送数据给服务器时使用的编码。 如通过百度搜索美女: 编码前:https://www.baidu.com/s?wd=美女 编码后:https://www.baidu.com/s?wd=%E7%BE%8E%E5%A5%B3 URL编码规则: A Z, a z, 0 9 阅读全文
posted @ 2019-05-07 18:55 singleSpace 阅读(257) 评论(0) 推荐(0)
廖雪峰Java10加密与安全-1数据安全-1加密与安全概念
摘要:数据安全 防窃听 防篡改 防伪造 古代加密方式: 移位密码:HELLO = IFMMP 替代密码:HELLO= p12,5,3 现代加密方式: 建立在严格的数学理论基础上 密码学逐渐发展成一门科学 总结: 设计一个安全的加密算法非常困难 验证一个加密算法是否安全更加困难 当前被认为安全的加密算法仅仅 阅读全文
posted @ 2019-05-07 09:55 singleSpace 阅读(227) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-2正则表达式进阶-6搜索和替换
摘要:1.使用正则表达式分割字符串: 2.使用正则表达式查找字符串 3.使用正则表达式替换字符串 4.总结 使用正则表达式可以: 分割字符串:String .split() 搜索字串:Matcher.find() 替换字符串:String.replaceAll() 阅读全文
posted @ 2019-05-06 22:41 singleSpace 阅读(635) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-2正则表达式进阶-5非贪婪匹配
摘要:1.贪婪匹配 问题:给定一个字符串表示的数字,判断该数字末尾0的个数? "123000": 3个0 "10100": 2个0 "1001": 0个0 先使用"^(\d+)(0 )$"匹配这三个字符串 结果:0并未匹配到,group1将整个字符串完全匹配 原因:正则表达式默认使用贪婪匹配,尽可能多的向 阅读全文
posted @ 2019-05-06 21:39 singleSpace 阅读(1117) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-2正则表达式进阶-3分组匹配
摘要:1.使用括号可以提取字符串 不加括号匹配电话号码 匹配成功后,如何提取想要的字符串? 使用(...)可以分组:"^(\\d{3,4})\\ (\\d{6,8})$" 2.String.matcher vs Pattern.matcher 前面用到的正则表达式是使用String.matches(),而 阅读全文
posted @ 2019-04-23 08:49 singleSpace 阅读(1433) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-1正则表达式入门-2正则表达式匹配规则
摘要:正则表达式的匹配规则: 从左到右按规则匹配 |匹配规则及示例|可以匹配 |不能匹配 | | | | | |"abc"| "abc"| 不能匹配:"ab", "Abc", "abcd" |特殊字符需要转义,如"a\&c",注意Java的字符串需要再加一个转义符| "a&c" | "ab", "abc" 阅读全文
posted @ 2019-04-22 05:48 singleSpace 阅读(604) 评论(0) 推荐(0)
廖雪峰Java9正则表达式-1正则表达式入门-1正则表达式简介
摘要:1.使用代码来判断字符串 场景: 判断字符串是否是有效的电话号码:"010 12345678", "123ABC456" 判断字符串是否是有效的电子邮箱地址:"test@example.com", "test example" 判断字符串是否是有效的时间:"12:34", "99:99" 通过程序判 阅读全文
posted @ 2019-04-18 11:08 singleSpace 阅读(349) 评论(0) 推荐(0)
廖雪峰Java8JUnit单元测试-2使用JUnit-4超时测试
摘要:1.超时测试 可以为JUnit的单个测试设置超时: 超时设置1秒:@Test(timeout=1000),单位为毫秒 2.示例 Leibniz定理:PI/4= 1 1/3 + 1/5 1/7 +1/9...即 PI = 4 4/3 + 4/5 4/7... Calculator.java Calcu 阅读全文
posted @ 2019-04-17 15:09 singleSpace 阅读(493) 评论(0) 推荐(0)
廖雪峰Java8JUnit单元测试-2使用JUnit-3参数化测试
摘要:参数化测试: 可以把测试数据组织起来 用不同的测试数据调用相同的测试方法 阅读全文
posted @ 2019-04-17 12:51 singleSpace 阅读(392) 评论(0) 推荐(0)
廖雪峰Java8JUnit单元测试-2使用JUnit-2异常测试
摘要:1.异常测试 对可能抛出的异常进行测试: 异常本身是方法签名的一部分: public static int parseInt(String s) throws NumberFormatException 测试错误的输入是否导致特定的异常: Integer.parseInt(null) Integer 阅读全文
posted @ 2019-04-17 10:21 singleSpace 阅读(644) 评论(0) 推荐(0)
廖雪峰Java8JUnit单元测试-2使用JUnit-1使用Before和After
摘要:1. @Before和@After 同一个单元测试内的多个测试方法: 测试前都需要初始化某些对象 测试后可能需要清理资源fileInputStream.close() JUnit可以使用@Before和@After: 在@Before方法中初始化测试资源 在@After方法中释放测试资源 @Befo 阅读全文
posted @ 2019-04-16 22:29 singleSpace 阅读(2526) 评论(0) 推荐(0)
廖雪峰Java8JUnit单元测试-1JUnit简介-1JUnit测试
摘要:测试驱动开发(Test Driver Development) 1.使用main()方法测试的缺点: 只能有1个main()方法,不能把测试代码分离 没有打印出测试结果和期望结果,例如expected:3628800,but actual:362880 因此,需要一种测试框架,帮助我们编写测试 3. 阅读全文
posted @ 2019-04-16 09:36 singleSpace 阅读(803) 评论(0) 推荐(0)
廖雪峰Java7处理日期和时间-4最佳实践-最佳实践
摘要:jdk提供了2套新旧的API来处理日期和时间。 java.util Date Calendar java.time(JDK =1.8) Localdate LocalTime LocalDateTime ZonedDateTime Instant java.sql时间 java.util.Date表 阅读全文
posted @ 2019-04-12 22:05 singleSpace 阅读(658) 评论(0) 推荐(0)
廖雪峰Java7处理日期和时间-3java.time的API-2ZonedDateTime
摘要:ZonedDatetime = LocalDateTime + ZoneId ZonedDateTime:带时区的日期和时间 ZoneId:新的API定义的时区对象(取代几句的java.util.TimeZone) Instant:时刻对象(epoch seconds) 1.ZonedDateTim 阅读全文
posted @ 2019-04-11 20:55 singleSpace 阅读(857) 评论(0) 推荐(0)
廖雪峰Java7处理日期和时间-3java.time的API-1LocalDateTime
摘要:1.java.time提供了新的日期和时间API: LocalDate/LocalTime/LocalDateTime ZoneDateTime/ZoneId Instant Formatter 新API特点: 严格区分日期、时间 所有的类均为不变类(类似String) 修复了Month范围1-12 阅读全文
posted @ 2019-04-11 19:10 singleSpace 阅读(347) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 下一页