自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(126)
  • 资源 (3)
  • 收藏
  • 关注

转载 Drools6 入门学习(一)——Drools6新特性

其实Drools6有挺多优秀的入门学习资料了,按理说没必要在重复别人的内容了。不过由于项目的需要,需要对Drools有个透彻的了解甚至说现有的中文资料都没法支持我把需求做出来,所以还是把基础打扎实把。所以什么是规则引擎,什么是Drools,就都先参考下以下资料吧。Drools5官方中文文档(供参考):http://pan.baidu.com/s/1sj6uoQpDrools6的入门资料:h...

2019-05-26 23:28:32 734

转载 log4j.xml简单配置样例说明

一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受(1)这里栗子有一点特别呀!给出了包名唉!想必有用,是的,配置文件中要特别说明一下的package test.log4j.test8;import org.apache.log4j.LogManager;import org.apache.log4j.Logg...

2018-10-19 11:20:58 2008

原创 2018届校招面试知识点

2018届校园招聘面试知识点总结如下:1、  full gc(虚拟机相关)2、  hashmap(源码级别)3、  单例模式写法(每种写法的优劣)4、  Java与C++(区别,相似)5、  Shiro(具体工作流程,比较)6、  学习方法(书,博客,论坛,如何解决困难,值得骄傲的地方,与其他人的优势。。。)7、  博客(最好是原创,不能太low)8、  同字母

2017-11-24 11:16:46 1229 1

原创 mysql高级包含索引建立优化_函数_存储过程_触发器_及游标

Mysql 高级部分 (1)索引(index)1(2)视图(view)2(3)触发器(trigger)6(4)游标(cursor)8(5)事务(Transaction)10(6)存储过程(Stored Procedure)12 (1) 索引(index)索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值

2017-11-24 10:48:19 742

原创 字母异序词

题目:Given two strings s and t, write a function to determine if t is an anagram of s.For example,s = "anagram", t = "nagaram", return true.s = "rat", t = "car", return false. 12345下面是我的实现算法:p

2017-11-24 09:30:33 1295

原创 Spring中IoC和AOP的理解

spring 的优点?1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能 5.容器提供了众多的辅助类,能加快应用的开发 6.spring对于主流的应用框架提供了集成支持,如hibernate,JPA,Struts等

2017-10-25 11:30:16 1728

原创 数据库存储过程,触发器,游标,函数

MySQL5 中添加了存储过程的支持。 大多数SQL语句都是针对一个或多个表的单条语句。并非所有的操作都这么简单。经常会有一个完整的操作需要多条才能完成。 存储过程简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。可将其视为批文件。虽然他们的作用不仅限于批处理。 为什么要使用存储过程:优点1 通过把处理封装在容易使用的单元中,简化复杂的操作。2 由于不要求反复建

2017-10-24 17:16:30 2543

原创 面向对象与面向过程语言的区别

计算机语言可以归为面向过程语言和面向对象语言,那么到底什么是面向对象,什么是面向过程呢?答:面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。可以拿生活中的实例来理解面向过程与面向对象,例如五子棋,面向过程

2017-10-24 15:43:41 38552 7

原创 Java与C++

Java与C++都是面向对象的语言,都使用了面向对象的思想(封装、继承、多态),由于面向对象由许多非常好的特性(继承、组合等),因此二者有很好的可重用性。主要不同点:1、Java为解释性语言,其运行过程为:程序源代码经过Java编译器编译成字节码,然后由JVM解释执行。而C/C++为编译型语言,源代码经过编译和链接后生成可执行的二进制代码,可直接执行。因此Java的执行速度比C/C++慢,

2017-10-24 15:08:28 397

原创 单例模式五种写法

单例模式算是设计模式中最容易理解,也是最容易手写代码的模式了吧。但是其中的坑却不少,所以也常作为面试题来考。本文主要对几种单例写法的整理,并分析其优缺点。很多都是一些老生常谈的问题,但如果你不知道如何创建一个线程安全的单例,不知道什么是双检锁,那这篇文章可能会帮助到你。1、懒汉式(线程不安全)当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。

