自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【JavaEE之SpringMVC】SpringMVC杂记

和前一篇文章一样,这个SpringMVC一样是杂记,主要是给自己写的,或许你们看起来会觉得很乱,你可以评论问我哦,好了,接下来进入正题SpringMVCSpring通过一套注解,让POJO类成为处理请求的控制器,无需实现任何接口Spring支持RESTFul风格的URL请求SpringMVC是通过DispathcarServlet这个核心处理类展开,它负责拦截请求,并将它分配给相应的处理...

2019-03-01 20:16:22 298

原创 【JavaEE之Spring】SpringBoot杂记

这是一篇关于SpringBoot的杂记,为什么说是杂记?因为这是我零零散散把自己觉得有用的东西记录了下来,主要是给自己写的,或许有人看起来会觉得很乱,你可以评论问我哦,好了,接下来进入正题Spring Boot:SpringBoot的步骤:0.创建Maven项目1.加依赖–添加SpringBoot的父母约定依赖,不需要Spring的物料清单添加自己所需要的SpringBoot约定的的...

2019-03-01 19:50:18 608

原创 【Java】Java之JDBC编程

什么是JDBC?JDBC(java Database connectivity,java数据库连接),是一种于执行SQL语句的Java API,为多种关系型数据库提供了统一的访问方式。JDBC工作原理JDBC主要包含一些通用的接口类,真正的数据库访问操作的实现是由各自数据库厂商提供的,我们把厂商提供的特定的数据库的访问API成为数据库的JDBC驱动。JDBC步骤a. 准备数据库驱动包(...

2019-02-25 21:14:03 310 1

原创 【JavaSE】JavaIO操作

/** * 判断父目录是否存在以及父目录的创建操作 */public class Test{ public static void main(String[] args) { File file=new File(File.separator+"D:" +File.separator+"java"+File.separator+"IO"+File.separator+&amp

2018-07-18 18:57:59 141

原创 反射与注解【JavaSE】

Annotation注解可以定义在类或方法上,我们可以通过反射取得所定义的Annotation信息。在java.lang.Class类中提供了取得注解信息的方法,下面是取得注解信息的示例:注解类的作用范围: CLASS SOURCE RUNTIME/** * 反射与注解 自定义Annotation */@SuppressWarnings("serial")@Deprecat...

2018-07-18 13:12:41 145

原创 动态代理设计模式(基于接口的动态代理设计模式)【JavaSE】

代理设计模式的核心本质在于:一个接口有两个子类,一个负责真实业务,一个负责与真实业务有关的所有辅助性操作; 动态代理模式的核心特点是:一个代理类可以代理所有需要被代理的接口的子类对象,实现动态代理类,就要让代理类不在具体实现于某一个接口,下面是一个动态代理设计模式的示例://动态代理设计模式(基于接口的动态代理设计模式)interface ISubject { void ea...

2018-07-18 11:50:37 317 1

原创 【Java】反射与单级VO操作

反射与单级VO操作我们通常会给类中的属性设有get,set方法,假设类中有几十个属性,我们就需要调用几十次set,get方法,所以我们希望能对程序做一些简化,比如输个字符串”属性名:属性值|属性名:属性值|…”,就可以将类中的属性设置好,我们的反射就可以帮我们做到,一次性把所有的属性设置好。简单Java类—Emp类设计package com.java.vo;public class...

2018-07-10 15:49:11 317 1

原创 【JavaSE】多线程中典型的生产者与消费者模型

生产者和消费者模型 生产者和消费者模式是通过一个容器来解决生产者和消费者之间的强耦合问题,彼此之间不接直接通话,而是通过阻塞队列来进行通话,所以生产者生产完数据不需要等待消费者,直接扔给阻塞队列,消费者不直接找生产者要,直接从阻塞队列里面取,这个阻塞队列就是用来给生产者和消费者解耦的,之前在前面写的工厂模式,模板模式,都是存在第三方 **下面模拟一个简单的商品生产者和消费者**...

2018-07-10 14:22:15 268

原创 【JavaSE】JavaSE之新特性概述

下面针对JavaSE几个新特性进行概述,主要包括以下几个: 1. lambda函数式编程—>2. 可变参数—>传递多类参数—>3. 自定义异常类—>4. 通配符?,? extends 类,? Super 类的示例1. lambda函数式编程@FunctionalInterfaceinterface IMessage{ void fun();}...

2018-07-09 22:53:23 343

原创 JavaSE中几种典型的设计模式

这里是JavaSE中几种典型的设计模式,有如下几种: 1. 懒汉式单例—》2.饿汉式单例–》3.模板设计模式—抽象类的实际应用—》4.工厂设计模式–(第三方解耦合)接口类应用—》5.代理设计模式—(两个子类共同实现一个类)接口类应用;1.懒汉式单例class Single { public static Single single = null; pri...

2018-07-07 11:21:21 481

原创 【JAVA】反射中的四大核心类---》Class,Constructor,Method,Field类

在刚开始的时候,我们一直进行的是正向操作,即根据包名.类名找到类,进而产生类的实例化对象,现在,我们的反射指的是对对象的反向处理操作,所谓的“反”,就是根据对象来取得对象的来源信息,下面是关于反射中四大核心类 1. Class类—》用来描述整个类信息 取得Class类的对象有三种方式: a. “类的实例化对象.getClass()”—>该方法有Ob...

2018-05-23 17:00:36 303

原创 【数据结构】--》堆的应用

上篇博客对堆的一些基本实现,现在来实现堆的两个应用: **海量TopK问题(这里仅用一小部分数据进行测试)---》堆排序**1,堆排序的实现代码:此处com使用来传一个函数指针,方便指定升序还是降序,本次是按升序来测试;void HeapSort(Heap* hp, DataType arr[], int size, Compare com){ assert(hp);...

2018-05-23 16:50:01 143

原创 【数据结构】--》堆的一些简单实现

堆分为两种**a,小堆** 如果一个关键码的集合K={k0,k1,k2,...,kn-1},把它所有的元素按完全二叉树的顺序存储方式存储在一个一维数组中,并满足: Ki<=K2*i+1 且 Ki<=K2*i+2 则称之为“小堆”;**b,大堆** 如果一个关键码的集合K={k0,k1,k2,...,kn-1},把它所有的元素按完全二叉树的顺序存储方式存储在一个一...

2018-05-23 16:30:00 125

原创 【java】--多线程

java的一大特色就是支持多线程的编程,java中给了三种实现多线程的方式。1. 继承Thread类实现多线程 java.lang.Thread是一个线程操作的核心类,新建一个线程最简单的方法就是继承Thread类,然后覆写该类中的run()方法;  注意:在启动线程的时候是通过调用Thread类中的start()方法来调用run()方法,不能直接调用run方法,否则多线程并没有启动成功。2. R...

2018-05-04 15:05:01 109

原创 泛型--》JAVA

JDK1.5之后引进了三大常用特性:泛型,枚举,注解,下面我们来着重看看泛型!!!  泛型指的是在类定义的时候并不会设置类中属性或方法中参数的具体类型,而是在类使用时再定义; 泛型可以定义类,方法,接口: 1. 泛型类   **泛型类的基本语法:      class MyClass{ T value; }   修饰,那它就称之

2018-05-03 11:57:06 124

原创 关于二叉树一些接口的实现--【数据结构】

     树,好像生活中大家随处可见,今天写的是关于我们数据结构中的二叉树,所谓的二叉树--》结点的一个有限集合,该集合或者为空,或者是由一个根节点+左子树+右子树组成;    下面是对二叉树一些接口的实现,主要包括以下几部分:       1. 二叉树创建 --》2. 二叉树拷贝 --》3. 前序遍历---递归 --》4.  前序遍历---非递归 --》5. 中序遍历---递归 --》6. 中序...

2018-05-02 16:05:13 432

原创 简单迷宫求解--【数据结构】

   上篇博客对多通路迷宫进行求解,现在我们对简单迷宫(只有一条通路)进行求解,用两种方式找到迷宫路径------>循环和递归;下面使用C语言实现对简单迷宫求解:  maze.c#define _CRT_SECURE_NO_WARNINGS 0;#include "maze.h"#include "stack.h"#include <stdio.h>#include &l...

2018-05-02 15:42:07 873

原创 数据结构---对复杂迷宫进行求解(通路间带环)

我们通常见的迷宫多种多样,在这里以多通路迷宫为例,对迷宫进行求解,找出最短路径,用C语言对其进行编写,涉及到一些操作包括:       1. 初始化迷宫地图数据 --》2.检测迷宫的入口是否有效 --》 3. 检测当前位置是否为迷宫的出口 --》4. 保存最短路径 --》5. 检测当前位置的下一步是否能够走通 --》6. 走迷宫 --》7. 具体走迷宫方式 --》8. 打印迷宫

2018-04-23 17:03:29 506 2

原创 JAVA双向链表的一些简单接口实现

如果想要保存多个对象,我们可以用对象数组,想要保存多个任意对象,可以用Object型的数组,但是,数组是一个定长的线性结构,一旦我们内容过多或过少,都有可能造成空间的浪费,所以,我们就定义一个不固定长度的数组,有多少数据就保存多少数据,下面是用JAVA实现的双向链表节点结构:   package www.bit.java;interface Link{ boolean Add(Objec

2018-04-14 07:59:37 217

原创 JavaSE之三个特殊的类---String----》Object----》包装类

1.String类 1.  String类有两种实例化方式--》直接赋值和传统方法(利用构造方法对象实例化);   (1)String类中提供了一个共享模式-----》在JNM底层实际上会自动维护一个对象池,如果采用的直接赋值进行String类的对象实例化操作,那么该实例化对象就直接保存在这个对象池中,如果下次继续使用直接赋值的模式生声明String类对象,此时,对象池中若有指定内容,将直接进行引...

2018-04-12 19:34:42 156

原创 单链表中的一些经典问题--约瑟夫环,逆序,查找,复杂链表复制,链表带环问题

对于单链表中一些经典问题的总结,所涉及的问题主要包括以下几点:     1. 从尾到头打印单链表-->2. 删除无头单链表的非尾结点-->3. 在无头单链表pos位置前插入值为结点data的结点-->4. 用单链表模拟实现约瑟夫环-->5. 使用冒泡排序方法对单链表进行排序-->6. 单链表的逆置--三个指针-->7. 单链表的逆置--头插法-->8. 合...

2018-03-30 16:37:48 373

原创 JAVA实现---->动态顺序表插入删除的基本操作

线性表是数据结构中最最基本的结构类型。顺序表则是把线性表的节点按逻辑顺序一次存放在一组地址连续的存储单元里。下面使用Java实现的动态顺序表,主要实现以下几个功能:      数组初始化-->打印数组元素-->打印数组元素个数和容量大小-->判断是否需要扩容-->实现尾插-->实现尾删-->在指定位置插入指定元素-->判断位置是否异常-->删除下标为pos的元素-->清空数据表中的

2018-03-29 10:23:47 1872

原创 单链表中一些经典的问题-->约瑟夫环,链表逆序,查找链表结点...(上)

上篇博客中写了关于单链表的一些基本操作,接下来是对单链表的一些扩展问题,接下来实现如下问题:     ---->删除链表的非尾结点,不遍历链表--->约瑟夫环--->使用冒泡方式对单链表进行排序--->单链表的逆序---(三个指针)---->单链表的逆序---(使用头插法)--->合并两个有序链表,合并起来依然要有序--->查找链表的中间结点,只遍历一次链表--->查找链表的倒数第K个结点

2018-03-27 17:13:01 345

原创 无头单链表(插入和删除)的基本操作

实现单链表的一些基本操作:链表初始化--〉尾插--〉尾删--〉头插--〉头删--〉查找值为data的结点,返回该结点在链表中的位置--〉在链表pos位置后插入结点data,删除链表pos位置上的结点--〉销毁单链表--〉求链表中结点的个数--〉将链表中的结点清空---〉创建新结点 --〉获取链表中的最后一个结点,返回该结点的地址---等等下面是一些简单的代码实现(C语言)test.c: #def...

2018-03-26 17:44:59 1300 1

原创 简单的排序-查找实现----JAVA

JAVA----〉实现简单的排序-查找

2018-03-26 16:03:31 162

原创 三子棋C语言编写

test.c:#define _CRT_SECURE_NO_WARNINGS 0;#include #include #include #include "game.h"void game(){ char board[ROW][COL] = { 0 }; char set = '_'; InitBoard(board, ROW, COL,set); Display_Board

2018-02-18 19:09:41 172

原创 模仿qsort的功能实现的一个通用的冒泡排序

#include <stdio.h>#include <string.h>struct Stu{ char name[20]; int age;};int cmp_name(const void *e1, const void *e2){ return strcmp(((struct Stu*)e1)->name, ((struct Stu*)e2...

2018-02-15 18:04:34 277

原创 指针

在这里我们关于指针讨论一下几个:         指针数组         数组指针          函数指针       函数指针数组          指向函数指针数组的指针 接下来,用一些例子来进行形象说明:1.指针数组: 是数组,是一个存放指针的数组; int *arr1[10]; int *arr2[4]; int **arr3[5];2.数组指针:是指针,该指...

2018-02-13 20:30:49 143 1

原创 C语言操作符总结

          C语言操作符主要分为以下几类:                                                        算数操作符                                                        关系操作符                                                     ...

2018-02-11 20:11:46 214 1

原创 可变参数列表解析

C语言中可变参数的解析是特别有趣的实现,通过将函数实现为可变参数的形式,可以使得函数可以接受一个以上的任意多个参数(不固定)。通过一个例子详细研究一下,比如:实现一个函数可以求任意个数的平均值#include <stdio.h>#include <stdarg.h>int average(int n, ...){ va_list arg; int sum = 0;...

2018-02-08 20:26:07 162

原创 函数的调用过程(函数调用栈帧的创建)

函数的调用过程:我们知道每一次函数调用都是一个过程,这个过程我们通常称之为:函数的调用过程。而这个过程要为函数开辟栈空间,用于本次函数调用中临时变量的保存,现场保护,这块栈空间我们称之为函数栈帧。而函数栈帧的维护需要两个寄存器:esp和ebp,在调用过程中,这两个寄存器存放了维护这个栈的栈顶和栈底指针。举个例子:调用main函数,我们为main函数分配栈帧空间,那么栈帧的维护如下图:注意:ebp永...

2018-02-08 18:13:09 436 1

空空如也

空空如也

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

TA关注的人

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