自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Oracle数据库学习

Oracle的优点优点:数据存储量大处理速度快安全性高容错性强SQL分类DDL : 数据定义语言 create alter drop truncateDML : 数据操纵语言 insert update deleteDCL : 数据控制语言 安全 授权 grant revokeDQL : 数据查询语言 select from子句 where子句Oracle表空间的创建与删...

2020-02-07 15:39:37 348

原创 Linux 的基本操作命令(一)

1. 主机名命令功能hostname获取当前主机名hostname 新主机名更改主机名2. 用户切换su -l 指定用户名用来切换用户,如果切换到 root (超级用户)需要输入密码切换后退出的方式 ctrl+D 或者 logout 命令3.获取日历cal 查看当前月份的日历cal 命令加上如下参数,功能如下4. 帮助获取命令...

2019-08-10 23:39:40 207

原创 SpringBoot学习 ——> YAML

YAML 简介YAML 是YAML不是一种标记语言的外语缩写,中文是另一种标记语言,它是一种直观的能够被电脑识别的数据序列化格式,是一个可读性高并且容易被人类阅读,容易和脚本语言交互,用来表达资料序列的编程语言。YAML 语法YAML 中可以允许表示三种格式,分别是常量值,对象和数组。它的语法结构是 key: value(注意,冒号后面必须有一个空格)。常量name: 李某某 flag...

2019-08-09 17:14:12 616

原创 SpringMVC(五)—> Ajax

  Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。  传统的网页如果要更新内容,必须要重载整个网页页面,而 AJAX 是一种无需在重新加载整个页面的情况下,能够更新部分网页的技术, 是一种用于创建快速动态网页的技术。  使用ajax技术的网页,通过在后台服务器进行少量的数据交换...

2019-08-08 16:24:28 178

原创 Vue 的简单使用

一、Vue1、Vue 简介  Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。  Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。...

2019-08-08 11:56:08 983

原创 Java邮件发送

一、电子邮件收发  要在网络上实现邮件功能,必须要有专门的邮件服务器。这些邮件服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中。  SMTP服务器地址:一般是 smtp.xxx.com。比如163邮箱是 smtp.163.com,qq邮箱是smtp.qq.com。电子邮箱( E-Mail 地址) 的获得需要在邮件服务器上进行申请。比如我们要使...

2019-08-05 21:50:49 648

原创 SpringMVC(四)—>拦截器

