自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 资源 (1)
  • 收藏
  • 关注

转载 连接池的意义及阿里Druid(转)

连接池的意义及阿里Druid连接池的意义建立数据库连接是相当耗时和耗费资源的,而且一个数据库服务器能够同时建立的连接数也是有限的,在大型的Web应用中,可能同时会有成百上千个访问数据库的请求,如果Web应用程序为每一个客户请求分配一个数据库连接,将导致性能的急剧下降。为了能够重复利用数据库连接,提高对请求的响应时间和服务器的性能,可以采用连接池技术。连接池技术预先建立多个数据库连接对象,然后将...

2019-09-17 10:37:00 433

原创 sleep和wait的区别

sleep和wait的区别1.sleep方法是Thread类的静态方法,wait()是Object超类的成员方法2.运行原理sleep()方法导致了程序暂停执行指定的时间,让出cpu该其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。在调用sleep()方法的过程中,线程不会释放对象锁。而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待...

2019-09-16 16:47:05 248

原创 BeanFactory和FactoryBean(转)

BeanFactory和FactoryBean原文链接:https://www.jianshu.com/p/05c909c9beb0BeanFactory是一个接口,public interface BeanFactory,提供如下方法:Object getBean(String name)<T> T getBean(String name, Class<T> r...

2019-09-16 16:24:11 206

原创 Java面试合集(Web篇)

Java面试合集(Web篇)1.讲一下http get和post请求的区别?共同点:都是http请求,用来操作url的get和post都是http的请求方式,用户可以通过不同的http请求方式来完成对资源(url)的操作,get,post,put,delete就对应着对这个资源的查,改,增,删 4个操作。具体点来讲get一般用于获取/查询资源信息,而post一般用于更新资源信息不同...

2019-09-16 11:23:14 237

原创 Java面试合集(基础篇)

Java面试合集(基础篇)1.Java跨平台原理为什么要跨平台?由于各种操作系统支持的指令集,不是完全一致的,就会让我们的程序在不同的操作系统上要执行不同程序代码变得复杂。(操作系统指令集的差异性)怎么去实现跨平台的?Java开发适用于不同操作及位数的Java虚拟机来屏蔽系统之间的差异,提供统一的接口,对于我们Java开发者而言,只需要安装上对应的不同Java虚拟机,这时候你的Java...

2019-09-12 14:12:17 269

原创 Zookeeper——Zookeeper是什么

Zookeeper——Zookeeper原理分析一、Zookeeper是什么?1.Zookeeper是一个数据库:Zookeeper是可以存数据的,Zookeeper数据库里的数据节点分为:持久化节点和临时节点create命令创建节点:create /节点 内容delete命令删除节点:delete /节点 内容get命令获取节点内容:get /节点Zookeeper是一...

2019-09-09 16:43:02 1288

转载 Zookeeper——分布式协调技术与Zookeeper(转)

Zookeeper——初始Zookeeper(转)原文链接:http://www.cnblogs.com/sunddenly/p/4033574.html一、分布式协调技术在给大家介绍ZooKeeper之前先来给大家介绍一种技术——分布式协调技术。那么什么是分布式协调技术?那么我来告诉大家,其实分布式协调技术 主要用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种临界资源,...

2019-09-09 14:12:20 131

原创 线程死锁问题

线程死锁问题一、什么是死锁?举个例子来说明:早上起来两个男生上卫生间,其中男生A先跑去了卫生间,男生B拿到了卫生纸;然后男生A需要纸巾,男生B又需要卫生间,他们两个又不做出想让,都不想把自己的资源交给对方,那么就会在这里堵住,你等着我,我等着你。在线程中,多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放,而该资源又被其他线程锁定,从而导致每一个线程都得等其它线程释放其锁定的资源...

2019-09-05 17:31:07 133

原创 HashMap原理分析

(一)、HashMapJDK1.7:数组+链表JDK1.8:hash表=数组+链表+红黑树什么是哈希表?哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。一、HashMap底层数据结构分析链表长...

2019-09-03 19:38:49 346

原创 SpringBoot——SpringBoot运行原理源码分析

SpringBoot——SpringBoot运行原理分析SpringBoot的核心思想:自动配置一、分析pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSc...

2019-09-02 14:58:13 817

