自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MindMrWang的blog

一个菜鸟,不断学习摸索的经历~

  • 博客(114)
  • 资源 (2)
  • 收藏
  • 关注

原创 关于TCP的文章收藏

博主懒惰(惰性人都有),看了几篇关于TCP的文章写得很好,本着帮助大家和方便自己复习回顾,在这里将网址都记了下来: http://lib.csdn.net/article/computernetworks/16830 https://www.cnblogs.com/bincoding/p/5883131.html https://www.ddvip.com/weixin/20170508A0...

2018-04-26 11:08:31 290

转载 Oracle创建用户、角色、授权、建表

oracle数据库的权限系统分为系统权限与对象权限。系统权限( database system privilege )可以让用户执行特定的命令集。例如,create table权限允许用户创建表,grant any privilege 权限允许用户授予任何系统权限。对象权限( database object privilege )可以让用户能够对各个对象进行某些操作。例如delete权限允许用户删...

2018-04-24 15:34:10 342

原创 JavaTCP和UDP套接字编程

在我们刚开始入门Java后端的时候可能你会觉得有点复杂,包含了很多杂七杂八的知识,例如文件上传下载,监听器,JDBC,请求重定向,请求转发等等(当然也没有很多),但是我们自己真正的去开发一个小型网站(对安全性一起其他并发不作要求)的时候,其实我们会发现,Java后端是真的省事,好像除了CURD还是CURD,没有什么更新鲜的了。但是我们回顾计算机网络的知识提出疑问,计算机信息传输有TCP和UDP两种...

2018-04-23 16:27:21 743

原创 虚拟机工作站创建虚拟机并安装Linux教程

前言: 今天开始学习一下Linux,之前早就想看,但是一直没时间,最近把其他知识整理完了,终于有时间来看一下Linux了。 本节只是安装虚拟机工作站,虚拟机,和Linux操作系统的过程,详细的记录了我安装的过程,以便自己以后查阅,同样给大家提供参考。一丶什么是Linux:Linux是什么?不知道的同学自行去百度,出于人道主义,博主这里就帮你们搬到了这里,具体的我不想花时间去介绍它的...

2018-04-19 21:38:16 1759

原创 用阻塞队列和线程池简单实现生产者和消费者场景

本例子仅仅是博主学习阻塞队列和后的一些小实践,并不是真正的应用场景!生产者消费者场景是我们应用中最常见的场景,我们可以通过ReentrantLock的Condition和对线程进行wait,notify同通信来实现生产者和消费者场景,前者可以实现多生产者和多消费者模式,后者仅可以实现一生产者,一消费者模式。今天我们就利用阻塞队列来实现下生产者和消费者模式(里面还利用了线程池)。 看过我关...

2018-04-18 21:33:22 4045

原创 Java字节码反编译工具

1、jd-gui:最好用,有时反编译会遗漏。 http://jd.benow.ca/2、DJ Java Decompiler:jd-gui易用性上差一点,结果更准确。 http://www.neshkov.com/dj.html 3、jclasslib bytecode viewer:将字节码转化为JVM指令的工具。...

2018-04-18 17:34:56 655

原创 从源码看JDK提供的线程池(ThreadPoolExecutor)

一丶什么是线程池(1)博主在听到线程池三个字的时候第一个想法就是数据库连接池,回忆一下,我们在学JavaWeb的时候怎么理解数据库连接池的,数据库创建连接和关闭连接是一个比较耗费资源的事情,对于那些数量多且时间短暂的任务,会导致频繁获取和释放连接,这样使得处理事务的效率大大降低,多以我们创建一个连接池,里面放了指定数目的连接,当应用需要数据库连接的时候去里面获取,使用完毕后再放到连接池里,这样...

2018-04-17 21:07:50 204

转载 java运算符 与(&)、非(~)、或(|)、异或(^)

本篇文章是由于不懂“|”运算符(或运算)时转载!1.十进制转二进制 原理:给定的数循环除以2,直到商为0或者1为止。将每一步除的结果的余数记录下来,然后反过来就得到相应的二进制了。比如8转二进制,第一次除以2等于4(余数0),第二次除以2等于2(余数0),第三次除以2等于1(余数0),最后余数1,得到的余数依次是0 0 0 1 ,反过来就是1000,计算机内部表示数的字节长度是固定的...