一、SpringMVC 拦截器SpringMVC 的拦截器类似于 Servlet 中的过滤器,用于对处理器进行预处理和后处理。我们可以用拦截器来实现一些特定的功能。拦截器和过滤器的区别:拦截器是AOP思想的具体应用过滤器servlet规范中的一部分,任何java web工程都可以使用 在url-pattern中配置了/*之后,可以对所有要访问的资源进行拦截拦截器拦截...

2019-08-04 00:00:33 204

原创 SpringMVC(三)—>文件上传和下载

一、文件上传(方式一)  前端表单要求:为了能上传文件,必须将表单的 method 设置为 POST,并将 enctype 设置为multipart/form-data。只有在这样的情况下,浏览器才会把用户选择的文件以二进制数据发送给服务器;一旦设置了enctype为multipart/form-data,浏览器即会采用二进制流的方式来处理表单数据。  Spring MVC为文件上传提供了直接...

2019-08-03 22:22:08 140

原创 SpringMVC(二)——>JSON

一、JSON  JSON(JavaScript Object Notation, JS 对象标记)是一种轻量级的数据交换格式,目前使用特别广泛。  采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。在 js 语言中,一切都是对象,因此任何支持 JS 支持的类型都...

2019-08-02 15:31:32 752

原创 SpringMVC(一)—>SpringMVC入门

  MVC 全名是 Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,本质就是将业务逻辑 , 数据 , 显示 分离的方式来编写代码; 前后端分离。一、Model1在早期的时候使用的是 Model1模式,只有视图层和模型层,工作方式如下图一、MVC 的三个模块1、 Model数据模型,提供要展示的...

2019-07-30 22:45:00 170

原创 MyBatis 和 Spring 整合和 声明式事务

  前面学了那么多的东西,现在我们要把 MyBatis 和 Spring 整合到一起,那么我们就需要一个很重要的包 mybatis-spring 在选择版本的时候我们可以参考下表:MyBatis-SpringMyBatisSpring 框架Spring BatchJava2.03.5+5.0+4.0+Java 8+1.33.4+3.2.2+2.1+...

2019-07-30 16:47:16 691

原创 Spring学习-AOP(AOP 的三种实现方式)

1、APO 简介  AOP为 Aspect Oriented Programming 的缩写,意思为: 面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP 是 Spring 框架中一个重要的部分,利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。  我们现在做的一些非业务,如:日志...

2019-07-28 14:55:29 953

原创 静态代理、动态代理(AOP 底层实现机制)

代理模式可以分为:静态代理动态代理(AOP底层机制)1、静态代理  静态代理,就是通过一个“中介”来帮我们实现一些功能,就按租房子来说,房东和我们都是通过中介来进行交易的,那么这个中介就是静态代理,代理可以帮助我们实现一些繁琐的事项,而我们和房东的功能就比较纯粹。下面我们可以通过代码来实现一下这个例子。接口实现// 租房子这一事件的接口package com.lxc.apo;...

2019-07-27 23:14:28 277

原创 MyBatis(二)

接上一片 MyBatis 来说:Mybatis的日志实现、使用注解开发、多对一及一对多的处理一、MyBatis 的日志实现1、LOG4J 实现  log4 java 是用来 java 日子的实现log4j 的依赖<!-- https://mvnrepository.com/artifact/log4j/log4j --><dependency> <...

2019-07-26 22:16:45 119

原创 Spring 学习(Spring、IOC、依赖注入)

一、SpringSpring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。1、 Spring简介单体地狱:Servlet JDBC JSP …替代JDBC的框架: ...

2019-07-26 22:01:55 188

原创 MyBatis(一)

一、MyBatis 的概述1、什么是 MyBatis  MyBatis 是一款优秀的持久层框架,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。2、什么是持久层持久态和瞬时态持久化就...

2019-07-23 23:14:11 164

原创 JDBC

一、什么是 JDBC  我们安装好数据库之后,我们的应用程序也是不能直接使用数据库的,必须要通过相应的数据库 驱动程序,通过驱动程序去和数据库打交道。  JDB C全称为:Java Data Base Connectivity 【Java数据库连接】是 SUN 公司为简化、统一对数据库的操作,定义了一套Java操作数据库的规范(接口)。这套接口由数据库厂商去实现,这样,开发人员只需要学习j...

2019-07-22 19:19:29 128

原创 使用DML语言进行数据库数据管理

一、外键管理1、什么是外键  如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。  在实际操作中,将一个表的值放入第二个表来表示关联,所使用的值是第一个表的主键值(在必要时可包括复合主键值)。此时,第二个表中保存这些值的属性称为外键(forei...

2019-07-20 23:32:22 636

原创 使用DQL查询数据库

DQL ( Data Query Language) 是数据查询语言,如 Select 语句DQL 语法SELECT [ALL | DISTINCT]{* | table.* | [table.field1[as alias1][,table.field2[as alias2]][,...]]}FROM table_name [as table_alias] [left | ri...

2019-07-19 21:29:00 336

原创 数据库概述,Mysql 以及对 MYSQL 的操作

什么是数据库  数据库 DB(Data Base), 所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。  简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。数据库的类型关系型数据库(SQL)关系型数据库通过外键关联来建立表与表之间的关系非关系型数据库(NOSQL):非关...

2019-07-17 23:43:44 276

原创 MySQL5.7 免安装版配置详细教程

一、软件的下载mysql5.7 64位下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-winx64.zip我们可以根据自己的需求下载不同的版本二、操作步骤1、下载后得到一个压缩包,并解压到自己想要安装的目录下,如:D:\Environment\mysql-5.7.192、添加环境变量我的电脑->属...

2019-07-17 22:39:09 226

原创 HTTP协议、Servlet 及其如何搭建

一、HTTP 协议1、什么是 HTTP 协议  HTTP是 hypertext transfer protocol(超文本传输协议)的简写,它是 TCP/IP 协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。  客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式。2、常用的请...

2019-07-17 20:24:29 183

原创 在 IDEA 中搭建 Web 开发环境

1、 打开IDEA,创建一个项目2、点击【 Next 】,继续下一步3、点击【Finish】结束4、配置 TomCat 服务器5、运行

2019-07-16 16:03:10 216

原创 JavaWeb基础知识/TomCat 的下载与安装

Web 是网页是意思,它分为:静态 Web(HTML):从网页中获取的数据始终不变动态 Web(JSP,Servlet):可以从服务器端动态的获取数据在 Java 中,动态 Web 资源开发的技术统称为 JavaWeb一、Web 发展历史1、 静态Web  html是网页的后缀, 服务器会直接读取HTML 的数据。   在静态WEB程序中,客户端使用WEB浏览器,经过网络(Net...

2019-07-15 22:17:11 414

原创 JS操作Bom对象

一、什么是Bom?BOM(Browser Object Model)是浏览器对象模型。浏览器对象模型提供了独立与内容的、可以与浏览器窗口进行互动的对象结构,BOM由多个对象构成,其中代表浏览器窗口的window对象是BOM的顶层对象,其他对象都是该对象的子对象。二、Bom 对象window 对象window 对象是 JS 的最顶层对象,其他的 BOM 对象都是 window 对象的属性;...

2019-07-15 14:56:07 219

原创 js 的相关知识

一、js 的概述1、什么是 js  JavaScript 是一种基于对象和事件驱动的 , 并具有安全性能的脚本语言。它具有以下三个特点:向HTML页面中添加交互行为脚本语言 , 语法和Java类似解析型语言 , 边执行边解释2、js 的结构  js 的语句需要写在 script 标签中,具体语法如下:<script><!-- js 的语句;-->...

2019-06-23 17:31:26 167

原创 CSS的概述、选择器

一、CSS的概念CSS(Cascading Style Sheet),中文译为层叠样式表,是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。CSS 是 1996 年 W3C 审核通过并且推荐使用的。CSS 的引入就是为了使得 HTML 语言能够更好地适应页面的美工设计。它以 HTML 语言为基础,提供了丰富的格式化功能,如字体、颜色、背景和整体排版等。二、CSS的优点内容...

2019-06-19 19:41:38 240

原创 HTML之表单

form 为比表单元素,它的 action属性表示提交地址,method 表示提交方式 有 post/get 两种 ,前者更为安全。它其中有很多属性可以实现很多功能,具体如下。1、inputinput中有如下属性:type:类型name: 名字 , 可以重复id: 不能重复,保证全代码唯一disabled: 禁用文本框其中 type属性 有 text(文本框)、password(...

2019-06-17 22:21:42 386

原创 HTML(超文本标记语言)

HTML 被称为超文本标记语言,这里的超文本是指在网页中可以加入图片、声音、动画、视频等内容。事实上,每个 HTML 文档都是一种静态的网页文件,这个文件中包含了各种标签。一、HTML 的基本结构一个典型的 HTML 文档结构如下:<html><head> <meta charset="UTF-8"> <title>标题&lt...

2019-06-12 23:36:22 2499 1

原创 内置注解、元注解、自定义注解

  注解(Annotation)不是程序本身,但是可以对程序作出解释,同时注解还可以让其他程序读取。我们可以把注解加在包(package)、类(class)、方法(method)和变量(field)的上面。  注解的格式为 : @注解名一、内置注解1、@Override  定义在 java.lang.Override 中 , 此注释只适用于修辞方法 , 表示一个方法声明打算 重写超类中的另...

2019-06-12 22:41:32 471

原创 线程池

  多线程虽然能最大限度的发挥计算机的性能,但是经常创建线程和销毁线程会占用特别多的资源,会对系统造成负担,这样的话计算机性能就会变差。  所以为了避免这个问题我们就引入了线程池这个概念,线程池的好处就是让线程可以重复使用。简单的来说就是,当有一个任务来时,就会重线程池中拿一个线程,当工作完后,这个线程并不是直接关闭,而是把这个线程返回给线程池,以供其他线程使用。1、线程池的好处提高系统响...

2019-06-11 22:15:08 248 2

原创 线程通信之信号灯法

还是以生产者/消费者的问题为例,这次使用信号灯法来解决线程的通信问题。信号灯法个人感觉就是两个线程一替一个执行,下面看一下代码实现://生产者消费2//生产者--->演员//消费者--->观众//产品:信号灯--->电视----->声音public class TestPC2 { public static void main(String[] args...

2019-06-11 21:31:02 1065

原创 线程通信之管程法

  线程通信的应用场景是消费者/生产者问题。就是我们让生产者去生产商品,然后消费者来消费,那么当产品不足的时候我们让消费者这个线程去通知生产者这个线程。如果没有消费者,那么生产者就处于等待状态。  s首先这是一个线程同步的问题,生产者和消费者共享同一个资源,并且生产者和消费者之间有所关联,所以这个问题仅用同步块是不能解决的,因为同步块只能实现同步,并不能实现多个线程之间的信息传递。那在 Java...

2019-06-11 21:25:12 489

原创 死锁

什么是死锁?  在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,在未改变这种状态之前都不能向前推进,称这一组进程产生了死锁。死锁是两个或多个进程被无限期地阻塞、相互等待的一种状态。发生死锁时,涉及的一组进程中,每个进程都占用了一定的资源但又都不能向前推进。在这种情况下,计算机虽然处于开机状态,但这一组进程却未做任何有用的工作。产生死锁的必要条...

2019-06-10 22:06:31 565

原创 线程同步之模拟银行取钱实例

  线程同步的机制就是队列和锁,把共享的资源加上一把锁,然后把线程进行排队,实现安全的线程。下面为大家模拟银行取钱的实例,代码如下:public class Unsafebank { public static void main(String[] args) { Account account = new Account(100, "农业银行"); //...

2019-06-10 21:46:48 1723

原创 线程同步

  在单线程中,每次只做一件事情,但是如果使用多线程,就会发生两个线程抢占资源的问题,比如两个人过独木桥,两个人同时说话,所以要在线程编程中避免这些资源访问的冲突。Java 提供了线程同步的机制来防止资源访问的冲突。一、线程安全在实际开发中,使用多线程的情况很多,如网上购票系统,银行排号系统。以火车站售票系统为例,在代码中判断票数是否大于0,如果大于 0 则执行售票功能,但是当多个线程同时访问...

2019-06-06 22:26:42 235

原创 守护线程

  线程我们分为 用户线程和守护线程,二者的区别在于:虚拟机需要等用户线程执行完毕才停止,而不需要等待守护线程执行完毕。  举一个简单的例子来说就是,如果你的用户线程是一个有限的循环,而守护线程是一个无线的循环,那么当我们的用户线程执行完毕之后程序就会结束,并不会因为守护线程是无线循环而导致程序不会结束。所以一般守护线程用来监控内存、垃圾回收、后台记录操作等。守护线程正常的线程都是用户线程,...

2019-06-06 19:25:01 176

原创 lambda表达式

  lambda表达式的目的就是为了简化编程,它属于函数式编程。使用这个 lambda 表达式的好处就是避免匿名内部类定义过多,使代码看起来更为简洁。  但是使用 lambda 表达式需要有一个前提是 这个接口需要是一个函数式接口,下面具体为大家介绍一下1、函数式接口  函数式接口的定义是该接口中只有一个抽象方法,这样的接口我们称之为函数式接口,只有这样我们才能省略许多没必要的代码,只留下核...

2019-06-06 18:46:31 345

原创 多线程的实例之龟兔赛跑

  龟兔赛跑我们可以看成两个线程并发执行,我们可以通过让其中一个线程 “睡觉” 来实现 “操盘”,下面让我们看一下代码如何实现:public class TestThread implements Runnable{ static String winner;@Override public void run(){ //定义一条“跑道” for (i...

2019-06-06 17:42:29 2363 1

原创 线程的生命周期

线程的生命周期  线程也具有生命周期,其中包含7种状态。分别为 出生状态,就绪状态,运行状态,等待状态,休眠状态,阻塞状态和死亡状态。1、出生状态  出生状态是被创建出来时所处的状态,用户调用 start() 方法之前都是出生状态。2、就绪状态  当用户调用 start() 方法后,线程处于就绪状态。3、运行状态  当线程得到系统资源后就处于运行状态。4、等待状态  当调用 wa...

2019-06-06 17:31:31 134

空空如也

空空如也

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

TA关注的人

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