原创 SpringBoot——教你使用IDEA快速构建SpringBoot项目

SpringBoot——使用IDEA快速构建SpringBoot项目创建新项目选择使用spring构建项目等待加载项目信息(有时候会比较慢,稍等片刻)选择需要的模块,先选择一个web模块,可以选择多个,看自己需求(在后期可以添加)完成创建项目一个springboot的maven项目就创建成功了...

2019-09-01 18:22:33 177

原创 SpringBoot——初始SpringBoot、第一个SpringBoot项目

SpringBoot——初始SpringBoot、使用IDEA构建第一个SpringBoot项目一、SpringBoot什么是SpringBoot?回顾Spring,Spring是一个轻量级的Java开源框架。SpringBoot是为了简化Spring而产生的一个JavaWeb开发的框架。在SpringBoot最重要的就是 “约定大于配置” 。SpringBoot是如何简化开发的?1....

2019-09-01 17:58:08 238

原创 理解RESTful架构(转载)

理解RESTful架构(转载)越来越多的人开始意识到,网站即软件,而且是一种新型的软件。这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。网站开发,完全可以采用软件开发的模式。但是传统上,软件和网络是两个不同的领域,很少有交集;软件开发主要针对单机环境,网络则主要研究系统之间的通信。互联网的兴起,使得这两个领域...

2019-08-31 23:40:45 250

原创 SpringBoot——SpringBoot、SpringClould、微服务

SpringBoot——SpringBoot、SpringClould、微服务一、SpringBoot简介1.回顾Spring如何简化开发1.基于POJO的轻量级和最小侵入性编程;2.通过依赖注入DI和面向接口编程实现松耦合3.使用AOP面向切面编程实现声明式编程4.通过切面和模版减少样式代码;虽然使用Spring是可以简化Java开发,但是当我们的项目变得庞大的时候,项目整合开发需...

2019-08-31 23:21:23 475

原创 SSM框架终极篇——Spring、SpringMVC、MyBatis整合练习(超级详细)