2018-04-16 20:10:13 339

原创 Java中的阻塞队列

一丶什么是阻塞队列 阻塞队列(BlockingQueue)是一个支持两个可以进行阻塞插入和阻塞移除的附加方法的队列。 1)阻塞插入:当队列满后,队列会阻塞(拒绝)插入元素,直到队列不满。 2)阻塞移除:当队列为空时,队列会阻塞(拒绝)移除元素,直到队列里有元素。二丶JDK提供的7个阻塞队列ArrayBlockingQueue:由数组结构组成的有界阻塞队列LinkedBlockingQueu

2018-04-14 14:32:12 2010

原创 并发容器和框架之ConcurrentHashMap

了解HashMap的人都知道HashMap是线程不安全的(多线程下的put方法达到一定大小,引发rehash,导致闭链,最终占满CPU),同时线程安全的HashTable效率又令人望而却步(每个方法都进行同步,效率低下),所以在这种情境下为并发而生的ConcurrentHashMap就应运而生! 接下来我们按照以下顺序揭开ConcurrentHashMap的面纱:JDK1.6,1.7的Co...

2018-04-12 20:25:36 273

转载 深入理解CAS

本文转自:https://blog.csdn.net/mine_song/article/details/70140596 但是好像这个链接也是转载的,我点进去他的链接,发现根本不是那篇文章! 再将我看的那篇文章给的链接给出: 原文连接:http://blog.csdn.net/hechurui/article/details/49508473 如有侵权,请告知,立删! 还有一篇写的Vo...

2018-04-12 11:30:18 864

原创 Java的LockSupport工具,Condition接口和ConditionObject

在之前我们文章(关于多线程编程基础和同步器),我们就接触到了LockSupport工具和Condition接口,之前使用LockSupport工具来唤醒阻塞的线程,使用Condition接口来实现线程的等待和唤醒和Object方法里面的wait方法和notify方法。接下来我们就LockSupport和Condition进行展开:LockSupportConditionCondition...

2018-03-30 11:12:48 257

原创 从源码来看ReentrantLock和ReentrantReadWriteLock

上一篇花了点时间将同步器看了一下,心中对锁的概念更加明确了一点,知道我们所使用到的锁是怎么样获取同步状态的,我们也写了一个自定义同步组件Mutex,讲到了它其实就是一个简版的ReentrantLock,本篇文章我们就来看看ReentrantLock底层是怎么样的!目录结构: - ReentrantLock - 公平锁与非公平锁 - ReentrantReadWriteLockR...

2018-03-29 10:34:30 161

原创 浅析Java中的Lock和AbstractQueuedSynchronizer

在之前的文章中我也曾经介绍过Lock,像ReentrantLock(可重入锁)和ReentrantReadWriteLock(可重入读写锁),这些所我们在说的时候并没有详细的说明它们的原理,仅仅说明了它们的用法,今天我们就来看一看Java中Lock底层的原理,下一篇文章将分析ReentrantLock和ReentrantReadWriteLock! 以下大概就是我们本篇文章的内容:Lock...

2018-03-25 16:46:23 198

原创 2018 1/28随笔

