- 博客(66)
- 资源 (10)
- 收藏
- 关注
原创 JVM之类的加载
类加载子系统功能细分加载模块1.通过一个类的全限定明获取定义此类的二进制字节流;2.将这个字节流所代表的的静态存储结构转化为方法区的运行时数据;3.在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据的访问入口链接模块分为三块,即验证、准备、解析验证1.目的在于确保Class文件的字节流中包含信息符合当前虚拟机要求,保证被...
2021-01-17 16:31:43
415
原创 数据结构-红黑树
简介:红黑树是一种特殊的平衡二叉树(AVL)红黑树的性质:每个结点不是红色就是黑色 不可能有连在一起的红色结点 根结点都是黑色 每个红色结点的子结点都是黑色(叶子结点都是黑色)旋转和颜色变换规则:变颜色的情况:当前结点的父亲是红色,且它的祖父结点的另一个子结点也是红色。( 叔叔结点) : (1)把父节点设为黑色( 2 )把叔叔也设为黑色( 3 )把祖父也就是父亲的父亲设为红色( 4 )把指针定义到祖父结点设为当前要操作的.2.左旋:当前父结点是红色,叔叔是黑色的时候,且当.
2020-09-22 21:35:46
166
原创 2020尚硅谷SpringCloud(H版&alibaba)笔记整理-版本选择
SpringBoot和SpringCloud版本间依赖关系如何看 地址:https://spring.io/projects/spring-cloud 打开后下拉 更详细的版本查看: https://start.spring.io/actuator/info 查看json格式化后的结果 2020年SpringCl...
2020-04-02 11:51:19
2262
转载 SQLServer 重建索引
前言:在做维护项目的时,特别是数据库转移时,经常会遇到索引维护的问题,通过语句,我们就可以判断某个表的索引是否需要重建。分析表的索引:分析表的索引建立情况:DBCC showcontig('Table')DBCC SHOWCONTIG 正在扫描 'Table'' 表...表: 'Table'' (53575229);索引 ID: 1,数据库 ID: 14已执行 TABLE 级别的...
2019-01-03 14:22:04
9043
转载 SQL Server中存储过程比直接运行SQL语句慢的原因
前言:前段时间,发现了手动执行存储过程比SQL还慢,且不只慢一点,百度后才发现原因解决:代码 ALTER PROCEDURE [dbo].[pro_ImAnalysis_daily]@var_thedate VARCHAR(30) ASBEGIN DELETE FROM RPT_IM_USERINFO_DAILY WHERE THEDATE=@var_t...
2018-12-29 15:54:44
2020
原创 springMVC 使用MultipartFile进行文件上传
前言:springMVC实现多文件上传的方式有两种,一种是我们经常使用的以字节流的方式进行文件上传,另外一种是使用springMVC包装好的解析器进行上传。这两种方式对于实现多文件上传效率上却有着很大的差距,下面我们通过实例来看一下这两种方式的实现方式,同时比较一下在效率上到底存在着多大的差距。下载:下载相关jar包。需要引入的jar出了springMVC的jar包外,还需要引入co...
2018-11-06 15:07:47
1211
原创 JavaWeb Apache FtpServer的使用
1、简介Apache Ftp Server 是100%纯Java的FTP服务器软件,它采用MINA网络框架开发具有非常好的性能。Apache FtpServer 既可以嵌到Java应用中使用,也可以做为Windows服务或Unix/Linux Daemon单独运行。此外还提供与Spring 相集成的模块。用户管理主要对于FTP的用户进行管理,包括用户名,用户密码,用户的根目录,用户的写权限...
2018-10-19 09:12:25
4317
1
原创 tomcat配置https(单向认证)+如何使用java请求
一. 创建tomcat证书 这里使用JDK自带的keytool工具来生成证书: 1. 在jdk的安装目录\bin\keytool.exe下打开keytool.exe 2. 在命令行中输入以下命令:keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "g:\tomcat.keystore" ...
2018-09-07 15:54:27
2085
转载 MySQL Explain详解
在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时...
2018-08-01 10:52:37
190
原创 JVM的认识
1、概念 首先需要了解几个概念,什么是jdk,什么是jre,什么是jvm。 JDK:Java开发工具包JDK是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment)、一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。 JRE:Java运行环境运行基于Java语言编写的程序所不...
2018-06-24 23:13:44
874
原创 mysql 报错:The user specified as a definer ('root'@'%') does not exist
项目开发中,经常会遇到数据库的迁移。但是如果迁移过去的数据库,没用之前创建该数据库的用户,在执行视图或者存储过程的时候会报:1449 The user specified as a definer ('root'@'%') does not exist解决方法:1、添加host访问权限;命令如下:grant all privileges on *.* to root@"%" identif...
2018-06-20 11:47:04
526
转载 Oracle报错:“ORA-02292:违反完整约束条件(XXX.FKXXX)- 已找到子记录 解决:找到约束的子表并删除记录
1、找到以”FKXXX“为外键的表A的子表,直接运行select a.constraint_name, a.table_name, b.constraint_name from user_constraints a, user_constraints bwhere a.constraint_type = 'R' and b.constraint_type = 'P' and a.r_constra...
2018-06-07 10:24:45
8311
1
原创 java Socket的isConnected()、和isClosed()判断是否在线的问题
首先,很多初学者都会用这两个API来判断对方是否在线,但是经过我的实践,此API并不能实时判断是否在线的状态。经过百度查询资料后,得出结论: 事实上这些方法都是访问socket在内存驻留的状态,当socket和服务器端建立链接后,即使socket链接断掉了,调用上面的方法返回的仍然是链接时的状态,而不是socket的实时链接状态。 那需要如何实现实时判断在线的功能呢? ...
2018-06-01 20:54:05
14576
5
原创 点击div以外的页面隐藏该div
思路:在触发DOM上的某个事件的时候会产生一个事件对象event,这个对象包含着所有与事件有关的信息,包括产生事件的元素、事件类型等相关信息,思路一中div的click事件处理程序传入的参数就是这个event对象。访问IE中的event对象有几种不同的方式,取决于指定事件处理程序的方法。直接为DOM元素添加事件处理程序时,event对象作为window对象的一个属性存在。 event对象包含...
2018-05-22 21:15:25
2548
转载 MyEclipse 中 SVN 突然失效
PS:已多次失效,找到此方法有效,将其引用。重新打开MyEclipse 后,发现SVN 不能用了,而且是引用直接失效 解决办法为: 关闭myeclipse,然后打开myeclipse安装路径(我的安装在D盘):E:\ProgramFiles\MyEclipse\MyEclipse Professional 2014\configuration然后将org.eclipse.update文...
2018-05-19 15:25:54
264
原创 java GET或POST发送请求
public class HttpUtil { public static Logger log = Logger.getLogger(HttpUtil.class); /** * 向指定URL发送GET方法的请求 * * @param url * 发送请求的URL * @param param * ...
2018-05-14 22:09:44
188
原创 myeclipse使用git出现cannot open git-receive-pack
问题:在采用MyEclipse软件(JDK1.7)作为开发环境,利用GitHub作为代码管理时,代码的提交过程中会出现错误提示“cannot open git-receive-pack”,如下图:解决方法一:经过网络查询,发现大部分的解决办法都是在MyEclipse软件关于Git的配置中增加一个健值对,即http.sslVerify=false,如下图:但是经过使用此解决办法后,重新启动MyEcl...
2018-05-04 10:27:08
4436
5
原创 DWR的学习
1、DWR简介 借用百度百科的原话--DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样。 这段话对于初学者来说有点难理解,按照我的理解是,这是一个可以在JavaScript上调用jav...
2018-04-28 10:35:14
278
转载 Java反射机制
一、什么是反射机制 简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息。 二、哪里用到反射机制 有些时候,我们用过一些知识,但是并不知道它的专业术语是什么,在刚刚学jdbc时用过一行代码, Class.forName("com.mysql.jdbc.Driver.cla...
2018-04-10 11:58:38
164
原创 jbpm工作流
1、工作流相关概念工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。通俗的说,流程就是多个人在一起合作完成某件事情的步骤,把步骤变成计算机能理解的形式就是工作流。工作流管理系统(WfMS,Workflow Managemen...
2018-04-09 18:11:42
716
原创 java volatile关键字详解
一、前言在解释前,首先需要理解并发编程的三大概念:原子性,有序性,可见性。一、原子性1、定义:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。2、实例 a、概念解说: 一个很经典的例子就是银行账户转账问题: 比如从账户A向账户B转1000元,那么必然包括2个操作:从账户A减去1000元,往账户B加上1000元。 试想一下,如果这2个操作不具备原子性,会造成...
2018-03-29 16:17:45
1284
转载 java 线程方法join的简单总结及与其他线程方法的区别
一、作用 Thread类中的join方法的主要作用就是同步,它可以使得线程之间的并行执行变为串行执行。具体看代码:public class JoinTest { public static void main(String [] args) throws InterruptedException { ThreadJoinTest t1 = new ThreadJoinTe...
2018-03-26 09:24:47
315
原创 java MQTT简单的订阅消息实例
1、首先需要启动Apollo服务(可参照上一篇文章http://blog.youkuaiyun.com/qq_29954971/article/details/79279419)2、新建java project项目服务端(发布消息):package com.activemq.mqtt;import org.eclipse.paho.client.mqttv3.MqttClient;imp
2018-02-07 14:54:49
20234
4
原创 MQTT协议--Apache Apollo服务
1、简介 MQTT是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。 ActiveMQ Apollo是一个更快,更可靠,更容易维护从原来的ActiveMQ的基础建立的消息代理。它使用完全不同的线程和消息调度体系结构来完成这个任务 。像ActiveM
2018-02-07 14:31:54
3266
转载 Mina框架项目运用
最近最一个项目对通信要求比较严格,需要建立长连接,且能处理多并发,所以选择了Mina框架,下面就简单记录开发的过程吧:mina 开发需要的jar包:mina pc端通信:服务端:package cn.ys.net;import org.apache.mina.core.session.IoSession;import org.ap
2018-01-24 17:28:38
1747
2
原创 Linux 基本操作命令
linux的目录结构home:家.用户的家 普通用户的家目录文件在home下 例如:一个用户tom 在home就会存在tom的目录root:超级管理员root的家etc:存放配置文件usr:存放共享的资源linux的命令常用的命令1、查看帮助: man 命令 退出帮助目录: q2、切换目录:cd cd 目录 cd 目录/目
2018-01-23 16:37:16
7083
原创 常用的正则表达式
常用正则表达式正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。用户名:/^[a-z0-9_-]{3,16}$/密码:/^[a-z0-9_-]{6,18}$/十六进制值:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/电子邮箱:/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a
2018-01-23 09:44:33
176
原创 JPA Column注解
知识点:@Column注解一共有10个属性,这10个属性均为可选属性,各属性含义分别如下:name name属性定义了被标注字段在数据库表中所对应字段的名称;unique unique属性表示该字段是否为唯一标识,默认为false。如果表中有一个字段需要唯一标识,则既可以使用该标记,也可以使用@Table标记中的@UniqueConstraint。nullable nullable属性表示该字段是
2018-01-19 11:32:55
12599
原创 SSH框架 配置log4j的方法
web.xml中的设定在web.xml中的详细设定如下:context-param> param-name>log4jConfigLocationparam-name> param-value>WEB-INF/log4j.propertiesparam-value> context-param> context-param> para
2018-01-18 16:46:18
506
转载 struts2前台传递List、Set、Map集合数据到后台
对应数据在前台与后天中的交互,struts2框架替我们做了很大部分的数据封装工作,这里就关于一些常见类型数据传递的格式和配置注意事项做简单的记录。 主要有简单类,List集合,Set集合,Map集合数据的在前台与后天间的传递与展示数据准备:基础类Student.class[java] view plain copy
2018-01-17 18:05:25
213
原创 hibernate 注解方式 属性mappedBy详解
遇到的问题:在hibernate一对多的注解中,由于没有添加mappedBy=“多端的关联属性名”,导致在更新数据时,外键被置空(null),意思是由多的一端来维护关系。(一般由有外键的一方来维护)解决方法:一:Author(作者) 多:Book(书籍)其代码分别如下:Author的pojo代码:package com.jason.domain;import java.io.Seria
2018-01-17 17:55:05
17872
原创 Oracle 数据库、实例、用户、表空间、表之间的关系
如图:1、数据库数据库是数据集合。Oracle是一种数据库管理系统,是一种关系型的数据库管理系统。通常情况了我们称的“数据库”,并不仅指物理的数据集合,他包含物理数据、数据库管理系统。也即物理数据、内存、操作系统进程的组合体。查询当前数据库名:select name from v$database;2、数据库实例用Oracle官方描述:实例是访问Oracle数据库所需的一部分计算机内存和辅助处理后
2018-01-12 11:58:43
1120
原创 struts2 注解方式配置action
使用注解来配置Action的最大好处就是可以实现零配置,但是事务都是有利有弊的,使用方便,维护起来就没那么方便了。要使用注解方式,我们必须添加一个额外包:struts2-convention-plugin-2.x.x.jar。虽说是零配置的,但struts.xml还是少不了的,配置如下: <!DOCTYPE struts PUBLIC "-//Apache So
2018-01-11 15:58:14
1010
转载 Java 泛型:通配符详解extends super
在java泛型中,? 表示通配符,代表未知类型,表示上边界限定通配符,表示下边界限定通配符。通配符与T的区别T:作用于模板上,用于将数据类型进行参数化,不能用于实例化对象。 ?:在实例化对象的时候,不确定泛型参数的具体类型时,可以使用通配符进行对象定义。 等同于 等同于 例一:定义泛型类,将key,value的数据类型进行参数化,而不可以使用通配符。public c
2018-01-10 15:03:10
975
原创 JAVA UDP发送中文字符乱码问题
String sendStr = "Hello 你好!"; System.out.println(sendStr.length() + " " + sendStr.getBytes().length); DatagramPacket dp = new DatagramPacket(sendStr.getBytes(), sendStr.getBytes().length,InetAddre
2018-01-10 14:45:31
1113
2
原创 maven构建 出错:cannot be resolved to absolute file path because it does not reside in the file system
问题总结:使用maven分模块组件项目的时候,domain中的实体的*.hbm.xml文件不能被spring扫描到,因为聚合的时候核心包已经达成jar包了,所以要去jar中去找hbm.xml文件<bean name="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
2017-12-11 17:14:49
8348
转载 线程的几种可用状态及运行机制
1. 新建( new ):新创建了一个线程对象。2. 可运行( runnable ):线程对象创建后,其他线程(比如 main 线程)调用了该对象 的 start ()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获 取 cpu 的使用权 。3. 运行( running ):可运行状态( runnable )的线程获得了 cpu 时间片( timeslice ) ,执行程序代码
2017-12-02 14:07:36
514
原创 MySQL 事物处理语句
概念:是一组执行逻辑单元的组成,也就是说一组执行逻辑单元就是一个整体,要么整体执行成功,要么整体执行失败。执行逻辑单元:其实就是一条sql作用:数据完整性
2017-09-19 10:06:28
715
原创 MySQL 基本操作--DML:数据操作语句(insert、delete、update)
插入语句(intsert)添加:添加一条数据:insert into 表名(字段名1,字段名2,字段名3...) values(值1,值2,值3);批量添加数据:insert into 目标表名(字段名1,字段名2,字段名3...) select 字段名1,字段名2,字段名3... from 源表更改:update 表名 set 字段名1=字段名1的值,字段名2=字
2017-09-16 15:17:48
1168
原创 MySQL 基本操作--DDL:数据定义语句(建表、更改表结构等等)
数据库的操作:创建数据库create database 数据库名称;显示数据库show databases;使用数据库use 数据库名;删除数据库存drop database 数据库名;表的操作:create table 表名(字段名1 数据类型,字段名2 数据类型,字段名2 数据类型,等等...)删除
2017-09-16 14:43:25
900
windows平台下查询tomcatCPU100%工具(附教程)
2018-08-01
log4j 同时按日期和文件大小分割日志
2018-07-20
登陆系统源码
2015-09-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人