自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

SouthStreet的博客

无需多言,加倍努力

原创 Java实习生面试复习(十二):JVM内存结构/运行时数据区
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!如果你觉得内容对你有帮助的话,不如给个赞,鼓励一下更新????。加油啊!新的一天,新的开始????JVM运行时数据区JVM(Java Virtual Machine,Java 虚拟机)顾名思义就是用来执行 Java 程序的“虚拟主机”,实际的工作是将编译的 class 代码(字节码)翻译成底层操作系统可以运行的机器码并且进行调用执行,这也是 Java 程序能够“一次编写,到处运行”的原因(

2020-07-11 20:46:51 84 1

原创 Java实习生面试复习(十一):什么是CAS?
原力计划

说到CAS,我们就得提起通常所说的并发包也就是 java.util.concurrent(JUC)及其子包,它集中了 Java 并发的各种基础工具类,具体主要包括几个方面:* 提供了比 synchronized 更加高级的各种同步结构 CountDownLatch、Semaphore 等,可以实现更加丰富的多线程操作,比如 Semaphore 作为资源控制器,可以限制同时进行工作的线程数量。* 各种线程安全的容器,比如面试常问到的 ConcurrentHashMap或者通过类似快照机制,实现线程安全的动

2020-06-08 14:42:34 107

原创 Java实习生面试复习(十):线程池ThreadPoolExecutor学习
原力计划

程池是什么,好处是啥?线程池是为了避免线程频繁的创建和销毁带来的性能消耗,而建立的一种池化技术,它是把已创建的线程放入“池”中,当有任务来临时就可以重用已有的线程,无需等待创建的过程,这样就可以有效提高程序的响应速度。通过线程池复用线程有以下几点优点:* 减少资源创建 => 减少内存开销,创建线程占用内存* 降低系统开销 => 创建线程需要时间,会延迟处理的请求* 提高稳定稳定性 => 避免无限创建线程引起的OutOfMemoryError【简称OOM】**在阿里巴巴的《Java 开发手册》中

2020-05-07 11:35:18 143

原创 Java实习生面试复习(九):聊聊动态代理
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!我们大家都直接或者间接的使用过动态代理,无论是日志框架还是Spring 框架,它们都包含了动态代理码。动态代理是程序在运行期间动态构建代理对象和动态调用代理方法的一种机制。...

2020-05-01 20:32:10 600 4

原创 Java实习生面试复习(八):volatile的学习
原力计划

我是一名很普通的大三学生。我将坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!volatile也是多线程这块经常问到的基础问题,以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,我们这篇文章就来学习一下volitile关键字吧!多线程之v...

2020-04-03 14:26:29 1071

原创 Java实习生面试复习(七):synchronized和ReentrantLock的学习
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!synchronized 和 ReentrantLock 也是高频的面试问题,我们这篇文章就来深入学习一下。synchronized 和 ReentrantLock 是如何实现的?它们有什么区别?synchronized属于独占式悲观锁,...

2020-03-28 16:33:16 333 2

原创 Java实习生面试复习(六):MySQL索引
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!作为一个后端程序员,那么数据库也是天天打交道的,回忆起以前写复杂SQL的时候还得请教别人,自己写的一手辣鸡SQL,简直不忍直视好嘛!看完这篇文章,至少让你对索引有个认识。本文不会涉及那些很基础的增删改查语句,我相信这些你还是会的。对于很...

2020-03-25 11:14:08 283

原创 Java实习生面试复习(五):Thread线程学习
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!多线程也是面试中必问的点,是必备的基础技能。Thread(线程)的概念首先我们要知道线程的概念是什么,在继续往下说,大家可以先闭上眼回忆一下:线程(Thread)是并发编程的基础,也是程序执行的最小单元,它依托进程而存在。一个进程中可...

2020-03-22 16:53:21 559 1

原创 Java实习生面试复习(四):LinkedList
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!LinkedList 适用于集合元素先入先出和先入后出的场景,在队列中被频繁使用。下面我们就来简单了解一下它,并看看它跟常用的ArrayList的区别。LinkedList结构分析LinkedList 底层数据结构是一个双向链表,整体结构...

2020-03-19 10:34:19 1268

原创 Java实习生面试复习(三):ArrayList
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!ArrayList 我们几乎每天都会使用到,本文就一起来看看同样是面试高频问到的ArrayList和LinkedList的相关知识吧。ArrayList分析底层结构分析其实ArrayList是很简单...

2020-03-17 17:47:18 1113

原创 Java实习生面试复习(二):HashMap
原力计划

**HashMap**基本是我们在日常使用中频率特别高的一个数据结构类型了,同时也是面试经常问到的,围绕着HashMap能展开一系列问题,比如: - HashMap底层是如何实现的? - HashMap的扩容机制? - HashMap为什么会出现死循环? - HashMap在1.7和1.8有什么区别?做了哪些优化?#### 什么是扩容因子("加载因子,负载因子")? 扩容因子是用来判断当前数组("哈希桶")什么时候需要进行扩容,假设因子为0.5,那么HashMap的初始化容量是16,则16

2020-03-15 11:18:49 3087 8

原创 Java实习生面试复习(一):String类型
原力计划

我是一名很普通的大三学生。我会坚持写博客,输出知识的同时巩固自己的基础,记录自己的成长和锻炼自己,奥利给!!话不多说,我们来看大家最常用到的String类型String 是如何实现的?它有哪些重要的方法?以主流的JDK版本1.8来说,String内部实际存储结构为char数组,源码如下:public fi...

2020-03-12 16:52:55 491 1

原创 SpringBoot+Mybatis等技术实现的 Java 个人博客,带博客和后台管理

SpringBoot+Mybatis等技术实现的 Java 个人博客,带博客和后台管理Layui 版本的 My-Blog是由我通过原My-Blog改进而来,通过联系原My-Blog作者,现已经将Layui版本发布到他的github上给大家借鉴和学习,还有很多不足的地方忘见谅。项目链接:https://github.com/ZHENFENG13/My-Blog-layui坚持不易,各位朋友如果觉得项目还不错的话可以给项目一个 star 吧,也是对我们一直更新代码的...

2019-09-13 22:17:26 549

原创 MyBatis-Plus3.x版本使用入门、问题

Mybatis-Plus是Mybatis的增强版,他只是在Mybatis的基础上增加了功能,且并未对原有功能进行任何的改动。可谓是非常良心的一款开源产品,今天我就来给大家简单的说一下以下几个功能和踩过的坑。前言对于看官网看不太懂的朋友,可以看下这个视频,2.0倍速也可哦,https://www.imooc.com/learn/1171慕课上的mybatis-plus的视频。最新的3.x版本踩的几个坑 2020/3/4补充mybatis-plus提供了非常强大的代码生成器,可以一键生成contr

2019-05-29 11:39:31 6431

原创 Spring+SpringMVC+Mybatis知识点复习【SSM框架复习笔记】
原力计划

Spring+SpringMVC+Mybatis复习【SSM框架复习笔记】Spring核心特性SpringMVC特性Mybatis复习

2020-06-14 22:03:45 124

原创 idea配置Jrebel,学会项目热部署

idea配置Jrebel,学会项目热部署Jrebel 安装

2020-06-14 21:58:25 115

原创 理解IO多路复用,IO多路复用入门
原力计划

多路复用IO是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)

