自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (1)
  • 收藏
  • 关注

原创 简述逃逸分析

逃逸的条件对象被赋值给堆中对象的字段和类的静态变量对象被传进了不确定的代码中去运行示例代码public class EscapeTest { public static Object globalVariableObject; public Object instanceObject; public void globalVariableEscape(){ globalVariableObject = new Object(); //静态变量,外部

2022-02-10 16:21:04 1869

原创 Nginx配置双向认证以及证书文件的制作流程

Nginx配置双向认证以及证书文件的制作流程ssl协议ssl协议在传输过程中使用了对称加密和非对称加密的方式对称加密使用的是相同的秘钥进行加密,有加密速度快的特点非对称加密使用的则是秘钥对(公钥和私钥)的方式进行加密,相对对称加密的单秘钥拥有更加安全的特点,但是缺点就是加密速度慢证书格式之间的问题CRT:crt意为certificate的简略写法,也就是证书的意思KEY:key格式的文件为秘钥,也可以有PEM和DER格式的,都为秘钥文件CSR:csr文件为证书

2021-09-09 10:10:07 1872 2

原创 JVM之详解类加载的过程

​ 首先我们都知道,当我们编写完一个java类的时候,如果想要执行这个java类,首先需要通过javac命令将它便以为class的二进制文件,然后再通过java命令执行得到结果,那么当jvm将class文件加载到内存的这段期间都执行了哪些步骤呢,下面我就详细的介绍一下1.加载​ 这个阶段也就是类加载的第一个步骤,这里会通过类的全限定名来获得类的二进制流文件,然后会按照方法区中的数据格式将期存储...

2019-01-13 17:29:17 422

原创 常见的垃圾回收算法

​ 今天我总结一下一些常见的垃圾回收算法的优缺点和使用场景相关的问题,这里我是参考了《深入理解jvm虚拟机》以及一些网上的文章进行的总结。1.垃圾回收的概述​ 我们都知道jvm是具有垃圾回收机制的,与c/c++不同,java程序员不需要在写程序的时候考虑垃圾回收的问题,只需要专注代码逻辑即可,一定程度上减轻了程序员的负担。在jvm中,垃圾回收主要发生的地方是在堆内存中,因为在jvm的栈内存中,...

2019-01-04 00:20:24 2332

原创 常用的JVM指令

指令码 助记符 说明0x00 nop 什么都不做0x01 aconst_null 将null推送至栈顶0x02 iconst_m1 将int型-1推送至栈顶0x03 iconst_0 将int型0推送至栈顶0x04 iconst_1 将int型1推送至栈顶0x05 iconst_2 将int型2推送至栈顶0x06 iconst_3 将int型3推送至栈顶0x07 iconst_4 ...

2019-01-03 12:23:35 369

原创 深入理解java泛型

今天在这里我就说说java中的泛型,首先我们要先了解几个基本的问题1.什么是泛型?为什么会出现泛型?在说这个问题之前,我们先说一下List集合,我们在使用集合的时候,基本都会在后面加上一对尖括号,并在里面指定一个类型,例如List < String> ,表示这个集合中只能存放String类型的变量,这也是我们要说的泛型,在java5之前是并没有泛型的,在没有泛型的年代,如果我们要...

2019-01-01 22:23:47 421

原创 从字节码来看java内部类

在java中一个类的内部可以存在另一个类,这个类被称为内部类,也被叫做类的嵌套,内部类大体可以分为静态内部类和非静态内部类下面来简单研究下静态内部类public class Demo1 { private static int i =1; static class Inner{ public static void fun(){ System.out.println(i); ...

2018-12-25 22:11:31 684

原创 虚拟机报错:无法打开内核设备"\\.\Global\vmx86": 系统找不到指定的文件.是否在安装 VMwar

今天在打开虚拟机的时候出现了这个错误,后来经排查是相关的服务没有开启,需要在cmd中开启相关命令输入以下命令即可net start vmcinet start vmx86net start VMnetuserifsc config vmci=autosc config vmx86=autosc config VMnetuserif=auto...

2018-12-16 22:13:55 9616 1

原创 java进制转换和基本数据类型的回顾

1.写在前面的话最近在写代码以及刷题的时候越来越觉得基础的重要性,基础扎实的人在学一些新的技术的时候可以很快就上手并掌握,并且在一些问题的理解上也要更加深入,记忆的也更加牢固,回想我刚接触java到现在se部分的内容也有好多都已经记不清楚了,很多概念也都有些模糊,所以我以博客的形式记录一下我复习se部分知识的过程,通过一些书籍和文章对知识点进行一下串连,也希望通过这种方式更加能加固自己的基础以及...

2018-12-16 00:23:33 522

原创 页面静态化模板引擎-Freemaker

今天简单介绍一下什么是模板引擎,以及简单的使用1.什么是模板引擎简单的来说,模板引擎就是一种基于模板和数据输出文本的一种工具1.什么是freemakerFreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。2.环境搭建&快速入门这里采用spring...

2018-12-15 17:06:20 1207

原创 关于springboot扫包的坑

今天在写项目中一个模块的启动类的时候,依赖到另一个模块的的类所以在我的启动类上加上了扫包的注解@ComponentScan(basePackages={"com.lex.api"})//扫描接口然后在启动项目之后,调用接口一直为404,后来经测试时我本项目的包没有被扫描进去,之后又在后面加了一注解扫描本项目的包@ComponentScan(basePackages={"com.xueche...

2018-12-13 13:49:20 659

原创 封装自己的java数组

文章目录1.封装数组类2.实现向数组中添加元素3.实现数组的查询元素和修改元素4.实现删除元素5.使用泛型对数组进行改良6.动态数组的实现7.完整代码最近研究了下Arraylist的底层实现,我在这里基于Arraylist底层的实现思想,这里基于对java的数组进行一个简单的封装,实现一个类似Arraylist的自定义的数组类。1.封装数组类在我们自定义的数组中要指定一个容量大小的变量cap...

2018-12-13 13:13:51 1512 3

原创 基于Aop实现的手写事务注解功能

今天在写代码时候用到@Transactional这个注解式的事务,比较好奇这个是怎么实现的事务的提交和回滚过程,我也是查了一些书籍和资料,也就是使用到了aop+手动事务来实现的,我通过自己的理解实现了一个支持事务提交和回滚的简单的注解式事务,首先还是介绍一下相关的概念。1.Spring的事务分类Spring事务分为编程式(手动事务)事务和声明式事务2.Aop的相关描述1.什么是Aop技术...

2018-12-05 16:06:18 811 1

原创 Docker的使用总结

文章目录1.docker简介2.为什么选择docker3.docker的下载和安装4 设置ustc的镜像5.docker的启动6.常用命令一.镜像相关命令1. 查看镜像2 搜索镜像3 拉取镜像4 删除镜像二.容器相关操作1 查看容器2 创建与启动容器3 停止与启动容器4 .目录挂载5.查看容器的详情6.查看容器id7.删除容器7.常用的应用部署1.mysql的部署2.tomcat的部署3.ngin...

2018-12-05 14:13:52 256

原创 关于spring data jpa一些复杂查询操作的总结

最近自己在写项目的时候,使用到了jpa,也是各种各样复杂的操作,真是头疼的不行,所以自己也总结了一下遇到的问题和一些常见的查询方法,以免再碰到类似的查询的时候没有思路。首先我自己做的项目一般都是springboot的项目,因为springboot对jpa也是提供了很好的整合在使用的时候只需要导入下面的依赖即可<dependency> <groupId&gt...

2018-12-02 00:04:56 2641 2

原创 基于java的微信小程序的实现(十二)视频详情页小程序端实现

文章目录1.详情页的显示1.需求分析2.代码实现(相关的流程和步骤都在注释中标明了)2.点赞与取消1.需求分析2.代码实现3.视频的搜索操作1.需求分析2代码实现4.查看视频发布者信息功能1.需求分析2.代码实现5.评论回复功能实现1.需求分析2代码实现1.详情页的显示1.需求分析当用户在视频详情页点击某个视频后,会跳转到视频详情页的页面,并把该视频的videoVo对象以参数的形式传递过去,...

2018-12-01 18:32:22 2068

原创 基于java的微信小程序的实现(十一)用户关注功能与查询视频发布者功能后端实现

文章目录1.关注/取消关注功能实现1.需求分析2.代码实现2.查询视频发布者信息接口1.需求分析2.代码实现1.关注/取消关注功能实现1.需求分析对于用户关注和取消关注的相逻辑和点赞和取消点赞的逻辑都是一致,就不做详细说明了2.代码实现dao层public interface UsersFansDao extends JpaRepository<UsersFans,String&...

2018-12-01 15:53:09 2308

原创 基于java的微信小程序的实现(十)用户搜索及热搜词相关功能后端实现

1.添加热搜词功能1.数据库表结构分析热搜词表一共有三个字段,分别为主键id,搜索的关键词,及该关键字被搜索的次数2.需求分析当用户在前端进行搜索操作的时候,我们需要对该关键字进行判断,去根据搜索内容去表中查询,是否有记录,如果表中没有该记录,则说明该关键字是第一次被查询,需要做新增的操作,我们需要将该关键字存入数据库的表中并将搜索次数赋值为1,如果该字段在数据库中存在的话,就将该条数据的...

2018-12-01 14:42:49 3224

原创 基于java的微信小程序的实现(九)用户留言功能相关后端接口开发

1.用户为视频留言/回复功能1.需求分析我们需要前端传入Comments实体类中的相关参数,通过service的保存方法,将留言保存到数据库即可,根据Comments的参数数量来判断用户是留言还是为回复留言。2.代码实现dao层代码public interface CommentsDao extends JpaRepository<Comments,String> ,Jpa...

2018-12-01 13:03:12 1611

原创 基于java的微信小程序的实现(八)用户点赞/取消点赞功能相关后端接口开发

1.需求分析当用户进入视频详情页后会当前登录用户与该视频是否有点赞的关系,如果有则返回一个true的值,反之则返回一个false,当用户点击点赞按钮后,会调用点赞的接口,当用户再次点击之后则会调用取消点赞的接口2.用户的点赞与取消点赞的接口编写1.数据库表结构分析关于点赞和取消点赞功能,一共需要关联到3张表的操作相关联的表如下表users_like_videosCREATE TABL...

2018-12-01 12:02:27 6090 3

原创 基于java的微信小程序的实现(七)视频首页的前后端开发

1.效果演示2.编写分页查询全部视频的接口开发1.需求分析该接口会查询数据库中全部的视频内容,因为视频内容过多,要采用分页查询,这里我们使用Pageable对查询结果进行分页处理,另外,在前端显示视频的内容时候还需要额外的显示用户的头像和昵称信息,所以在进行视频列表查询的时候要关联的查询出用户的昵称和头像地址,并且要让新发布的视频放在前面显示,所以还需要按照视频发布时间做一个降序排列,并放...

2018-11-30 11:40:13 2319

原创 基于java的微信小程序的实现(六)用户视频上传的前后端开发

1.用户上传视频功能需求分析用户在登录之后可以在个人信息页面点击上传视频按钮,会让用户在本地选择一段视频进行上传,视频不能过长,选择好后,用户会跳转到选择背景音乐的界面,可以选择为该视频加上一段背景音乐,并且可以对该视频做相关描述,然后点击上传视频按钮,完成视频上传。2.上传功能演示3.编写查询背景音乐列表接口1.需求分析用户在上传视频之前需要查询后台所有的bgm,并显示出来,该接口需...

2018-11-30 00:10:24 7005 4

原创 基于java的微信小程序的实现(五)用户个人信息小程序端开发

1.个人信息页面展示2.显示个人信息功能1.需求分析在该页面首先需要在加载完毕后去调用后端的查找个人信息的接口,并将返回的值回显到个人信息页面上2.js代码的编写onLoad:function(params){ var me=this; // var userInfo=app.userInfo; //从缓存中获取到用户对象 var userInfo = ...

2018-11-29 21:39:01 5954 2

原创 基于java的微信小程序的实现(四)用户个人信息相关接口开发

1.查询用户个人信息接口开发1.需求分析需要通过前端传来的用户的userid去数据库中进行查询,并将查询到的对象封装为usersVo返回给前端dao层代码public interface UsersDao extends JpaRepository<Users,String> {}service层代码/** * 根据用户id返回查询用户信息并返回 *...

2018-11-29 20:24:30 1609

原创 基于java的微信小程序的实现(三)登录,注册,注小程序端的实现

1.微信小程序项目结构认识js文件用来写相关的逻辑操作,主要是用来操作数据json文件用来写一些相关的配置wxss相当于css用来写页面样式wxml相当于html用来写页面的元素的pages文件夹中可以存放多个文件夹,每个文件夹里面都是一套是js,json,wxss,wxml的文件结构2.相关配置的写入1.现将小程序的相关信息写入app.json文件{ "pages":[ ...

2018-11-29 17:52:55 10007

原创 基于java的微信小程序的实现(二)登录,注册,注销接口的实现

1.开发工具以及相关环境的配置1.首先关于IDE,前端小程序端采用的是微信官方的微信开发者工具,后端使用的是idea(idea是真的智能,再也不想回去eclipse了呢),关于前端的一些代码,主要是参照微信官方的API进行开发的,整体的文件结构也和js,css,html也很相似。2.关于测试环境的配置,因为小程序的调试需要认证的https域名才能进行调试,在pc端调试需要开启debug模式,所...

2018-11-29 16:29:39 4343

原创 基于java的微信小程序的实现(一)项目介绍

一,项目介绍佐仓短视频是一个以java为后台编写的短视频类的微信小程序项目用户可以实现登录,注册,视频查看,视频上传,个人信息查看,头像上传等功能二,技术选型和效果预览本项目后端采用spring boot +spring data jpa的技术实现采用Ffmpeg技术对音频和视频进行处理使用redis数据库实现单点登录和权限验证功能使用swagger2技术使接口开发更加简洁清楚...

2018-11-29 14:32:23 34492 12

原创 nginx的相关使用事项

1.nginx中location使用正则表达式已=开头表示精确匹配如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。^~ 开头表示uri以某个常规字符串开头,不是正则匹配开头表示区分大小写的正则匹配;~* 开头表示不区分大小写的正则匹配/ 通用匹配, 如果没有其它匹配,任何请求都会匹配到2.nginx根据域名不同拦截不同的项目名称server { ##监听的端口号...

2018-11-29 13:29:07 126

原创 redis入门和基本应用

1.redis的五种存储结构字符类型散列类型列表类型集合类型有序集合2.redis的应用场景数据缓存(商品数据、新闻、热点数据)单点登录秒杀、抢购网站访问排名…应用的模块开发3.redis的安装和基本文件说明下载redis安装包tar -zxvf 安装包在redis目录下 执行 make可以通过make...

2018-11-29 13:28:47 203 2

2018名企校招笔试真题精选技术篇(正版)

一线互联网面试题目,各种算法题目相关 牛客zhengban

2018-12-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除