2017-10-24 14:34:21 647

原创 jvm调优

1、JVM调优工具Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。JProfiler:商业软件,需要付费。功能强大。VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。2、如何调优观察内存释放情况、集合类检查、对象树上面这些

2017-10-22 21:42:08 248

原创 GC

1、什么是Minor GC、Major GC和Full GCMinor GC:从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC。Major GC:是清理老年代。Full GC:是清理整个堆空间—包括年轻代和老年代。这次GC是发生了Stop-The-World。2、full gc触发条件(1)调用System.gc时,系统建议执行Fu

2017-10-22 21:14:42 488

转载 shiro注解权限控制-5个权限注解

shiro注解权限控制-5个权限注解Shiro共有5个注解,接下来我们就详细说说吧RequiresAuthentication:使用该注解标注的类,实例,方法在访问或调用时,当前Subject必须在当前session中已经过认证。RequiresGuest:使用该注解标注的类,实例,方法在访问或调用时,当前Subject可以是“gust”身份,不需要经过

2017-10-01 10:58:24 785

转载 SpringMVC+Shiro权限管理

SpringMVC+Shiro权限管理  什么是权限呢?举个简单的例子:我有一个论坛,注册的用户分为normal用户,manager用户。对论坛的帖子的操作有这些:添加,删除,更新,查看,回复我们规定:normal用户只能:添加,查看,回复manager用户可以:删除,更新normal,manager对应的是角色(role)添加,删除,更新等

2017-10-01 10:11:18 361

原创 心得

1. HashMap中的hash计算方式(为什么)减少hash是的碰撞2. 下表查找(和hash值的关系)hashcode ^ (hashcode >>> 16),让低16位同时包含了高位和低位的信息,在计算下标时,由于高位和低位的同时参与,减少hash的碰撞。(n - 1) & hashCode:n - 1 使得低位全为1,高位全为0,位与之后的结果一定在0 ---> n-1范围

2017-09-26 09:58:23 339

转载 Tomcat原理详解及请求过程

Tomcat:  Tomcat是一个JSP/Servlet容器。其作为Servlet容器,有三种工作模式:独立的Servlet容器、进程内的Servlet容器和进程外的Servlet容器。Tomcat目录:tomcat  |---bin:存放启动和关闭tomcat脚本  |---conf:存放不同的配置文件(server.xml和web.xml);  |---doc:存放T

2017-09-25 23:09:55 548

原创 面经

java中用new创建一个对象的过程解析对于用new 创建一个对象,我们需要弄清楚它的过程:引用和创建一个对象的格式是:类名 变量名;变量名=new 类名(参数列表);比如 Vehicle veh1=new Vehicle();这个语句具体的执行过程是:1.右边的“new vheicle"是以vehicle类为模板,在堆空间里创建一个vehicle类对象

2017-09-21 11:56:55 791

转载 Netty

Netty是什么? 本质:JBoss做的一个Jar包 目的:快速开发高性能、高可靠性的网络服务器和客户端程序 优点:提供异步的、事件驱动的网络应用程序框架和工具 通俗的说:一个好使的处理Socket的东东  如果没有Netty? 远古:java.net + java.io 近代:java.nio 其他:Mina,Grizzly

2017-09-21 09:39:52 402

转载 Java多线程总结之线程安全队列Queue

在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。线程安全的类 ,指的是类内共享的全局变量的

2017-09-19 10:21:54 70298 1

转载 生产者/消费者模式(阻塞队列) 一个经典的并发模型

生产消费者模式也是关于线程阻塞的问题,生产消费者模式是通过观察者模式来实现的。之前在编写一个通讯软件的时候用到了这种模式,通过维护一个BlockingQueue来完成Socket的消息发送,后来读书时看到在服务器开发时三层模型中的Service层在调用Dao层的时候也是通过这种模式来调用的,具体怎么使用的还没有具体实践过,期待后面可以有机会练习这一块。实际的软件开发过程中,经常会碰到如下场景:

2017-09-18 23:06:23 2016

转载 Oracle数据库与MySQL数据库的区别