2020-06-01 10:20:08 150

原创 Spring IOC 复习和理解

前面部分知识点为摘抄,后面部分是自己读后的笔记SpringIOC和DIIOC:Inversion Of Control,即控制反转,是一种设计思想。在传统的 Java SE 程序设计中,我们直接在对象内部通过 new 的方式来创建对象,是程序主动创建依赖对象;而在Spring程序设计中,IOC 是有专门的容器去控制对象。所谓控制就是对象的创建、初始化、销毁。创建对象:原来是 new 一个...

2020-02-24 15:23:46 198

原创 Java的JVM和并发学习

Java的JVM和并发学习对于开发人员来说,如果不了解Java的JVM,那还是很难达到更高境界的。1.1 JVM内存结构java虚拟机在执行程序的过程中会将内存划分为不同的数据区域[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-etWc3T3b-1579156537984)(C:\Users\hp\Desktop\111)]线程独享区可以中包含以下三种数...

2020-01-16 14:37:00 181

原创 Java闲杂笔记摘抄

Java学习个人笔记以下内容不分先后顺序方法设计单元:一个类或者一组类(组件)类采用名次结构动词过去式+名次ContextRefreshedEvent动词ing + 名词InitializingBean形容词 + 名次ConfigurableApplicationContext执行:某个方法方法命名:动词executerun…...

2020-01-08 15:44:28 148

原创 Java集合容器入门

