自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 代理模式:静态代理;动态代理

​ 代理模式:为其它对象提供一种代理以控制对这个对象的访问控制;在某些情况下,客户不想或者不能直接引用另一个对象,这时候代理对象可以在客户端和目标对象之间起到中介的作用。一、静态代理角色分析:抽象事务 :一般会使用接口或者抽象类真实角色 :被代理的角色代理角色 :代理真实角色 , 代理真实角色后,我们一般会做一些附属操作客户 : 访问代理对象下面以租房为例,学习静态代理模式抽...

2019-10-16 19:47:54 831

原创 spring IoC : DI依赖注入;自动装配;使用注解注入;使用Java的方式配置Spring

一、Spring IOCIoC(Inversion of Control,控制反转)是一种设计思想。这是spring的核心,贯穿始终。所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。Spring 的 IoC 设计支持以下功能:依赖注入依赖检查自动装配支持集合指定初始化方法和销毁方法支持回调某些方法(但是需要实现 Spring 接口...

2019-10-16 18:06:05 888

原创 spring快速入门

spring快速入门一、 简介1.1、优点Spring是一个开源的免费的框架(容器)!Spring是一个轻量级的、非入侵式的框架!控制反转(IOC) , 面向切面编程(AOP)!支持事务的处理,支持对框架的整合!1.2、官网及文档地址官网:https://spring.io/学习文档:https://docs.spring.io/spring/docs/5.2.0.RELE...

2019-10-14 16:12:53 843

原创 MyBatis(二):日志;分页;注解开发;多对一、一对多;动态SQL

文章目录一、日志1.1、STDOUT_LOGGING(标准日志)1.2、log4j1.2.1、简介1.2.2、使用二、分页2.1、使用limit实现分页2.2、RowBounds分页三、使用注解开发四、多对一和一对多问题4.1、多对一4.1.1、按照结果嵌套处理(联表查询)4.1.2、按照查询嵌套处理(子查询)4.2、一对多4.2.1、按照结果嵌套处理4.2.2、按照查询嵌套处理五、动态SQL一...

2019-10-09 19:57:56 791

原创 JavaWeb常用maven依赖及配置文件

一、JavaWeb常用maven依赖1、junit<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency>2、mysql...

2019-10-08 18:05:37 5051

原创 MyBatis入门

MyBatis入门一、概述MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。二、官方...

2019-09-30 18:00:06 298

原创 Java文件上传

Java文件上传一、需要jar包支持commons-iohttps://mvnrepository.com/artifact/commons-io/commons-iocommons-fileuploadhttps://mvnrepository.com/artifact/commons-fileupload/commons-fileupload在web项目中导入jar包二、...

2019-09-26 17:22:21 523

原创 邮件发送(Java)

邮件发送(Java)一、传输协议1.发送邮件协议SMTP协议SMTP服务器(邮件发送服务器):处理用户smtp请求(邮件发送请求)的服务器。2.接受邮件协议POP3协议POP3服务器(邮件接收服务器):处理用户pop3请求(邮件接收请求)的服务器。二、Java邮件发送1.需要的jar包支持mall.jaractivation.jar2.纯文本邮件以QQ邮箱...

2019-09-26 16:50:48 490

原创 jQuery实现Ajax

Ajax一、简介Ajax 即 “Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。Ajax 可通过后台与服务器进行少量的数据交换,使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。这极大的增强 B/S 的体验性。二、jQucry实现Ajax...

2019-09-20 22:16:57 486

原创 JSP

JSP1、简介JSP(Java Server Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编...

2019-09-19 17:49:26 2241

原创 Cookie、Session

文章目录Cookie、Session1、会话2、保存会话的两种技术CookieSession3、Cookie3.1、Cookie相关API3.2、删除Cookie3.3、编码解码4、Session4.1、Session相关API4.2、在web.xml中配置session最大不活动时间5、Session与Cookie的区别Cookie、Session1、会话​ 会话可简单理解为:用户开一个浏...

2019-09-18 22:29:57 517

原创 Servlet:HelloServlet入门程序;Mapping配置;ServletContext;Response

文章目录Servlet1、Servlet简介2、HelloServlet3、Servlet原理4、Mapping配置5、ServletContext5.1、共享数据5.2、获取初始化参数5.3、请求转发5.4、读取资源文件6、Response6.1、浏览器下载文件6.2、创建一张图片,在其中生成8位随机数,并响应给浏览器6.3、重定向Servlet1、Servlet简介Servlet (S...

2019-09-12 16:55:51 611

原创 Http

Http1、简介Hyper Text Transfer Protocol(超文本传输协议),是一个简单的请求-响应协议,它通常运行在TCP之上。超文本:图片、音乐、视频、定位、地图…端口号:80HTTPS:安全的端口号:4432 、Http请求(Request)所谓请求:就是浏览器往服务器发送数据请求行:请求信息的第一行请求头:从请求信息的第二行开始...

2019-09-11 18:26:48 460

原创 注解

注解1、概述定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明、注释。作用分类:①编写文档:通过代码里标识的元数据生成文档【生成文档doc文档】② 代码分析:通过代码里标识的元数据对代码进行分析【使用...

2019-09-10 20:31:51 368

原创 Maven

文章目录Maven1.Maven简介2、下载安装Maven3、配置环境变量4、阿里云镜像5、本地仓库6、在IEDA中使用Maven7、创建一个普通的Maven项目8、pom文件9、Maven仓库的使用Maven1.Maven简介Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。Maven 除了以程序构建能力为特色之外,还提供高级项目管...

2019-09-10 17:56:06 22853 7

原创 Tomcat 服务器

Tomcat服务器1、简介​ Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服...

2019-09-09 20:28:05 837

原创 网页版简易计算器

网页版简易计算器所用知识:html、css、js<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> input { width: 500px; ...

2019-09-07 19:54:00 1746

原创 数据库连接池(DBCP、C3P0、Druid); Commons DbUtils工具类库

文章目录数据库连接池一、DBCP连接池使用步骤:1、导入 jar包(commons-dbcp-1.4.jar和commons-pool-1.5.6.jar)2、配置信息采用硬编码方式采用配置文件方式Java代码配置文件3、获取连接对象二、C3P0连接池使用步骤:1、导入jar包(c3p0-0.9.1.2.jar)2、配置信息采用硬编码方式采用配置文件方式c3p0.propertiesc3p0-co...

2019-09-05 16:53:11 1003

原创 JDBC :连接数据库;JDBC相关API ;SQL注入问题解决;调用存储过程和函数;事务

文章目录JDBC一、连接数据库二、JDBC相关类及常用方法演示一:模拟登录演示二:批量操作演示三:获取自增长键的值三、安全问题1、SQL注入案例:使用拼串的形式写SQL语句2、防止SQL注入:使用PrepareStatement 预编译操作对象四、调用存储过程和函数1、调用存储过程Java代码:部分省略myPro 存储过程代码2、调用函数Java代码:部分省略myFun函数代码表格五、事务1、事务...

2019-09-02 00:00:33 756

原创 MySQL : DDL; DML; DQL; DCL; 存储过程;触发器;视图;函数

文章目录MySQL一、SQL结构化查询语言二、DDL三、DML四、DQL1、单表查询2、约束3、多表查询4、复制表五、DCL六、存储过程 procedure1、概述2、语法3、参数4、带有IF逻辑的存储过程 if then elseif else5、while循环 while do6、变量七、触发器 Trigger1、概述2、语法八、视图九、函数十、数据库表设计MySQL一、SQL结构化查询语...

2019-08-25 12:39:33 668

原创 JavaScript(二):JSON; jQuery

文章目录JavaScript一、JSON1、简介2、JSON语法规则3、JSON对象与JSON字符串的相互转换二、jQuery1、引入jQuery库文件2、jQuery入门程序3、加载模式4、基础DOM操作5、css操作6、插入节点方法7、事件JavaScript一、JSON1、简介JSON 英文全称 JavaScript Object Notation,是一种轻量级的数据交换格式。J...

2019-08-22 15:15:53 317

原创 JS: 数据类型;运算符;函数;js内置对象;BOM;DOM;事件

文章目录JavaScript一、简介二、数据类型三、运算符1、数学运算符2、比较运算符四、函数五、js内置对象1、String字符串对象2、Number对象3、Date对象4、Array数组对象5、全局方法对象6、正则表达式对象六、BOM七、DOM(文档对象模型)八、事件JavaScript一、简介 JavaScript 是一种轻量级的编程语言,是可插入 HTML 页面的编程代码,插入 HT...

2019-08-15 16:57:09 534

原创 JDK1.8新增功能:线程安全的时间日期类;Lambda表达式;Stream流

文章目录JDK1.8新增功能一、时间日期类1、LocalDate;LocalTime;LocalDateTime类2、Instant 时间戳类3、Duration和Period4、TemporalAdjuster(接口)5、ZonedDate,ZonedTime,ZonedDateTime:带时区的时间或日期6、ZoneID 世界时区类二、Lambda表达式Java给我们提供的函数式接口形式一形式...

2019-08-10 22:26:23 1042

原创 Java反射机制:通过反射机制获取类的成员(构造方法,成员变量,成员方法);通过反射越过泛型检查;通过反射运行配置文件内容

文章目录Java反射机制一、反射机制概述二、获取class文件对象的三种方式三、通过反射获取构造方法并使用四、通过反射获取成员变量并使用五、通过反射获取成员方法并使用六、通过反射越过泛型检查七、通过反射运行配置文件内容Java反射机制一、反射机制概述反射概述: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法; 对于任意一个对象,都能够调用它的任意一个方法...

2019-08-04 00:54:34 957

原创 网络编程:InetAddress;UDP协议传输数据 ;TCP协议传输数据;下载网络资源

文章目录网络编程一、网络编程三要素1、IP概述2、端口概述3、协议概述二、InetAddress类的使用和Socket通信原理1、InetAddress类的使用2、Socket通信原理三、UDP协议1、UDP协议发送数据2、UDP协议接收数据3、使用UDP协议模拟聊天四、TCP协议1、TCP协议发送数据2、TCP协议接收数据3、例:多线程开启多个客户端五、下载网络资源网络编程一、网络编程三要素...

2019-08-03 01:09:19 594

原创 线程池;定时器;设计模式:工厂模式、单例模式

文章目录一、线程池1、线程池概述2、线程池的使用示例一示例二二、定时器1、定时器概述2、定时器的使用三、设计模式1、概述及分类2、工厂模式2.1、简单工厂模式2.2、工厂方法模式3、单例模式四、Java程序执行DOS命令一、线程池1、线程池概述 程序启动一个新线程成本是比较高的,因为它涉及到要与操作系统进行交互。 而使用线程池可以很好的提高性能,尤其是当程序中要创建大量生存期很短的线程时,...

2019-08-01 16:50:32 746

原创 多线程:概述;实现多线程的方式;线程控制;线程安全问题

文章目录多线程一、进程和线程二、多线程实现1、方式一2、方式二3、方式三三、线程控制1、设置线程优先级2、线程休眠3、加入线程4、礼让线程5、守护线程6、中断线程7、线程间的等待唤醒机制8、线程状态转换图四、线程安全问题1、解决方式一:使用同步代码块处理2、解决方式二:使用同步方法3、解决方式三:使用Lock锁拓展:死锁现象4、volatile关键字5、CAS算法多线程一、进程和线程​ 进...

2019-08-01 15:04:12 471

原创 多线程复制文件

多线程复制文件import java.io.File;import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;public class MyTest { public static void main(String[] args) throws...

2019-08-01 12:00:48 360

原创 NIO:缓冲区(Buffer);通道(Channel);Files 类常用方法;Path 与 Paths

文章目录NIO一、缓冲区(Buffer)1、Buffer概述2、缓冲区基本属性3、缓冲区常用方法4、演示二、通道(Channel)1、Channel概述2、获取通道方式一:使用支持通道的类的对象调用getChannel() 方法方式二:使用 Files 类的静态方法newByteChannel() 获取字节通道方式三:通道的静态方法 open() 打开并返回指定通道3、通道的数据传输4、NIO...

2019-07-28 19:54:23 1012

原创 IO流(其他流):数据输入输出流;内存操作流;打印流;序列化与反序列化流;随机访问流;Properties

文章目录IO流(其他流)一、数据输入输出流1、特有属性2、特有方法演示二、内存操作流1、操作字节数组的内存操作流2、操作字符数组的内存操作流3、操作字符串的内存操作流程三、打印流1、字符打印流2、字节打印流3、使用字节打印流和Scanner类复制文本文件四、序列化与反序列化流演示五、随机访问流1、演示2、例题:将一个文件复制三遍六、Properties演示IO流(其他流)一、数据输入输出流1...

2019-07-25 15:22:25 537

原创 IO流:常见输入输出流:文件输入输出流,字符转换流;复制文件或多级文件夹;

文章目录IO流一.概述及分类二、字节输入输出流1、文件输入流(FileInputStream)常用方法2、文件输出流(FileOutputStream)常用方法3、使用文件输入输出流进行文件的复制方式一:一次读一个字节,写一个字节(效率低,一般不使用)方式二:一次读写一个字节数组(效率高)4、流的异常处理5、高效(通过内部缓冲区实现)的文件输入输出流复制文件方式三 :使用高效的文件输入输出流三、字...

2019-07-25 11:25:25 1260

原创 异常

文章目录异常一、异常的概述及分类二、处理异常1、JVM对异常的默认处理方式2、try...catch示例3、Throwable的常见方法4、throws和throw处理异常5、自定义异常异常一、异常的概述及分类A:异常的概述:异常就是Java程序在运行过程中出现的错误。B:异常的继承体系 异常的基类: Throwable 严重问题: Error: 不予处理,因为这种问题一般是很严重的问...

2019-07-23 09:58:48 715

原创 文件(File类): 构造方法;常用方法;案例(修改文件或多级文件夹中所有相同类型的文件的后缀名 ;删除文件或多级文件夹)

文章目录文件(File类)一、 File类的概述和构造方法二、File类常用方法1、与创建相关的方法2、删除相关的方法3、重命名相关方法4、判断功能5、关于获取的方法三、案例文件(File类)一、 File类的概述和构造方法File类的概述: 文件和目录路径名的抽象表示形式构造方法: File(String pathname):根据一个路径得到File对象 File(Stri...

2019-07-23 00:04:35 554

原创 集合(三):Map;HashMap;LinkedHashMap;TreeMap;集合嵌套

文章目录集合(三)Map一、HashMap1、概述及特点2、HashMap常用方法3、HashMap常用方法测试4、Map集合的遍历A:方式一:先获取键,再通过键找值B:方式二:先获取键值对,再获取键和值5、HaShMap保证键唯一性6、HashMap和Hashtable关系二、LinkedHashMap1、概述及特点2、演示三、TreeMap1、概述及特点2、演示四、集合嵌套集合(三)Map...

2019-07-22 21:50:14 460

原创 集合(二):Set : HashSet; LinkedHashSet; TreeSet

文章目录集合(二)Set一、HashSet1、概述及特点2、HashSet元素唯一性解析及代码优化代码优化二、LinkedHashSet三、TreeSet1、概述及特点二叉树存储数据保证元素唯一性且排序原理图解2、自然排序演示3、比较器排序演示4、例题集合(二)Set 概述及特点:元素唯一,即一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2...

2019-07-21 00:56:28 870 1

原创 集合(一):接口Collection(集合遍历); 接口List;ArrayList;Vector;LinkedList

文章目录集合(一)一、集合概述1、集合概述2、常用集合继承体系图二、接口Collection1、Collection常用功能2、Collection常用功能测试3、Collection集合遍历A:把集合转为数组遍历B:使用迭代器遍历C:增强for循环遍历三、接口List1、List特点2、List特有功能3、List特有功能测试4、List新增遍历方式A:通过get()和size()方法遍历B:使...

2019-07-18 16:21:13 1327

原创 Java常用类(四):Date类;SimpleDateFormat类;Calendar类

Java常用类(四)一、Date类A:Date类的概述 类 Date 表示特定的瞬间,精确到毫秒。 B:构造方法 public Date() public Date(long date) //把一个long类型的毫秒值转换成一个日期对象C:成员方法 public long getTime(): 获取一个日期对象对象毫秒值 public void setTime(long tim...

2019-07-17 00:16:44 373

原创 Java常用类(三):正则表达式;Pattern类和Matcher类;Math类;Random类;System类;BigDecimal类

Java常用类(三)一、正则表达式1、概述 正则表达式:即正确规则的表达式,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。其实就是一种规则。有自己特殊的应用。2、常用规则字符 规则字符在java.util.regex Pattern类中A:字符 x 字符 x。举例:'a'表示字符a \\ 反斜线字符。 \n 新行(换行)符 ('\u000A') \r ...

2019-07-16 23:11:01 491

原创 Java常用类(二):StringBuffer类;Arrays类;包装类;

Java常用类(二)一、StringBuffer类1、StringBuffer类的概述 线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。 String类和StringBuffer类的区别; 1、String表示的字符串是常量,其长度和内容都无法改变。而Str...

2019-07-15 14:09:37 282

原创 排序及二分查找:冒泡排序;选择排序;直接插入排序;快速排序;二分查找

一、排序1、冒泡排序2、选择排序3、直接插入排序4、快速排序快速排序算法思想分治法:比大小,再分区1.从数组中取出一个数,作为基准数。2.分区:将比这个数大或等于的数全放到他的右边,小于他的数全放到他的左边。3.再对左右区间重复第二步,直到各区间只有一个数实现思路挖坑填数1.将基准数挖出形成第一个坑。2.由后向前找比他小的数,找到后挖出此数填到前一个坑中。3...

2019-07-15 10:40:51 381

空空如也

空空如也

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

TA关注的人

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