自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我的博客

分享 学习 探讨

  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 聊一聊阅读源码

从代码的可读性说怎么阅读要有目标地去阅读

2020-07-03 18:06:26 295

原创 多线程——各种锁和相关名词含义总结

接上文

2020-06-24 17:56:59 411

原创 多线程——检测、分析死锁工具(Jconsole \ Jstack)

死锁是多线程中的常见问题,经常与业务逻辑挂钩。如果逻辑复杂,检查起来会很困难。如果这时候有工具辅助,就方便多了。这里介绍两个检查死锁的工具,都是jdk自带的,使用起来也非常简单。这两个工具分别是Jconsole和Jstack。首先来一段死锁代码:public class TestThreadLock { public void sync1() { synchronized(this) { try { System.out.println("test1"); Thread.

2020-06-18 22:36:31 703

原创 多线程——锁机制(线程同步)

多线程学习:【一】、多线程几种创建方式:1、实现Runnable接口并编写run()方法Thread t = new Thread(runnable);t.start();2、继承ThreadMyThread t =new MyThread();t.start();3、实现Callable接口FutureTask futureTask = new FutureTask(new MyCallable());new Thread(futureTask).start();4、线程池后续介绍

2020-06-18 22:36:00 617

原创 多线程——线程池基础、原理及相关扩展知识

【十】、线程池 =========================================================================================================================================================0、线程池创建通过ThreadPoolExecutor来创建一个线程池:new ThreadPoolExecutor(corePoolSize, maximumPoolSize, ke

2020-06-03 18:13:03 256

原创 多线程——基础(生命周期、常用方法、优先级等)

文章目录概述1、多线程的4种创建方式2、线程锁机制简介3、多线程的生命周期4、常用方法—运行5、常用方法—线程休眠、等待与唤醒、让步6、常用方法—线程中断7、常用方法—等待线程结束8、常用方法—获取、设置9、线程优先级10、守护线程11、线程的状态12、线程本地变量13、并发集合14、线程内异常的传递概述在Java中,程序的运行可以笼统地分为两种方式:同步,异步。假设我们在某个方法里,前后有两个子方法:method1、method2,现在想要执行完这两个子方法,按照同步、异步的方式,有以下两种执行过程

2020-05-28 18:15:23 687

原创 Vue学习笔记-路由专题

17、路由:基本: 导航,默认显示为,但也可以指定tag=“span”等,to=“【路径】”、加载跳转的内容<div id="app"> <h1>Hello App!</h1> <p> <!-- 使用 router-link 组件来导航. --> <!-- 通过传入 `to` 属性指定链接. --> <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->

2020-05-15 17:49:27 892

原创 吐血整理-Vue学习笔记

Vue的官方文档:https://cn.vuejs.org/v2/guide/现在说到前端三大框架,一般都是指这三个:Angular、React、Vue。其中,Angular是一整套的前端解决方法,相比React和Vue要厚重得多,所以相对来说学习成本也就更高。但熟悉了之后的Angula仍是很多大型前端的很好的一个选择。而React与Vue,相对来说,React更接近原生、更易于理解。...

2020-05-12 17:47:35 340

原创 PowerDesigner中数据库表的Excel格式导入导出

文章目录概述导入Excel表生成PDM表结构1. 准备excel:2. 在pdm中,按 `crtl+shift+x` 打开脚本执行窗口3. 输入脚本,点击`run`执行4. 脚本如下:导出为Excel表1. 在pdm中,按 `crtl+shift+x` 打开脚本执行窗口2. 输入脚本,点击`run`执行3. 脚本如下:概述PowerDesigner简称PDM,是我们工作中常用的数据库模型设计工...

2020-05-08 15:05:11 1563

原创 工作中遇到的问题与处理(二)

文章目录(一)hibernate自动更新(二)阿里云上用JavaMail发不出邮件(三)Tomcat工程残留(四)MySql数据库时间错误(一)hibernate自动更新问题描述:Hibernate并没有调用update却自动更新:原因:hibernate在每个session里都会做些处理,比如把查询过的对象缓存起来,这个时候这些对象的实例是和数据库保持关联的,hibernate会记录s...

2020-05-07 16:52:43 313

原创 Oracle数据库异常情况排查

项目上线后,数据库难免有时会出现一些异常情况,尤其是刚上线阶段。以下是一些平时积累的简单的数据库查询sql,可以配合实际情况进行问题排查。按主机名统计连接数select MACHINE,count(*) from v$session group by MACHINE order by 2 desc;检查表锁select object_name as 对象名称,s.sid,s.seri...

2020-05-06 21:09:15 2879

原创 前端模板引擎art-template

art-template 是一个简约、超快的模板引擎。它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。git源码地址: https://github.com/aui/artTemplatetemplate模板,可以方便、简化我们的前端页面加载。通过动态渲染的方式,为我们的前端界面带来更多简单实际的界面效...

2020-05-06 21:09:07 442

原创 由Mysql排序分组,到Mysql的语句执行顺序理解

在Mysql里,一般情况下,对一个排序后的查询进行分组,其排序会失效,只会根据数据库默认的排序方式(按插入顺序)得到查询结果,然后进行分组。举个例子:假设有一张用户登录记录表userLoginLog,里面记录了用户每次登录的时间。名称字段用户idid用户名name登录时间loginDate现在想从这张表里查询出每个用户的第一次登录时间。实现的方法...

2020-05-06 21:09:00 848

原创 解析XML的四种方式

概述XML文档是我们平时项目中最常用的配置方式。虽然现在springBoot提倡简化配置,去掉了众多繁杂的XML等配置。但在很多其他地方,如自定义的配置和信息设置,还是会使用到XML。这里,就来介绍以下XML文档的四种解析方式:DomSAXJDOMdom4j1、【dom】DOM的全称是Document Object Model,也即文档对象模型。在应用程序中,基于DOM的XML...

2020-05-06 21:08:49 594

原创 webSocket前后端连接实例

简介传统的网络通信一般使用的是HTTP协议,它是一种无状态的、无连接的、单向的应用层协议。通信请求只能由客户端发起,服务端对请求做出应答处理。它是单向的,也就导致无法实现服务器主动向客户端发起消息。同时,它也是一次性的,即每个请求响应后,连接就结束了。要想继续与服务端对话,就需要重新发送请求。但有些时候,我们是需要前后端保持长久的、双向的联系,前端实时获取后端推送过来的信息,而不是自己去发送一...

2020-04-29 20:02:36 9686 3

原创 jquery遮罩层实现

在前端界面,有时候触发了某些条件,需要将一些控件(如按钮、跳转链接)设置为不可点击;当达到另外条件后,又可以恢复点击。一般的做法,都是在具体的页面上,针对特定的控件写对应的方法。但对于需要修改的地方多的时候,一个个去针对性修改就显得有些低效了。这时候如果有一个公共的方法来调用,一切就显得方便高效许多。这里提供一个遮罩层的方法,来提供公共的调用。原理:设置一个透明div层,置于需要修改的控...

2020-04-29 20:02:30 1066

原创 List元素自动排序

文章目录List内部元素自动排序有两种方式:1、list中的对象实现Comparable接口2、根据Collections.sort重载方法来实现List内部元素自动排序有两种方式:1、list中的对象实现Comparable接口适用于list元素是可操作对象a、在元素对象里面,加一个compareTo方法,如下: //对象有字段:order,并有对应的获取方法:getOrder()。...

2020-04-29 20:02:21 3935

原创 jquery底层方法扩展

在实际项目开发的时候,总会有一些自定义的方法会在项目上的各个地方使用到(譬如说 金额转换方法 等)。这时,将这些方法定义为公共的、便于调用的方式,能极大程度简化开发,并且易于维护(譬如后期金额格式有调整,直接修改公共方法即可)。定义公共方法的方式用很多种,可以写在一个js文件中供各页面引用、可以写成一个公共模块给需要的地方引入、等等这里我们介绍在jquery底层扩展的方式来提供公共调用的方法。...

2020-04-28 22:11:33 158

原创 Gson-json操作

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。Gson原本是创造给Google内部人员使用并运用在目前的的很多Google项目中。现在被很多公共项目和公司所使用。Gson的两个基础方法toJson();fromJson();Gson的创建方式一、直接new Gson对象// 使用new方法Gson gson = n...

2020-04-28 22:11:26 423

原创 Linux常用命令详细汇总

一些关于服务器维护常用的Linux命令汇总【1】查看进程:ps -aux 显示所有状态ps -ef | grep java : grep 搜索 java (通用)pstree` 以树形查看-e 显示所有进程,环境变量-f 全格式-h 不显示标题-l 长格式-w 宽输出a显示终端上地所有进程,包括其他用户地进程r只显示正在运行地进程x显示没有控制终端地进程【2...

2020-04-28 22:11:07 227

原创 Java中的异常分类

(一)概述java相关的异常和错误,都是由Throwable派生出来的。Throwable之下,有两大类,Error和Exception。(二)错误和异常Error(错误): 基本都是程序无法处理的问题。大多数情况下是基于jvm运行时发生的问题,如OutOfMemoryError等。此类错误并不是明确的某块程序代码上的错误。需要结合系统的运行来做整体的分析。如内存溢出,应该分析是哪些地...

2020-04-27 20:01:44 280

原创 存储过程:修改当前序列值

在Oracle中,序列(SEQUENCE) 是可以产生一组等间隔的数值的一种生成器。常用来生成表的主键或者其他有规律或自增/减的字段值。当前项目是用来生成表的主键,由于某些原因,需要修改当前的序列值。修改序列值的思路,可分解为如下:oracle中,当前序列值无法直接修改通过查询当前序列的方式,可以使当前序列值递增一次 select 序列名.nextval from dual;...

2020-04-27 20:01:23 1068

原创 工作中遇到的问题与处理

记录一下工作中遇到的问题及解决方式:1、在后台,执行事务时,遇到了锁等待超时,导致方法执行失败,所有操作回滚。报错内容:Lock wait timeout exceeded; try restarting transaction原因:事务中有一个insert方法,在执行的时候,遇到了锁,但是又因为锁需要事务提交后才能释放,但insert方法也在同一个事务中,即insert执行后,锁才能释...

2020-04-26 20:13:11 359

原创 分享 学习 进步

最近打算将平时记录的一些东西发上来,互相学习、保持进步。

2020-04-24 20:21:28 227

Android开发入门教程

图灵出版,Android2,中文版,有目录。亚马逊畅销书,读者好评如潮。

2013-12-11

空空如也

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

TA关注的人

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