苏北的天气真的是一天比一天冷,雪一场接着一场,冻得人直接不想动弹。 当前时间是一月二十八号,农历腊月十二,天气晴,自己在阳台喝着茶,无聊,不想打游戏,又不想看书,所以就来水一篇自己最近在干些什么。那我们正式的来拾捯拾捯我一月份都干了什么事,元旦过后结束假期,听说下一场考试是在七号(自己的人力资源二学历),两门考试,心里想这个简单,随随便便就能通过了,所以能这几天就看看自己的书(并发编程的艺术和深入

2018-01-28 14:40:55 224

原创 Java并发之底层实现原理学习笔记

本篇博文将介绍java并发底层的实现原理,我们知道java实现的并发操作最后肯定是由我们的CPU完成的,中间经历了将java源码编译成.class文件,然后进行加载,然后虚拟机执行引擎进行执行,解释为汇编语言,然后转为操作系统指令,然后转为1,0,最后CPU进行识别执行。提到java的并发,我们不由的就会想到java中常见的键字:volatile和synchronized,我们接下来就会从这两

2018-01-06 16:24:54 455

原创 SSH框架完全整合

大三学期渐末,事情也挺多的,上周就开始着手整合SSH框架,到现在才真正的完成,过程中碰到了许多小问题(小问题大折腾,哭脸.jpg)。本着善始善终的原则,最终把它给完成了。本篇文章就在: win7 64位,eclipse最新版(2017.9),Spring4.3.13,Hibernate5.0.1,Struts2.3.34 环境下,整合SSH。在末尾,我们也来使用Maven来整合一下(毕竟学了就要用

2017-12-28 21:57:56 315

原创 从初识Maven到使用Maven进行依赖管理和项目构建

前些天就安装了Maven,以备自己以后整合项目用,尤其是我们的ssh,ssm项目。想必好多人在开始的时候并不清楚Maven是什么,它能够帮助我们干什么。 所以在学习Maven之前我们一定要知道它是什么,并且知道它能够帮助我们干什么!Maven是什么: 这里博主就偷个懒,引用了百度百科上面的解释,它的解释可能不一定完全描述这个Maven,但是对于初学者我们知道这个就行了。Maven能够帮助我们

2017-12-20 10:36:02 1170

原创 12 Spring框架 SpringDAO的事务管理

上一节我们说过Spring对DAO的两个支持分为两个知识点,一个是jdbc模板,另一个是事务管理。 事务是数据库中的概念,但是在一般情况下我们需要将事务提到业务层次,这样能够使得业务具有事务的特性,来管理业务。 例如:在银行的转账系统中,张三转账给李四,需要完成从张三的账户上扣取指定金额并加到李四的账户上,这样一个过程需要具有原子性,即要成功都成功,要失败都失败。转账的过程即两个对账户更新,需要

2017-12-18 19:18:31 726

转载 数据库事务中的隔离级别和锁+spring Transactional注解

数据库事务中的隔离级别和锁数据库事务在后端开发中占非常重要的地位,如何确保数据读取的正确性、安全性也是我们需要研究的问题。 ACID 首先总结一下数据库事务正确执行的四个要素(ACID):原子性(Atomicity):即事务是不可分割的最小工作单元,事务内的操作要么全做,要么全不做,不能只做一部分; 一致性(Consistency):在事务执行前数据库的数据处于正确的状态,而事务执行完成后数据

2017-12-17 11:18:35 836

原创 11 Spring框架 SpringDAO的JdbcTemplate

上几个章节我们探讨了Spring的IoC和AOP,这是Spring的重点,但是Spring对jdbc的支持同样我们也不能忘记,毕竟我们还要通过Spring来管理DAO框架(例如Hibernate或者MyBatis等)。 Spring对DAO的支持分为大体可以分为以下两个点:Spring与jdbc模板Spring对事务的管理本节我们就来看看第一个知识点: Spring为我们提供了一套jdbc

2017-12-15 21:15:32 242

原创 10 Spring框架 AOP (三) Spring对AspectJ的整合

上两节我们讲了Spring对AOP的实现,但是在我们的开发中我们不太使用Spring自身的对AOP的实现,而是使用AspectJ,AspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法,所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件,如果我们要单独的使用Aspect,我们需要安装,并配置环境变量,但是Spring对AspectJ做了很好的

2017-12-09 17:28:06 385 1

原创 09 Spring框架 AOP (二) 高级用法

上一篇文章我们主要讲了一点关于AOP编程,它的动态考虑程序的运行过程,和Spring中AOP的应用,前置通知,后置通知,环绕通知和异常通知,这些都是Spring中AOP最简单的用法,也是最常用的东西,本节我们 要讲:对上节课的补充和AOP的高级使用,本文将以以下的顺序来进行分析:无接口的CGLIB动态代理有接口的CGLIB动态代理(一)无接口的CGLIB动态代理上一节我们示范

2017-12-08 18:46:09 279

原创 08 Spring框架 AOP (一)

首先我们先来介绍一下AOP: AOP(Aspect Orient Programming),面向切面编程,是面向对象编程OOP的一种补充。面向对象编程是从静态角度考虑程序的结构,面向切面编程是从动态的角度考虑程序运行过程。AOP底层,就是采用动态代理模式实现的。采用两种代理:JDK的动态代理,与CGLIB的动态代理。JDK的动态代理是面向接口的,CGLIB既可以实现有接口的,又可以实现没有接口的。

2017-12-08 14:37:42 225

原创 07 Spring框架 依赖注入(四)基于注解的依赖注入

前面几节我们都在使用xml进行依赖的注入,但是在实际的开发中我们往往偏爱于使用注解进行依赖注入,因为这样更符合我们人的思维,并且更加快捷,本节就来讲述Spring基于注解的依赖注入:信息注入注解@Component注解:表明当前类为一个组件(bean)@Value注解:为bean注入值@Autowired注解 :为bean注入其他bean(byType方式)@Qualifier

2017-12-07 15:16:40 317

原创 06 Spring框架 依赖注入(三)多配置文件

在Spring前几节的学习中我们都使用了一个配置文件,就像struts2中可以包含其他的配置文件,我们能不能使用多个配置文件呢(在工程比庞大,配置比较多的时候)?Spring多配置文件分为两种:平等关系的配置文件包含子配置文件(一)平等关系的配置文件 我们可以创建两个配置文件在包下 我们可以同时使用这两个配置文件在我们的应用当中,使用的方式由很多种,这里我举出比较常用的几种:①//Spri

2017-12-06 14:01:25 194

原创 Maven配置,显示不是内部命令,错误原因

今天学习使用maven,但是老是不成功,使用mvn-v 老是提示不是内部命令。 现在写下我的原因,以便他人查询。1丶在配置maven环境变量之前首先要保证自己的java环境变量是正确的。2丶在配置的时候我新建了一个MAVEN-HOME,然后在path下再将%MAVEN_HOME%\bin加入path后,然后进行测试:mvn-v,报不是内部命令。 所以将path下的%MAVEN_HOME%\bin

2017-12-04 12:19:34 3504 3

原创 判断一个链表是否回文(每日一道算法题)

回文:就是正序输出和逆序输出的顺序一致。 给出了两种方式(原来有三种,第三种太复杂,被我pass了)package LinkedList;import java.util.Stack;/** * @author:MindMrWang *2017年12月4日 *:function: */public class isPalindrome { public static void m

2017-12-04 10:59:38 289

原创 反转单向链表(每日一道算法题)

package LinkedList;/** * @author:MindMrWang *2017年12月3日 *:function:反转单向链表 */public class reverseList { public static Node getReverseList(Node head) { Node pre = null;//用来存储下反转后的第一个节点

2017-12-03 10:21:37 247

原创 Hibernate学习---缓存机制

前言:这些天学习效率比较慢,可能是手头的事情比价多,所以学习进度比较慢。在之前的Hibernate学习中,我们无论是CURD,对单表查询还是检索优化,我们好像都离不开session,session我们之间也简单的说过,它是一个缓存,这一篇文章就压就Hibernate的缓存进行一些介绍,我们将从以下几天进行:缓存的分类一级缓存快照二级缓存EHCache配置二级缓存内容配置总结一丶缓存的

2017-12-02 16:22:06 238

转载 JQuery Json的解析方式

这里首先给出JSON字符串集,字符串集如下: var data=" { root: [ {name:'1',value:'0'}, {name:'6101',value:'西安市'}, {name:'6102',value:'铜川市'}, {name:'6103',value:'宝鸡市'}, {name:'6104',value:'咸阳市'}, {name:'6105',value

2017-12-02 13:49:12 383

原创 JQuery提交数据(笔记)

向指定URL发送json数据$("#btnSend").click(function() { $("#request-process-patent").html("正在提交数据,请勿关闭当前窗口..."); $.ajax({ type: "POST", url: "RequestData.ashx", contentType: "app

2017-12-02 13:41:06 560

原创 删除链表的中间节点(每日一道算法题)

题目:删除一个链表的中间节点,当链表只有一个节点的时候或者head节点为空的时候返回head,当链表有两个节点的时候删除第一个节点,当链表有三个节点的时候删除第二个节点,当链表有四个节点的时候删除第二个节点,当链表有五个节点的时候删除第三个节点……分析:一个链表长度每增加二,要删除的节点就后移一个节点,要删除一个节点需要知道它的前一个节点。Code:public static Node remove

2017-12-02 13:08:42 994

原创 Java调用微信扫码支付接口(模式二)

前些天帮朋友实现了一个微信扫码的接口,在之前也是不会搞这个东西,抱着试试的心态就开始看各种文档和blogs,大多数人都在吐槽微信给的java调用微信接口文档太含糊,而且网上的查到的资料也不详细,只有大概的开发流程没有太多细节上的讲解,最后还是花了一些钱买了一套视频和demo(理清了我的思路),最后完成了开发,如果有同学需要的话可以给我留言,我将免费提供帮助(可能不能及时回复)。(在这之间我们需要申请

2017-12-01 17:03:50 3404 35

原创 使用谷歌zxing生成二维码

最近可能是偷懒了,也没更新自己的博客(其实是在帮朋友做一个微信扫码支付接口),忙的没有时间更新博客。在做这些东西的时候也学到了一些东西。 今天就来讲讲用谷歌的zxing来生成一个二维码: 首先需要两个jar包: 然后我们给出我们的code:package testJavaSE;import java.io.File;import java.util.HashMap;import jav

2017-11-29 10:50:58 441

原创 Hibernate学习---检索优化

Hibernate框架对检索进行了优化,前面我们将CURD的时候提到了load和get的区别,当时仅仅说了load为延迟加载,get为立即加载,当检索的记录为空的时候load报错(不是在执行load方法的时候报的错,是执行后面的操作报的错),get返回null。 其实load就是对检索的一种优化,它的作用是当程序执行检索代码的时候,在缓存中没有的前提下,不会立即去数据库中查询,而是等真正用到的时候

2017-11-24 22:07:39 241

原创 Hibernate学习---关联关系映射

关联关系是用到的最多的一种关系,非常重要,在内存中反映为实体关系,映射到DB中主键外键关系,实体间的关联,即对外键的维护,关联关系的发生,即对外键数据的改变。 在这里就不赘述什么是外键什么是主键了。一丶关联的的数量实体对象间的关联从数量上可以划分为1:1(一对一)1:N(一对多)N:1(多对一)M:N(多对多)二丶关联属性Java代码实体定义中,声明另一个实例类类型或其集合类型的属性,称

2017-11-23 13:21:31 318

原创 用栈实现队列(每日一道算法题)

用两个栈实现队列,支持列的基本操作(add,poll,peek)package stack;import java.util.Stack;/** * @author:MindMrWang *2017年11月14日 *要求:*用两个栈实现队列,支持列的基本操作(add,poll,peek)* *:function:用两个栈实现一个队列 *可以将一个栈设为主栈,另外一个栈设置为传输栈,先将数放

2017-11-22 15:17:59 208

原创 删除链表的倒数第K个节点(每日一道算法题)

单向链表,删除它的倒数第K个节点//节点类package LinkedList;/** * @author:MindMrWang *2017年11月22日 *:function:链表节点 */public class Node { public int value; public Node next; public Node() { } public

2017-11-22 11:20:30 329

原创 Hibernate学习---单表查询

我们都知道SQL是非常强大的,为什么这么说呢?相信学过数据库原理的同学们都深有体会,SQL语句变化无穷,好毫不夸张的说可以实现任意符合我们需要的数据库操作,既然前面讲到Hibernate非常强大,所以Hibernate也是能够实现SQL的一切数据库操作。在SQL中,单表查询是最常用的语句,同理Hibernate最常用到的也是查询语句,所以今天就来讲讲Hibernate的单表查询:今天要将的内容分以下

2017-11-21 12:04:23 365

J2SE6.0完全手册

J2SE6.0完全手册,用于java后台开发参考方法和类。J2SE6.0完全手册,用于java后台开发参考方法和类。J2SE6.0完全手册,用于java后台开发参考方法和类。

2017-09-01

网页制作完全手册.chm

网页制作完全手册.chm用于开网站,方法和标签的查询。

2017-08-31

空空如也

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

TA关注的人

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