Java容器复习[无序]集合类图什么是HashMap众所周知,HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫Entry。这些键值对分散在一个数组中,这个数组就是HashMap的主干。HashMap数组的每一个初始值都是NullHashMap用数组+链表的形式解决Hash函数下index的冲突情况,比如下面这种情况hash冲突你还知道哪些解决办法?(1...

2019-11-15 17:01:26 280

原创 通过Lambda的get方法引用拿到私有属性名

前言:最近在使用mybatis-plus框架,我们都知道有这么一种写法,可以通过lambda的方法引用获得属性值,避免魔法值的大量出现public List<Board> getListByName() { LambdaQueryWrapper<Board> wrapper = new LambdaQueryWrapper<>(); // ...

2019-09-26 10:20:33 749

原创 SpringBoot拦截器或SpringMVC拦截器,@Autowired自动注入为null问题

最近使用SpringBoot的自定义拦截器,在拦截器中注入了一个RedisService,准备下面作相应操作,拦截器代码:public class WebAdminInterceptor implements HandlerInterceptor { @Autowired private RedisService redisService; @Overrid...

2019-08-20 11:34:11 883

原创 搭建Nginx,解释nginx.conf配置文件功能,解决跨域问题

什么是 NginxNginx 是一款高性能的 HTTP 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师 Igor Sysoev 所开发,官方测试 Nginx 能够支支撑 5 万并发链接,并且 CPU、内存等资源消耗却非常低,运行非常稳定。Nginx 的一些应用场景HTTP 服务器:Nginx 是一个 HTTP 服务可以独立提供 HTTP 服务。可...

2019-08-19 16:36:31 809

原创 Git 使用 SSH 的方式拉取和推送项目

生成 SSH KEY使用 ssh-keygen 工具生成,位置在 Git 安装目录下,我的是C:\Program Files\Git\usr\bin输入命令:ssh-keygen -t rsa -C "your_email@example.com"执行成功后的效果:Microsoft Windows [版本 10.0.14393](c) 2016 Microsoft C...

2019-08-07 15:35:36 1243

原创 SpringBoot和SSM整合Redis

前面我已经写过一篇博客简单介绍Redis的Java客户端和Redis的一整合操作,这里我们深入将Redis配置SpringCache注解来实现缓存,这样效率更高更快捷话不多说,直接晒代码一、redis配置文件redis.host=192.168.3.143redis.port=6379redis.dbIndex=1redis.expiration=3000redis.maxI...

2019-07-02 12:05:09 277

原创 关于SSM整合Spring-data-Redis踩的一些坑

一、关于SSM整合Redis需要知道的一些小知识在学习Redis的时候,大家应该知道,JAVA操作redis通常使用的是Jedis,通过java代码来操作redis的数据存储读取等操作,用过的人应该知道,Jedis客户端已经足够简单和轻量级了,但是呢,在此同时,Spring也为Redis提供了支持,就是在Spring-data模块中的Spring-Data-Redis(SDR),它一部分是基...

2019-06-25 11:08:00 371

原创 MySQL的常用判断函数使用

首先在公司实习期间,真实的感受到了SQL没学好是多么难受的一件事,需求下来,自己想要的数据自己写不出复杂的SQL取不出数据,没有数据来源又谈何业务逻辑?然后决心恶补SQL,望大家一起共勉,学好SQL真的是做后台的基础之一啊。 先创建一个表模型,数据库大家随意,只要是MySQL的就行:DROP TABLE IF EXISTS `user`;CREATE TABLE `user` (...

2019-02-25 11:56:43 176

原创 SpringBoot和SSM全局异常统一处理的方式

最近在写毕业设计,在开发阶段,遇到bug是常事,为了给了用户良好的体验,我们肯定得处理异常,比如跳转到一个错误页面打印对应的信息,而不是直接出现异常页面或者没有任何反应,所以说统一一个全局的异常处理是很必要的。对于SSM项目可借鉴的异常处理思路:系统遇到异常时,在程序中手动抛出,dao抛给service,service再抛给Controller,最后Controller抛给前...

2019-01-17 11:39:51 1695

原创 SSM整合pom.xml配置

不多说,直接上代码,SSM框架整合所需的pom.xml文件,有的jar包没有的话,自己在补充<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc...

2019-01-07 14:07:53 258

原创 Shiro学习:关于shiro安全框架的登录和获取用户对象

最近用在用apache shiro在做权限管理,网上很多博客的登录部分都是这么写的这是重写authorizingrealm的dogetAuthenticationinfo方法:protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationExcepti...

2018-11-13 16:39:34 2718 1

原创 idea配置jrebel,学会tomcat热部署

最近尝试使用了IDEA,瞬间感受到了其强大,真的是相见恨晚啊。相对MyEclipse等IDE,简直好用多了,不过对新手开发不太待见,因为要配置的东西稍多一点,其优劣处可以自行百度,这里我就不阐述了然而、在发布项目的时候,都存在更改代码后,要重新启动Tomcat,进行项目的部署,这无疑是浪费了时间,所以在网上找了一下热部署的资料,装了一下,这里把我的步骤和碰到的问题跟大家分享一下插件的安...

2018-11-08 16:19:34 186

原创 SSM框架考前复习笔记

最近赶上框架考试就做点复习笔记分享给大家,希望能帮上各位一、Spring知识点spring的特点与好处?IOC/DI方便解耦;AOP编程的支持;声明式事务的支持;方便程序的测试;方便集成各种优秀框架;轻量级开源框架,简化开发;

2018-10-25 19:25:36 1430 1

原创 使用find_in_set()函数实现批量删除

今天在实现客户删除的时候,碰到了无法批量删除的原因,然后百度了一下用find_in_set函数()解决了,记录一下 find_in_set是精确匹配,字段值以英文”,”分隔,语法为:FIND_IN_SET(str,strlist) //str 要查询的字符串//strlist 字段名 参数以”,”分隔 如 (1,2,6,8)//查询字段(strlist)中包含(s...

2018-09-19 14:39:51 857

原创 java向MySQL插入当前时间的几种方式

今天插数据的时候发现了一种更简单的时间插入,分享给大家1.这是最常见的一种时间格式转换 Date date = new Date();//获得系统时间. SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " ); String nowTime = sdf....

2018-09-19 14:17:11 3372

原创 Maven实现SSM框架pom.xml实现(版本号:Spring4.2.4+Mybatis3.4.2)

看到很多文章和视频都采用Maven整合SSM,花了一天时间终于跑起来了,话不说话,先分享给大家 这里提供不用maven搭建的SSM框架整合jar包:https://download.csdn.net/download/qq_39809458/10677204 一:准备材料Eclipse+Maven+jdk+Tomcat,安装不多说了。 二:Eclipse新建Mave...

2018-09-15 15:26:43 3740

原创 struts2标签库常用标签详解

 struts2标签库常用标签详解struts2标签主要分两种:注意:标签的属性可以被赋值为一个静态的值或一个 OGNL 表达式. 如果在赋值时使用了一个 OGNL 表达式并把它用 %{} 括起来, 这个表达式将会被求值.1.通用标签库(控制标签、数据标签):2.表单标签库<s:property> 将OGNL表达式的内容输出到页面value属性,接受...

2018-07-23 14:40:48 429

原创 struts2的s:debug标签详解及其案例分析

在Struts2在 <s:debug> 标签是一个非常有用的调试标记输出“值栈”的内容,并在网页中“堆栈上下文”的详细信息。它提供的是Struts ValueStack Debug ..也就是说,都是struts2的值栈(就是各个值的信息)..这个值栈又分为两种.Value Stack Contents 和 Stack Context .(1).Value Stack Co...

2018-07-20 10:51:36 1410

原创 hibernate数据持久化对象的状态

Hibernate 持久化对象的状态的转换瞬时态 -- 没有持久化标识OID, 没有被纳入到 Sessi on 对象的管理获得瞬时态的对象 User user = new User() 瞬时态对象转换持久态 sessi on. save()持久态 -- 有持久化标识 OI D, 已经被纳入到 Sessi on 对象的管理 获得持久态的对象get ()/ l oad();...

2018-07-19 14:07:09 118

原创 hibernate主键生成策略简单理解

主键类型之自然主键和代理主键创建表的时候 自然主键:对象本身的一个属性.创建一个人员表,每个人都有一个身份证号.(唯一的)使用身份证号作为表的主键.自然主键.(开发中不会使用这种方式) 代理主键:不是对象本身的一个属性.创建一个人员表,为每个人员单独创建一个字段.用这个字段作为主键.代理主键.(开发中推荐使用这种方式) 创建表的时候尽量使用代理主键创建表主键的生成策略i ncrem...

2018-07-19 13:35:03 234

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