SSM框架终极篇——Spring、SpringMVC、MyBatis整合练习一、准备工作环境:新版IDEAMySQL 5.7Tomcat 9.0.2Maven要求:熟练掌握MySQL数据库掌握Spring、SpringMVC、MyBatis框架知识了解简单的前端知识(JSP、BootStarp)二、项目编写1.创建数据库CREATE DATABASE `ssmbu...

2019-08-23 23:38:37 306

原创 SpringMVC——拦截器

SpringMVC——拦截器一、拦截器、过滤器SpringMVC的处理器拦截器类似于Servlet开发中我们使用过的过滤器Filter,用于对处理器进行预处理和过后处理。过滤器:过滤器是servlet规范中的一部分,任何javaweb工程都可以使用在web.xml的url-pattern中可以配置过滤器,/*可以对所有访问的资源进行拦截拦截器:拦截器属于SpringMVC框架独...

2019-08-23 17:02:12 129

原创 SpingMVC——文件的上传下载

SpingMVC——文件的上传下载一、文件上传文件上传所需要的jar包:commons-fileupload我们要想使用文件上传功能就必须导入commons-fileupload这个依赖包,它会自动帮我们导入他的依赖包 commons-io包 <!--文件上传--> <dependency> <groupId>commons-f...

2019-08-23 15:01:02 97

原创 SpringMVC——异步交互技术AJAX

SpringMVC——异步交互技术AJAX一、AJAX简介AJAX :Asynchronous JavaScript and XML(异步的 JavaScript 和 XML),AJAX并不是一门新的编程语言,而是一种使用现有标准的新方法。AJAX最大的特点就是能在不加载整个页面的情况下,能够与服务器交换数据并更新部分网页内容。传统的网页(不使用Ajax技术的网页)想要更新内容或者提交一个表...

2019-08-22 22:06:35 379 1

原创 SpringMVC——JSON

SpringMVC——JSON一、什么是JSONJSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效...

2019-08-22 09:43:51 152

原创 SpringMVC——SpringMVC的几种结果跳转方式

SpringMVC——SpringMVC的几种结果跳转方式一、环境搭建新建Maven的web项目1.在pom.xml中导入jar包依赖 <!-- Spring MVC 及 Spring系列包 --> <dependency> <groupId>org.springframework</groupId> <...

2019-08-16 23:26:57 196

原创 SpringMVC——RESTful风格介绍,案例解析

SpringMVC——RESTful风格一、RESTful风格1.概念RESTful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。2.传统方式操作资源,RESTful风格操作资源资源:在互联网上,所有的事物都可以被抽象为资源资源操作:使用POST、DEL...

2019-08-16 22:45:25 209

原创 SpringMVC——Controller配置总结,@RequestMapping

SpringMVC——Controller配置总结一、实现Controller的方式我们在SpringMVC中定义Controller有两种方式,一种是实现接口,另一种是使用注解。1.实现接口的方式:新建类实现Controller接口(注意导包问题:是org.springframework.web.servlet.mvc.Controller包下,接口中只有一个handleRequest...

2019-08-16 20:17:12 1578

原创 SpringMVC——第一个SpringMVC程序(贴合原理的实现方式 / 注解简化版)

SpringMVC——第一个SpringMVC程序(贴合原理的实现方式 / 注解简化版)一、Hello SpringMVC(贴合原理的实现方式,复杂)1.使用Maven构建一个Web项目2.导包 <!-- Spring MVC 及 Spring系列包 --> <dependency> <groupId>org.springfr...

2019-08-15 21:48:23 219

原创 SpringMVC——初识SpringMVC,SpringMVC原理

SpringMVC——初识SpringMVC一、什么是MVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。就是将业务逻辑层、数据层、显示层分离的一种方法。MVC主要作用就是降低了视图与业务逻辑间的双向耦合。MVC不是一种设计模式,MVC是一种框架模式。...

2019-08-15 19:54:15 267

原创 Spring——Spring使用注解开发

Spring——Spring使用注解开发一、注解开发步骤1.导包:spring一系列包 <!--spring web mvc --> <dependency> <groupId>org.springframework</groupId> <artifactId...

2019-08-12 22:53:41 193

原创 Srping——Spring中的声明式事务配置

Srping——Spring中的声明式事务一、声明式事务在Spring中支持两种事务处理机制:编程式事务:把事务的代码都写在业务中声明式事务:使用AOP横切进去(一般会使用声明式事务)我们要开启Spring的声明式事务处理功能,在Spring配置文件种创建一个DataSourceTransactionManager对象,事务管理器是需要一个数据源dataSource的<bea...

2019-08-12 20:20:03 203

原创 Spring——事务的特性、隔离机制(转)

Spring——事务的特性、隔离机制(转)一、事务1.事务在项目开发中非常重要,涉及到数据一致性问题,不容马虎2.事务的四大特性:原子性:  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性:  一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执...

2019-08-12 19:54:27 211

原创 Spring——Spring整合MyBatis详解、代码实现

Spring——Spring整合MyBatis一、回忆MyBatisMyBatis的实现步骤:导包:mybatis的包,mysql驱动包,junit包编写实体类编写配置mybatis-config.xml配置文件编写Dao层接口编写接口对应的映射文件userMapper.xml在mybatis-config.xml配置文件中注册映射文件编写MyBatis工具类测试二、My...

2019-08-12 19:30:27 289

原创 Spring——Spring中的AOP实现

Spring——Spring中的AOP实现编写业务层接口package com.muhan.service;//service层接口public interface UserService { void add(); void delete(); void update(); void query();}编写业务层实现类package com.mu...

2019-08-12 17:39:12 97

原创 Spring——Spring中的AOP简介、原理

Spring——AOP学习一、什么是AOPAOP(Aspect Oriented Programming),面向切面编程。AOP是OOP(Object Oriented Programming)面向对象编程的延续。AOP是可以通过预编译方式和运行期动态代理的方式在不修改源代码的情况下给程序统一添加功能的一种技术。AOP实际上是GoF(Gang of Four,GOF设计模式,四人组)的一种...

2019-08-12 16:58:44 294

原创 Spring——AOP学习(静态代理和动态代理模式)

Spring——AOP学习(静态代理和动态代理模式)一、代理模式我们知道学习Spring最重要的两个知识点就是IOC和AOP,AOP的主要思想就是动态代理模式。在了解AOP之前我们必须学习动态代理模式。代理模式又分为静态代理和动态代理。二、静态代理在学习多线程的时候我们已经学了了静态代理,我们这里回顾一下。什么是静态代理?拿出之前学习静态代理的例子:加入你要结婚,是不是需要找个婚庆公...

2019-08-12 16:05:13 236

原创 Spring——Spring依赖注入DI(各种类型的元素注入)、p命名空间、c命名空间

Spring——Spring依赖注入DI(各种类型的元素注入)、p命名空间、c命名空间一、各种类型的元素注入实体类pojoUserpackage com.muhan.pojo;import java.util.*;public class User { //常量 private String name; //对象 private Teacher t...

2019-08-08 17:23:11 382

原创 Spring——SpringIOC创建对象的方式、Spring配置文件简单介绍、Bean作用域及自动装配

Spring——SpringIOC创建对象的方式、Spring配置文件简单介绍一、SpringIOC创建对象的方式我们平时在创建对象的时候会使用无参构造、有参构造的方式创建。那么我们来看看Spring中怎么处理这两种情况。创建实体类,并在实体类构造和set方法内部输出测试package com.muhan.pojo;public class User { private int...

2019-08-08 16:43:52 187

原创 Spring——第一个Spring程序HelloSpring

Spring——第一个Spring程序HelloSpring1.创建普通的Maven项目2.导入jar包<dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version...

2019-08-08 15:32:25 137

原创 Spring——Spring核心-IOC/DI

Spring——Spring的IOC1.IOC是什么?IOC(Inversion of Control),即控制反转。IOC并不是什么技术,只是一种设计思想。在Java开发中,IOC意味着将设计好的对象交给Spring容器控制,而不是传统的在对象的内部控制。要理解IOC反转控制就要明确两个问题:谁控制谁,控制什么?:传统的JavaSE程序设计的时候,我们直接可以在对象的内部通过new关键...

2019-08-08 14:59:13 154

原创 Spring——初识Spring

Spring——初识Spring1.Spring简介在我们之前使用的Servlet,JDBC,JSP进行JavaWeb开发的时候,有个著名的词叫做:“单体地狱”。代码量是相当的大,直到框架的出现才简化了Web开发。比如说我们之前学过的MyBatis,就是替代了JDBC的框架,让我们不去写复杂重复的JDBC代码。后来又出现了开源框架:Spring(寓意着软件行业的春天),Spring 是一个轻...

2019-08-08 13:31:44 197

原创 MyBatis——MyBatis动态SQL,缓存(转)

MyBatis——MyBatis动态SQL,缓存1.动态SQLMyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。动态SQL就是指根据不同查询条件,生成不同的SQL语句在 MyBatis 之前的版本中,有很多元素需要花时间了解。MyBatis 3 大大精简了元素种类,现在只需学习原来一半的元素便...

2019-08-07 16:54:35 161

原创 MyBatis——MyBatis处理多对一,一对多

MyBatis——MyBatis处理多对一,一对多在我们日常的开发当中,难免遇到多对一和一对多的问题,比如:多个学生对应一个老师(多对一);一个老师对应多个学生(一对多)数据库:学生表:老师表:1.多对一方式一:按照查询结果嵌套处理,模拟数据库思想:联表查询。对应数据库编写Student和Teacher实体类:package com.muan.pojo;public cl...

2019-08-07 16:46:59 161

原创 MyBatis——MyBatis再度优化:使用注解开发,工具类自动事务提交

MyBatis——MyBatis再度优化:使用注解开发,工具类自动事务提交1.工具类优化之前我们的工具类没有事务提交,我们就需要在测试的时候人工判断是不是增删改(查询不需要添加事务),为了简化,我们这次将事务提交写在工具类中package com.muan.utils;import org.apache.ibatis.io.Resources;import org.apache.iba...

2019-08-04 17:30:55 840

原创 MyBatis——在MyBatis增加log4j日志,优化MyBatis,实现limit分页

MyBatis——在MyBatis增加log4j日志,优化MyBatis,实现SQL分页1.什么是log4j日志log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志...

2019-08-04 16:58:42 236

简易聊天室.zip

使用GUI和TCP网络编程,实现图形界面化客户端给服务器发送消息,并附带登陆注册功能

2019-05-31

空空如也

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

TA关注的人

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