- 博客(25)
- 资源 (6)
- 问答 (3)
- 收藏
- 关注
转载 纯干货,Spring-data-jpa详解,全方位介绍
转自:http://www.cnblogs.com/dreamroute/p/5173896.html 本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求。这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring整合的环境中实现。如果需要了解该框架的入门,百度一下,很多入门的介绍。在这篇文
2017-09-08 15:57:24 374
原创 java学习笔记(5)-HashSet类
1.HashSet介绍 HashSet基于Set接口的实现,内部存储数据是用的HashMap,其操作都是基于HashMap的 2.几个重要的参数 private transient HashMap map;//内部存储数据 private static final Object PRESENT = new Object();//构造一个空虚拟的对象 public HashS
2017-08-16 22:22:56 259
原创 java学习笔记(4)-Hashtable类
1.几个变量值: private transient Entry[] table; private transient int count; private int threshold; private float loadFactor; private transient int modCount = 0; 对比上一篇介绍的HashMap,这几个变量表达的意思基本上差不多 2.构造
2017-08-11 10:42:35 275
原创 java学习笔记(3)-HashMap类
1.HashMap介绍 HashMap基于哈希表的 Map 接口的实现。可使用 null 值和 null 键。(除了不同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 值得注意的是HashMap不是线程安全的,如果想要线程安全的HashMap,可以通过Collections类的静态方法synchron
2017-08-08 19:24:14 1370
原创 java学习笔记(2)-ArrayList类
1.为了方便查看我把源码几个方法和变量复制出来了 package com.itao.study.study2; public class ArrayList { private static final int DEFAULT_CAPACITY = 10; private static final Object[] EMPTY_ELEMENTDATA = {}; private st
2017-08-08 16:19:02 261
原创 redis安装
官网下载安装包 1.安装部分 编译安装 tar -zxvf /usr/redis cd /usr/redis/redis-4.0.1 make 启动redis-server cd /usr/redis/redis-4.0.1/src ./redis-server 测试是否正常启动 ps -ef | grep redis netstat -tupln
2017-08-07 17:24:14 265
原创 java学习笔记(1)-Object类
以下系列笔记都是基于jdk1.8 首先看下Object类的源码,其方法如下: private static native void registerNatives(); static { registerNatives(); } public final native Class getClass(); public native int hashCode(
2017-08-07 15:59:17 212
原创 JVM学习笔记(9)-性能监控
1.linux下命令: uptime top vmstat vmstat 1 4 :每秒钟采样一次总共采样4次 windows下的命令: perfmon pslist 2.jps命令:虚拟机进程状况工具 命令:jps [options] [hostid] 如果不指定hostid默认当前主机或服务器,命令行参数如下: 3.js
2017-08-07 13:52:21 235
原创 JVM学习笔记(8)-锁优化技术
1.几个概念: (1)对象头(Mark Word): 在Hotspot虚拟机中,对象在内存中的存储布局分为三块区域:对象头,实例数据、对其填充 对象头包含两部分信息:一是用于存储对象自身的运行时数据,如哈希码、GC分代年龄、锁状态标识、线程持有的锁、偏向线程ID、偏向时间戳等; 对象头的另一部分是;类型指针,即对象指向它的类的元数据的指针,虚拟机通过这个指针来确定这个对象是哪个实例。如果对
2017-08-06 11:36:29 289
原创 JVM学习笔记(7)-字节码执行引擎
1.运行时栈帧 栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构,是虚拟机运行时数据区中的虚拟机栈的栈元素。 栈帧中存储了方法的局部变量表、操作数栈、动态链接和方法的返回地址等信息。 每一个方法从调用开始到执行完成,都对应一个栈帧在虚拟机里面的入栈和出栈 在编译的时候栈帧需要多大的局部变量表、多深的操作数栈都已经确定了,并写入到方法表的Code属性中。 一个线程中的方法调用链
2017-08-05 11:38:13 275 1
原创 JVM学习笔记(6)-类加载机制
1.类的生命周期 虚拟机吧描述类的数据从Class文件加载到内存,并对数据进行校验、转换、解析、初始化,最终形成可以被虚拟机直接使用的java类型,这就是虚拟机的类加载机制。 与其他在编译时进行连接工作的语言不同,java语言中,类型的加载、连接、初始化都是在程序运行期间完成的,故java可以动态加载和动态连接的特点 类从被加载到虚拟机内存中开始,到卸载为止,整个生命
2017-08-04 10:34:40 217
原创 JVM学习笔记(5)-JVM参数
1.调试相关参数 -XX:+PrintGCDetails 打印GC详细信息 -XX:+PrintGC 打印GC -XX:+PrintHeapAtGC 每次GC前后打印堆信息 -XX:+PrintClassHistogram 按下ctrl+break后输出类统计信息 -XX:+OnOutOfMemoryError 虚拟机内存溢出时指定指定的命令 -XX:+OnErro
2017-08-02 22:08:17 235
原创 JVM学习笔记(2)-JVM部分异常情况
在java虚拟机中除了程序计数器外,其他的区域都是可能发生OutOfMemoryError的(OOM) 一下所有例子都是基于jdk1.8 1.Java堆溢出 2.虚拟机栈和本地方法栈溢出 -Xss可以设置栈的深度 如果线程请求栈的深度大于虚拟机中所允许的最大深度将抛出StackOverFlowError异常; 如果虚拟机在扩展栈是没法申请
2017-08-01 10:30:47 209
原创 JVM学习笔记(4)-内存分配与回收策略
在这里由于我的jdk环境是1.8的,JVM内存布局与1.7有很大的不同: jdk1.7以及之前的java类信息,静态变量,常量池均保存在永久代中(Perm),类的元数据和静态变量在类加载的时候分配到 Perm,当类被卸载的时候垃圾收集器从 Perm 处理掉类的元数据和静态变量。当然常量池的东西也会在 Perm 垃圾收集的时候进行处理。 JDK 1.8 的对 JVM 架构的改造将类元数据放到本地
2017-07-31 16:10:18 236
原创 JVM学习笔记(3)-垃圾收集
1.GC回收的是方法区和堆区的内存空间 jvm把内存区域分为5个部分,线程共有的方法区和堆,线程私有的虚拟机栈、本地方法栈、程序计数器 线程私有的内存空间在线程消亡的时候内存自动回收,垃圾回收(GC:Garbage Collection)的主要是指线程共有的方法区和堆区部分 GC在回收前首先要判断对象是否存活 2.判断对象是否存活 (1)引用计数法: 一种古老的判断对象是否存活
2017-07-30 17:51:00 224
原创 JVM学习笔记(1)-虚拟机内存
1.Java内存分布 Java程序运行的时候会向操作系统申请内存,这部分内存称为虚拟机内存,这部分内存包含以下几个区域 线程共有部分有:方法区和堆,这里是主要涉及到多线程同步问题的区域 线程私有部分:虚拟机栈,本地方法栈,程序计数器 (1)方法区:线程共享,主要用来存放虚拟机加载的类信息、常量、静态变量。也称之为永久区,设置参数有 -XX:MaxPermSize
2017-07-30 11:25:18 227
原创 JMS学习笔记(1)- 基本概念
参照:http://docs.oracle.com/javaee/6/tutorial/doc/bncdx.html 1.JMS整体结构: 2.JMS两种消息模型: (1)point-to-point模型,有三个特点如下: 架构示意图如下 (2)Public/Subscribe模型,两个特点如下: 架构示意图如下:
2017-07-26 10:50:22 273
原创 linux开启两个tomcat
1.修改tomcat/conf下server.xml文件端口号: 主要有如下下面三个: 将Server port="8005" 改为9005 将Connector port="8080"改为9080 另一个Connector port="8009" 改为9009 2.如此先启动一下tomcat,发现启动不了 3.修改tom
2017-05-16 11:27:11 336
原创 tomcat7吗默认JVM设置
1.首先进入tomcat主目录,conf/tomcat-user.xml 添加用户如下: 2.打开tomcat控制台,点Server Status 3.输入第一步设置的用户名和密码:
2017-05-11 10:17:56 1040 1
原创 读书笔记--MySQL(1)
sql基础: 1)显示有几个数据库 show databases; 2)创建一个数据库 create database dbname; 3)删除一个数据库 drop database dbname; 4)使用数据库 use dbname; 5)展示数据库dbname下有哪些表 show tables; 6)在数据库dbname下创建表tbname create table
2017-04-02 10:50:09 367
原创 Windows上传文件到centos7服务器
1)首先linux上是否装上了ftp服务,命令:rpm -qa | grep vsftpd 若没有安装则进行第二步安装 2)安装ftp服务,命令:yum -y install ftp vsfftpd 3)由于是默认安装,我们查看一下配置文件路径,命令:rpm -qc vsftpd 4)修改配置文件:vsftpd.conf 5)vi 修改
2017-03-24 10:36:06 23732 2
原创 (3) Spring boot静态资源文件获取
这一篇文章介绍spring boot项目静态资源文件引用的方式: 分两个部分:静态页面加载资源文件和后台java代码加载资源文件 1)举例:页面引用jquery.js a)引用远程jquery资源,比如这样的 script type="text/javascript" src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js">scr
2017-03-23 10:29:15 772
原创 (2) spring boot 入门Hello World
前一篇写到用Idea搭建 spring boot项目,现在开始写一个Hello World项目 1)新建一个控制器MyController.java 注意:新建的类要想被Spring Mvc管理起来,必须放到DemoApplication类同级目录或其子目录下,否则不会扫描到相应的组件 DemoApplication.java是spring boot的启动类,相当于main函数,网上
2017-03-22 12:02:45 913
原创 (1) Spring Boot + Gradle +Spring MVC项目搭建
使用Intellij Idea搭建Spring Boot + Gradle +Spring MVC项目 1) 打开Idea创建一个新项目(若没有出现以下这个界面则:File - New - Project 亦可) 2)在这里选择用模板建立spring boot项目,选择Spring Initializr,选择该项后会自动从网上下载相应的jar(当然你也可以设置自己的Init
2017-03-22 11:29:20 1171
mysql安装后用netstat -an怎么没有localhost或者127.0.0.1
2015-08-05
mysql服务启动不了,是怎么回事
2015-05-25
spring3中的hibernateTemplate怎么拿不到数据
2015-05-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人