Oracle数据库与MySQL数据库的区别是本文我们主要介绍的内容,希望能够对您有所帮助。1.组函数用法规则mysql中组函数在select语句中可以随意使用,但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错eg:select name,count(money) from user;这个放在mysql中没有问题在or

2017-09-17 16:15:31 10378 1

转载 Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用

近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限,还请大家见谅!一:首先上几张案例截图,以便大家可以了解一下短信验证码的流程,这里我在做的过程中也参考了很多网站的短信验证码,比如:58同城,汽车之家等。1.点击获取验证码之前的样式:

2017-09-17 09:54:44 2091

转载 JAVA在ACM/各类在线笔试题中的使用

一、Java之ACM注意点1. 类名称必须采用public class Main方式命名2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非常之垃圾3. 有些OJ上的题目会直接将OI上的题目拷贝过来,所以即便是题目中有输入和输出文件,可能也不需要,因为在OJ系统中一般是采用标准输入输出,不需要文件4. 在有多行

2017-09-14 13:14:19 1675

原创 MySQL 按日期分表

一、表不存在时则创建  之前做项目实在是太赶了,很多东西都没记录。是时候补回来了  MySQL做一个大表,由于要存历史记录,所以数据量很大,查询很慢。恰好查询的时候,又不需要时间太久的冷数据。现在将其实现原理提取成一个控制台小程序。  首先,创建一个简单的数据库访问类。复制代码 public static class CommonDao { private static MySqlConnecti

2017-09-13 10:10:04 3647

转载 数据库事务隔离级别-- 脏读、幻读、不可重复读(清晰解释)

一、数据库事务隔离级别数据库事务的隔离级别有4个,由低到高依次为Read uncommitted 、Read committed 、Repeatable read 、Serializable ,这四个级别可以逐个解决脏读 、不可重复读 、幻读 这几类问题。√: 可能出现    ×: 不会出现脏读不可重复读幻读Read un

2017-09-07 12:36:07 676

原创 SSM框架原理,作用及使用方法

作用:SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层使用spring MVC负责请求的转发和视图管理spring实现业务对象管理,mybatis作为数据对象的持久化引擎原理:SpringMVC:1.客户端发送请求到DispacherServ

2017-09-06 09:17:06 463585 50

原创 springmvc和js前端的数据传递和接收方式

在springmvc中controller的结果集可通过json格式传到js前端接受,也可以通过Map传给前端,具体实现如下1,通过json格式传递   controller层实现如下   [java] view plain copy  @RequestMapping("queryCityInfo")      @ResponseBody

2017-09-05 22:41:37 5812 1

转载 使用Redis存储Nginx+Tomcat负载均衡集群的Session

环境:Cent OS 7.0(虚拟机环境)、Nginx 1.9.8、Redis 3.2.1一、背景在使用Nginx+Tomcat实现负载均衡的时候,由于Nginx对不同的请求分发到某一个Tomcat,Tomcat在运行的时候分别是不同的容器里,因为会出现session不同步或者丢失的问题。二、Nginx安装与配置1、Nginx安装网上的资源对于安装Nginx的介绍比较多,例如最

2017-09-03 10:10:44 491

转载 tomcat集群配置详解一之概念篇

1、概述之前是没有接触过分布式、集群等等的,对此只有一些概念性的东西。在收集资料的时候看到别人写了很多洋洋洒洒的文章,各种缓存,以及分布式服务器、各种分表、各种分库(Oracle集群)、各种分布式tomcat。所以本文主要是分享一下自己在实际做的过程中的一些心得,欢迎拍砖。(算不算无知者无畏呢?)2、概念2.1、首先对分布式和集群做区别分布式:注重的是解决问题的方式,多于思维模式。

2017-09-03 09:55:57 929

转载 Tomcat面试题目

1.tomcat给你你怎样去调优?1. JVM参数调优:-Xms 表示JVM初始化堆的大小,-Xmx表示JVM堆的最大值。这两个值的大小一般根据需要进行设置。当应用程序需要的内存超出堆的最大值时虚拟机就会提示内存溢出,并且导致应用服务崩溃。因此一般建议堆的最大值设置为可用内存的最大值的80%。在catalina.bat中,设置JAVA_OPTS='-Xms256m -Xmx512m',表示

2017-09-02 22:57:24 3439

原创 Servlet与JSP的区别

一、基本概念           1.1 Servlet          Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的J

2017-09-02 22:54:27 470

原创 Cookie与Session的区别

本文分别对Cookie与Session做一个介绍和总结,并分别对两个知识点进行对比分析,让大家对Cookie和Session有一个更深入的了解,并对自己的开发工作中灵活运用带来启示。cookie机制Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。IETF RFC 2965 HTTP State Management Mechanism 是通用cooki

2017-09-02 22:52:43 364

转载 Java中的ReentrantLock和synchronized两种锁定机制的对比

原文:http://www.ibm.com/developerworks/cn/java/j-jtp10264/index.html多线程和并发性并不是什么新内容,但是 Java 语言设计中的创新之一就是,它是第一个直接把跨平台线程模型和正规的内存模型集成到语言中的主流语言。核心类库包含一个Thread 类,可以用它来构建、启动和操纵线程,Java 语言包括了跨线程传达并发性约束的构造 —

2017-09-02 22:48:32 338

转载 Java8系列之重新认识HashMap

简介Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、Hashtable、LinkedHashMap和TreeMap,类继承关系如下图所示:下面针对各个实现类的特点做一些说明:(1) HashMap:它根据键的hashCode值存储数据,大多数情况下可以直接定位到它的值,因而具有很快的访问速度,但遍历顺序却是不确

2017-09-02 22:32:03 384

转载 java中的匿名内部类总结

匿名内部类也就是没有名字的内部类正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象方法12345678910111213141516abstract clas

2017-09-02 22:13:08 251

转载 Java 8的新特性

前言: Java 8 已经发布很久了,很多报道表明java8 是一次重大的版本升级。在Java Code Geeks上已经有很多介绍Java 8新特性的文章,例如Playing with Java 8 – Lambdas and Concurrency、Java 8 Date Time API Tutorial : LocalDateTime和Abstract Class Vers

2017-09-02 21:44:03 399

转载 Java集合---ConcurrentHashMap原理分析

集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3种并发集合类型(concurrent,copyonright,queue)中的ConcurrentHashMap,让我们从原理上细致的了解它们,能够让我们在深度项目开发中获益非浅

2017-09-02 21:13:29 366

原创 JAVA线程池原理以及几种线程池类型介绍

在什么情况下使用线程池?     1.单个任务处理的时间比较短     2.将需处理的任务的数量大     使用线程池的好处:     1.减少在创建和销毁线程上所花的时间以及系统资源的开销     2.如不使用线程池,有可能造成系统创建大量线程而导致消耗完系统内存以及”过度切换”。 线程池工作原理:为什么要用线程池?诸如 Web 服

2017-09-01 18:29:01 4156

转载 web前后台数据交互

1.利用cookie对象 Cookie是服务器保存在客户端中的一小段数据信息。使用Cookie有一个前提,就是客户端浏览器允许使用Cookie并对此做出相应的设置。一般不赞成使用Cookie。(1)后台代码12Cookie cookie=newCookie("name","hello");  response.addC

2017-08-31 17:07:56 3426 1

转载 Java中的锁

在学习或者使用Java的过程中进程会遇到各种各样的锁的概念:公平锁、非公平锁、自旋锁、可重入锁、偏向锁、轻量级锁、重量级锁、读写锁、互斥锁等待。这里整理了Java中的各种锁,若有不足之处希望大家在下方留言探讨。公平锁和非公平锁公平锁是指多个线程在等待同一个锁时,必须按照申请锁的先后顺序来一次获得锁。公平锁的好处是等待锁的线程不会饿死,但是整体效率相对低一些;非公平锁的好处是整体效率相对

2017-08-31 17:02:27 324

考研自动化专业排名

2017-02-20

考研英语复试口语

考研英语口语

2017-02-20

git的基本用法

git的基本用法

2017-02-20

空空如也

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

TA关注的人

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