- 博客(45)
- 收藏
- 关注
原创 HTTPS
客户端发起HTTPS请求用户在浏览器里输入一个https网址,然后连接到服务器的443端口服务端的配置采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面。这套证书其实就是一对公钥和私钥传送服务器的证书给客户端证书里其实就是公钥,并且还包含了很多信息,如证书的颁发机构,过期时间等等客户端解析验证服务器证书。
2023-12-20 23:41:02
1268
原创 ArrayList数组互转
一、ArrayList转换为数组ArrayList提供public T[] toArray(T[] a)方法返回一个按照正确的顺序包含此列表中所有元素的数组,返回数组的运行时类型就是指定数组的运行时类型。import java.util.ArrayList;import java.util.List;public class Test { public static voi...
2020-04-24 00:21:41
874
原创 Leetcode题解
无重复字符的最长子串 003https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:...
2020-04-23 23:52:23
275
原创 Java常用代码模板
import java.math.BigDecimal;import java.math.BigInteger;import java.util.*;public class Template { public static void main(String args[]) { System.out.println("test"); // 数字转...
2020-04-23 01:11:17
1492
原创 leetcode 253 最少会议室问题
Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],...] (si < ei), find the minimum number of conference rooms required.Given [[0, 30],[5, 10],[15, 20]]...
2020-04-22 00:52:33
1196
原创 常用算法定义
1. stable matching: 稳定匹配(给出N男N女的偏好列表)如果匹配后剩余的元素间不存在不稳定对优于当前匹配结果,那么是稳定匹配;如果存在不稳定对,那么是不稳定匹配1962年Gale-shapley算法-追求拒绝算法,找到稳定匹配:a. 初始化S -匹配表为空b. while(存在某个m没有匹配,且没有追求过所有女人的时候)(循环)c. 找到m还没有追求过的偏好最...
2020-04-18 21:47:09
182
原创 双系统在grub命令行模式进入单用户模式
系统:windows 7(先安装) + Ubuntu 18.04(后安装),通过grub引导ubuntu启动背景:由于当时在安装ubuntu的时候只预留了60G的磁盘空间,导致后来空间不够用,所以尝试把windows的一个磁盘分区格式化成ext4格式后挂载给/home目录下的一个文件夹,扩展ubuntu的空间(参考https://mp.csdn.net/console/editor/html/...
2020-03-13 23:35:50
1369
原创 双系统-linux扩容简单方案
1. 在windows下腾出一个单独的磁盘分区,并格式化为ntfs2. 进入linux(ubuntu为例)查看磁盘的分区 sudo fdisk -lwindows系统装在固态硬盘/dev/sda1 * 2048 171978696 171976649 82G 7 HPFS/NTFS/exFAT/dev/sda2 171978697 23444...
2020-03-11 23:28:07
1650
转载 ubuntu 18.04使用国内镜像源
1.备份备份/etc/apt/sources.list文件 1 mv/etc/apt/sources.list/etc/apt/sourses.list.backup 2.新建新建/etc/apt/sources.list文件并添加以下内容在root管理员下 1 2 3 4 /...
2020-03-10 23:21:27
1351
原创 Ubuntu安装软件时无法获得锁
比如:sudo apt install openjdk-8-jdkE: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?1.ps -aux|grep aptroot 1763 0.0 0....
2020-03-10 22:59:45
2995
原创 leetcode(java)刷题小结--持续更新
1. 注意编码风格,只使用空格键,不使用TAB2. {写在右边,与前面空一格,不另起一行3. 不使用全局变量和类的静态变量(会导致某些测试用例不通过),只使用要补充函数的局部变量4. 可以将部分功能放在另一个函数中,供主函数调用,可以减少单个函数的行数(不超过50行),看起来更简洁5. 注意圈复杂度,尽量小于5;不要让代码产生运行时异常6. 尽量不要使用暴力算法,会大大增加时间...
2020-03-10 22:18:16
527
原创 桌面C/S程序开发
Winform: (微软)优点:简单,高效缺点:通过CSS样式表美化UI自定义控件代价很大;只能在windows上运行WPF:(微软)XML+C#+CSS(如果程序只运行在windows,推荐指数5)优点:设计灵活,VS所见即所得的拖拽开发方式;前后端分离; C#语法强大;缺点:只能在Windows上运行;开发门槛较高; 使用XAML编写样式表,通用性还是不如使用HTM...
2019-12-08 19:57:30
810
原创 Linux ELF可重定向文件格式解析
可重定向文件生成文件的格式与操作系统和编译器密切相关,linux的可执行文件是基于COFF的ELF格式,可重定向文件(也叫做目标文件.o)与可执行文件格式很接近,只是没有经过链接调整符号和地址。源代码:/** SimpleSection.c** Linux:* gcc -c SimpleSection.c** Windows:* cl S...
2019-09-15 15:37:08
922
原创 C程序的编译链接过程
开发环境:Ubuntu 18.04.3 , 内核版本4.15.0-58-generic, 硬件架构intel x86_64, gcc版本7.4.0, GNU ld版本2.30liyumin@liyumin-B250M-D3H:~$ lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescripti...
2019-09-14 16:37:23
241
原创 操作系统软件层次结构及硬件资源管理能力设计
先阅读计算机硬件结构历史简介:https://blog.csdn.net/starcraft501/article/details/100806378操作系统层次结构操作系统软件可以分为两部分:1. 平台型,包括内核,驱动,以及系统工具 2. 开发环境型,包括编译器,汇编器,链接器和运行库计算机软件,包括系统软件,通常按层次结构设计,这种方式可以通过新加层来解决任何问题。(如...
2019-09-14 10:22:11
974
原创 计算机硬件结构历史简介
CPU三大关键硬件:CPU, 内存,IO第一个阶段:CPU与内存的频率一致,直接连在同一个总线上;I/O设备比如显示设备,键盘,软盘,磁盘速度相对较低,为了让I/O设备与总线的速度匹配,每个设备有一个I/O控制器。第二阶段:CPU频率提示,内存跟不上,所以让总线速率与内存保存一致,CPU采用倍频的方式与总线通信。第三阶段:图形显示芯片需要与CPU和内存之间大量交换...
2019-09-13 17:28:51
360
原创 linux驱动开发第二篇:驱动模块开发所必需的基础知识(续)
https://blog.csdn.net/starcraft501/article/details/100060039linux驱动开发第一篇:helloworld驱动模块开发上一篇展示了如何写helloworld源代码,Makefile,编译,加载,卸载模块的全过程,也涉及了其中的过程解释。本篇对一些后续开发驱动所必需的基础知识做进一步讲解。如下:驱动模块和内核的版本依赖...
2019-08-31 01:21:33
171
原创 linux驱动开发第一篇:helloworld驱动模块开发
前提:阅读linux驱动开发准备篇(1)和(2),并掌握整个过程https://blog.csdn.net/starcraft501/article/details/99782733https://blog.csdn.net/starcraft501/article/details/100026809驱动模块开发与应用程序开发的对比:1. 绝大多数中小型应用程序完成从开始到结...
2019-08-28 01:02:17
234
原创 linux驱动开发准备篇(2):修改内核代码,编译,安装demo
以修改ethernet驱动为列1. lsmod查看加载的模块, 找到ethernet驱动e1000e1000e 249856 02. 根据驱动名称,在源代码仓库中查找生成驱动的Makefilegit grep e1000e -- '*Makefile'drivers/net/ethernet/intel/Makefile:obj-$(CO...
2019-08-28 01:01:11
587
原创 linux驱动开发准备篇(1):linux编译安装新内核并与旧内核切换
环境:在ubuntu18.04 LTS版本上开发和测试下载内核代码仓库:mkdir -p git/kernels; cd git/kernelsgit clone -b staging-testing git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.gitcd staging配置~/.gitc...
2019-08-28 01:00:24
421
原创 Ubuntu内部错误及解决方案
起源前两天升级了Ubuntu从16.04 LTS到18.04 LTS, 顺便把内核从4.15.0升级到了5.3.0(源码编译的),今天开机发现了Ubuntu报内部错误:大意是fcitx-dbus-watcher这个程序在运行时缓存溢出了原因报这个错是因为Ubuntu桌面版预装了apport软件包,该软件包会自动收集crash信息,crash文件存放在/var/crash,...
2019-08-21 00:55:07
10059
原创 Linux VIM常用配置
touch ~/.vimrcfiletype plugin indent onsyntax onset titleset tabstop=8set softtabstop=8set shiftwidth=8set noexpandtab将vim设置为默认编辑器,选择vim.basic:sudo update-alternatives --config editor...
2019-08-20 00:28:45
116
原创 mutt + msmtp 在ubuntu使用163邮箱收发邮件
前提:登录163邮箱,在设置中获取客户端授权码1. 安装软件sudo apt-get install msmtpsudo apt-get install mutt2. 配置msmtptouch ~/.msmtplogvi ~/.msmtprcaccount defaulthost smtp.163.comuser xxxfrom xxx@163.compa...
2019-08-20 00:14:21
1238
原创 SpringBoot项目支持JSP模板
spring-boot-starter-web包含了spring-boot-starter-tomcat,这个包里有tomcat-embed-core、tomcat-embed-el,前者包含servlet-api和内置servlet容器,后者为el表达式包。如果不指定scope为provided,打包时会加进去,与servlet容器中自带的jar包冲突,程序会出错。 在POM.xm...
2018-09-24 18:22:05
252
原创 通过nginx访问tomcat中web应用的jsp网页
简介:JSP是一种动态网页技术标准。使用的方式是在HTML文件中插入程序段和JSP标记,而形成JSP文件。使用JSP开发WEB应用可以跨平台开发。但jsp需要javaEE服务器,在Nginx下是无法运行jsp文件的。本文通过nginx访问tomcat部署web应用的jsp网页 Nginx服务器端口:80 tomcat端口号:8080 1. 新建nginx配置文件jsp.co...
2018-09-24 17:10:27
3889
原创 Windows安装nginx
1. 下载 http://nginx.org/en/docs/windows.html2. 解压3. 运行 E:\nginx-1.15.3>start nginx4. 查看进程tasklist /fi "imagename eq nginx.exe"5. 测试本机IP6. 停止nginxnginx -s stop 7. 配置文件E:\nginx...
2018-09-24 14:40:40
174
原创 Windows安装Redis
1. 下载 https://github.com/MicrosoftArchive/redis/releases2. 解压3. 启动server4. 客户端测试
2018-09-24 14:19:21
107
原创 MySQL数据库操作小结
命令行模式:1. 创建数据库create database xxx;2. 导入sql文件use database xxx;source yyy.sql
2018-09-24 09:21:27
103
原创 spring-boot-starter-thymeleaf的作用
POM.xml//使用模板thymeleaf<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-thymeleaf --><dependency> <groupId>org.springframework.boot</g...
2018-09-24 00:17:29
9751
原创 SpringBoot项目,使用MockMvc做controller类的JUNIT单元测试
package hello;import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;import st...
2018-09-23 14:40:54
2165
原创 SpringBoot项目打WAR包,在外部TOMCAT中运行
默认打JAR包,如果要打WAR包,按以下步骤:1. 改写Application入口类@SpringBootApplicationpublic class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(Sprin...
2018-09-23 14:21:16
148
原创 Spring的@RequestParam
1,用来将http请求里面的查询参数(?后的参数,比如?name=87)绑定到方法的参数public Greeting greeting(@RequestParam(value="name", defaultValue="World") String name)2. 可以设置该参数的默认值defaultValuepublic Greeting greeting(@RequestPara...
2018-09-23 13:38:55
207
原创 SpringBoot项目,通过Maven命令打JAR包/运行
在Pom.xml同级目录下,运行命令,mvn clean package生成target目录及Jar包运行JAR包java -jar target/gs-rest-service-0.1.0.jar或者一条命令运行但不打包,mvn spring-boot:run SpringBoot项目默认使用内置的tomcat服务器来运行web服务,注意内置的tomc...
2018-09-23 12:59:56
4951
原创 简介Spring4.0 @RestController
实现目标:前端发出HTTP请求(http://xxx.com/yyy, 默认端口80),请求到达servlet容器,找到对应的controller处理对象,该controller提供restful web service, 返回JSON字符串给前端,由前端将JSON字符串填充到HTML中,实现前后端编程分离。 传统的SpringMVC编程:1. 根据HTTP请求路径找到处理的con...
2018-09-23 12:44:25
201
原创 Maven编译源代码指定JDK版本
<build> <plugins> <!-- 指定jdk,防止update project --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-co
2018-09-16 18:51:10
716
原创 模板引擎ejs
模板引擎(Template Engine)是一个将页面模板和要显示的数据结合起来生成 HTML 页面的工具。如果说上面讲到的 express 中的路由控制方法相当于 MVC 中的控制器的话,那模板引擎就相当于 MVC 中的视图。模板引擎的功能是将页面模板和要显示的数据结合起来生成 HTML 页面。它既可以运 行在服务器端又可以运行在客户端,大多数时候它都在服务器端直接被解析为 HTML,解...
2018-09-16 18:51:02
244
微软常用运行时库解决库缺失问题vcruntime140_1.dll
2022-10-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人