自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于前端文件上传后将文件保存至服务器路径存储在数据库并在相应页面展示的总结

前期准备1.开发环境及框架的搭建。(基于SSH开发框架)2.数据库建表,表应该有一个字段用来存储文件在服务区上的存储路径。3.map.xml文件4.Action.xml文件5.写好实体类及get()set()方法6.DAO层7.Action()实现,Action()里面需要实现文件的上传服务器功能和路径存储数据库功能。8.前端页面,前端页面需要实现文件的选择功能。具体实例展示1...

2018-11-01 18:04:38 33650 4

原创 abstract(抽象)修饰符,可以修饰类和方法

1,abstract修饰类会使这个类成为一个抽象类,这个类将不能生成对象实例,但可以做为对象变量声明的类型,也就是编译时类型,抽象类就像当于一类的半成品,需要子类继承并覆盖其中的抽象方法。2,abstract修饰方法会使这个方法变成抽象方法,也就是只有声明(定义)而没有实现,实现部分以”;”代替。需要子类继承实现(覆盖)。 注意:有抽象方法的类一定是抽象类。但是抽象类中不一

2018-01-17 16:17:12 14779

原创 关于虚表和虚表指针

有关知识复习1:动态多态 动态绑定:在程序执行期间(非编译期间)判断所引用对象的实际类型,根据其实际类型调用相应的方法。 2:动态多态具体实现、class A{public: virtual void funtest1() { cout << "A.funtest1" << endl; } virtual void funtest2()

2017-04-13 17:49:49 3671 2

原创 如何通过Git命令窗口将本地工程提交至GitHub

目标: 解决的问题是如何通过Git命令窗口将本地工程提交至GitHub。步骤:  1.首先登陆GitHub网站https://github.com/  2.新建Repository  3.新建TicketBrushSystem的Repository,其中红框的几处可以根据实际情况自行填写。  4.将TicketBrushSystem克隆到本地  4.1.使用Git Bash将工作...

2018-10-24 16:50:39 245

原创 java ArrayList 解析

ArrayList源码解析 一、对于ArrayList需要掌握的七点内容ArrayList的创建:即构造器往ArrayList中添加对象:即add(E)方法获取ArrayList中的单个对象:即get(int index)方法删除ArrayList中的对象:即remove(E)方法遍历ArrayList中的对象:即iterator,在...

2018-05-07 10:30:33 257

转载 ssh-增删查改

转自:https://blog.csdn.net/bear_wr/article/details/52386257 一、select&lt;!-- 查询学生,根据id --&gt; &lt;select id="getStudent" parameterType="String...

2018-04-26 11:46:20 349

原创 如何使用迭代器

通常情况下,我们希望遍历一个集合中的元素。例如,显示集合中的每个元素。 一般遍历数组都是采用for循环或者增强for,这两个方法也可以用在集合框架,但是还有一种方法是采用迭代器遍历集合框架,它是一个对象,实现了Iterator 接口或ListIterator接口。 迭代器,能够通过循环来得到或删除集合的元素。ListIterator 继承了Iterator,以允许双向遍历列表和修改元素。...

2018-04-26 10:39:49 515

原创 从钉钉后台API获取企业通讯录以后,获取每个人的钉钉运动步数

企业提倡一起运动,用钉钉计步方式督促大家积极锻炼,需要对大家的步数做统计,而钉钉后台只能保存近期一个月的运动数据,所以需要调用钉钉提供的开放API获取运动数据并保存在自己的服务器。 //获取部门列表 public static List&lt;ht&gt; getDepart() throws Exception{ try { ...

2018-04-25 16:32:35 5198

原创 从钉钉后台API获取企业通信录

现在很多企业都在使用钉钉办公,这样一来从钉钉获取最新的企业通讯录就非常方便,钉钉开放平台有关于开发的很多介绍。//获取部门成员 public static List&lt;contacts&gt; getDepartmentUser() throws Exception{ try { String accessToken = AuthHelper...

2018-04-25 16:22:46 9507 5

原创 SQL 快速参考

SQL 语句 语法 AND / OR SELECT column_name(s) FROM table_name WHERE condition AND|OR condition ALTER TABLE ALTER TABLE table_name ADD colu...

2018-04-04 17:05:04 165

转载 进制转换

今天翻了一本计算机基础的书籍,其中十进制、二进制、八进制、十六进制之间的转换挺有意思的,也容易犯糊涂,特温故而知新。&nbsp;十进制数制系统&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;十进制数制系统包括&nbsp;10&nbsp;个数字:0、1...

2018-03-19 15:21:09 250

原创 快速转载博客之复制原文HTML代码

实现  因为我自己当初想转载的时候却不知道该怎么转载,所以学会了之后就把方法写出来,帮助那些想转载却不知道该怎么转载的人(大神勿笑)。   我们首先打开要转载的博客,然后鼠标右键就会出现下面的菜单:   我们点击【审查元素】,就会出现当前HTML页面的代码,...

2018-03-19 15:16:45 2550 1

原创 数据库函数

一、数学函数ABS(x) 返回x的绝对值 BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制) CEILING(x) 返回大于x的最小整数值 EXP(x) 返回值e(自然对数的底)的x次方 FLOOR(x) 返回小于x的最大整数值 GREATEST(x1,x2,…,xn)返回集合中最大的值 LEAST(x1,x2,…,xn) 返回集合中最小的值 LN

2018-01-17 15:09:31 245

原创 sql sever时间函数解析(一)

SQL Server Date 函数一:SQL Server GETDATE() 函数 GETDATE() 函数从 SQL Server 返回当前的日期和时间。 用法:SELECT GETDATE() as a结果a2018-01-11 16:15:08.680SQL Server DATEPART() 函数DATEPART() 函数用于返回日期/时间的单独部分,

2018-01-11 16:57:07 541

原创 关于Java继承之重写与重载

Java 重写(Override)重写即子类按照自己的需要重新实现父类的方法,二者返回值,名称,参数列表一致,实现的内容不一样。 在调用这两个方法时,会根据实例出的对象决定调用方法。 父类对象调用父类方法。 子类对象调用子类方法。 这是由于在编译阶段,只是检查参数的引用类型。 然而在运行时,Java虚拟机(JVM)指定对象的类型并且运行该对象的方法。 因此在下面的例子中,之所以能编译成功

2018-01-11 14:49:50 1086

原创 关于Java继承-继承以后构造器的实现

子类不能继承父类的构造器(构造方法或者构造函数),但是父类的构造器带有参数的,则必须在子类的构造器中显式地通过super关键字调用父类的构造器并配以适当的参数列表。class A { private int n; A(int n) { System.out.println("A(int n)"); this.n = n; }

2018-01-10 16:56:33 485

原创 关于Java-Java继承

继承的概念继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。类的继承格式在 Java 中通过 extends 关键字可以申明一个类是从另外一个类继承而来的,一般形式如下:class A{}class B extends

2018-01-10 16:03:03 206

原创 关于Java

日常入门public class helloword { public static void main(String[] args){ System.out.println("hello word"); }}

2018-01-10 14:46:07 139

转载 Sqlserver_left join 、right join、 inner join 用法

left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) 只返回两个表中联结字段相等的行举例如下: 表A记录如下: aID     aNum 1     a20050111 2     a20050112 3     a200501

2018-01-05 10:06:34 1830

转载 C++文件操作详解(ifstream、ofstream、fstream)

本文转自: http://www.cnblogs.com/azraelly/archive/2012/04/14/2446914.html C++ 通过以下几个类支持文件的输入输出: ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引

2017-09-12 12:43:54 538

原创 二叉树面试题(部分)

#pragma once#include<iostream>#include<stdlib.h>#include<stack>#include<queue>using namespace std;template<class T>struct BinaryTreeNode{ T _data; BinaryTreeNode<T>* _left; BinaryTr

2017-08-10 17:23:33 237

原创 判断元素出栈,入栈顺序的合法性

个人理解: 就是给两个等长并且不为空的序列,一个叫做入栈序列,一个叫做出栈序列。然后定义一个栈,刚开始为空,把入栈序列的数据挨个往定义的栈里面push,都知道栈是后进先出,所以当把入栈序列中的某一个数据push进栈时(此时这个新数据一定是栈顶的数据)发现和所给定的出栈序列的第一个数据相等,那么就把这个数据pop出栈,然后出栈序列的下标后移继续上一步判断,依次循环。当不满足而且入栈序列的数据还没有全

2017-07-26 13:14:45 452

原创 判断两个链表是否相交

编译器:vs2013 比较好的方法有两个:一、将其中一个链表首尾相连,检测另外一个链表是否存在环,如果存在,则两个链表相交,而检测出来的依赖环入口即为相交的第一个点。二、如果两个链表相交,那个两个链表从相交点到链表结束都是相同的节点,我们可以先遍历一个链表,直到尾部,再遍历另外一个链表,如果也可以走到同样的结尾点,则两个链表相交。这时我们记下两个链表length,再遍历一次,长链表节点先出发前进(

2017-07-25 14:21:11 363

原创 用两个队列实现栈

1.栈 先入后出 FILO 2.队列 后入先出 FIFO 数据存在两个队列里面,两个队列总有一个是空的,因为这里需要一个空队列作为临时缓存数据的容器。 首先第一次插入数据时两个队列都是空的,即栈为空,这时可以随便选择一个队列将需要存储的数据插入,在下面的代码中选择第一个队列首先插入数据,接下来要将这些数据从第一个队列里面取出来,但并不是全部取出来,第一个队列中的数据取到只剩一个的时

2017-07-18 23:52:57 276

原创 用两个栈实现队列

1.队列是先入的先出,FIFO 2.栈是先入的后出,后入的先出,FILO,LIFO 3.因为FILO,取出栈里面的数据是要从顶取得,即栈所提供的top();这个接口,删除这个数据用pop();接口. 4: 刚开始是两个空的栈,往stack1存入数据,利用stack1.push();接口 然后把stack1里面的数据挨个stack1.pop();出来,用stack2.push(); 接口再

2017-07-18 23:27:30 174

原创 单链表基础操作

编译器:vs2013#pragma once#include<assert.h>#include<stdio.h>#include<stdlib.h>typedef int DataType;typedef struct ListNode{ DataType data; struct ListNode* next;}ListNode,*pNode,*pList;voi

2017-07-14 15:11:17 174

原创 关于排序

编译器版本:vs2013排序的目的::如果输入一系列数字a1,a2,a3,a4,a5,a6,a7 经过排序有 ::输出a1< a2< a3< a4< a5< a6< a7或者 ::输出a1>a2>a3>a4>a5>a6 >a7 即让一系列无序数字从大到小或者从小到大有序即为排序。学习中的几种排序算法1:插入排序 基本思想: 升序:给一个数组,并不知道是否有序,从第二个数开始依次往后直到数

2017-07-12 16:20:00 234

原创 关于信号量

什么是信号量信号量的本质是一种数据操作锁、用来负责数据操作过程中的互斥、同步等功能,信号量用来管理临界资源的,它本身只是一种外部资源的标识、不具有数据交换功能,而是通过控制其他的通信资源实现进程间通信,信号量就相当于是一个计数器。当有进程对它所管理的资源进行请求时,进程先要读取信号量的值,大于0,资源可以请求,等于0,资源不可以用,这时进程会进入睡眠状态直至资源可用。当一个进程不再使用资源时,信号量

2017-06-10 09:08:15 294

原创 关于线程

什么是线程?线程是在进程内部运行的控制流程。多线程的控制流程可以长期共存,操作系统会在各线程之间调度和切换,就像在多个进程之间调度和切换一样。实际上,在Linux下没有真正意义上的线程,它是由进程模拟出来的。 由于同一个进程的多个线程共享同一地址空间地址空间,因此代码段和数据段都是共享的,如果定义一个函数,在各线程之中都可以调用,如果定义一个全局变量,在各线程中都可以访问到,此外,线程还共享以下资

2017-06-10 08:31:03 286

原创 迭代器实现vector

#define _CRT_SECURE_NO_WARNINGS 1#pragma once#include<iostream>#include<stdlib.h>using namespace std;template<class T>class Vector{public: typedef T* Iterator; typedef const T* ConstIte

2017-05-25 07:45:29 250

原创 关于类型萃取

版本1注:编译器 vs2013. test.h#ifndef __TEST_H__#define __TEST_H__#include<iostream>#include<string>#include<stdlib.h>using namespace std;#endiftypetraits.h#pragma oncestruct __TrueType{};struct _

2017-05-10 13:17:01 239

原创 关于模板

注:编译器版本 VS2013;#ifndef __TEST_H__#define __TEST_H__#include<iostream>#include<string>#include<stdlib.h>using namespace std;#endif函数模板#define _CRT_SECURE_NO_WARNINGS 1#include "test.h"template<

2017-05-10 12:24:27 325

原创 关于异常

程序的一般消亡形式:无疾而终,自杀,他杀。 C++自身有着非常强的纠错能力,发展到如今,已经建立了比较完善的异常处理机制。C++的异常情况无非两种,一种是语法错误,即程序中出现了错误的语句,函数,结构和类,致使编译程序无法进行。另一种是运行时发生的错误,一般与算法有关。  关于语法错误,不必多说,写代码时心细一点就可以解决。C++编译器的报错机制可以让我们轻松地解决这些错误。  第二种是运行时的错

2017-05-10 11:32:04 239

原创 C语言实现动态顺序表

头文件#include<string.h>#include<assert.h>#include<stdio.h>#include<stdlib.h>#ifndef _LIST_H__#define _LIST_H__#define DEFAULT 3//初始化开辟容量大小#define INT_SZ 2//每次固定增容大小typedef int DataType;typedef s

2017-04-27 12:53:04 278

原创 关于模板--模板函数

泛型编程编写与类型无关的代码,是代码复用的一种手段,模板是泛型编程的基础。模板分类1.模板函数 代表了一个函数家族,该函数无关类型,在使用时才根据实参类型得到特定的函数。#ifndef __TEST_H__#define __TEST_H__#include<iostream>#include<stdlib.h>using namespace std;#endif#define _CRT

2017-04-26 20:50:45 353

原创 C语言实现单链表

头文件#ifndef __LIST_H__#define __LIST_H__#include<stdio.h>#include<stdlib.h>#include<assert.h>typedef int DataType;typedef struct Node//创建链表节点模型{ DataType data; struct Node *next;}Node,*p

2017-04-25 18:42:21 337

原创 c语言实现简单顺序表

头文件#define _CRT_SECURE_NO_WARNINGS 1#include<string.h>#include<assert.h>#include<stdio.h>#include<stdlib.h>#ifndef SEQLIST_H__#define SEQLIST_H__#define MAX 100typedef int DataType;typedef str

2017-04-22 15:52:25 845

原创 实现字符串类型的深拷贝

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<stdlib.h>#include<iostream>using namespace std;class String{public: String(const char* s = "") { if (NULL == s)

2017-04-15 11:59:53 413

原创 关于多态

多态基本概念顾名思义就是多种形态,多种状态。分类静态多态编译器在编译期间完成的,编译器根据函数实参的类型(可能会进行隐式类型的转换),可推断出要调用哪一个函数,如果有对应的函数就调用该函数,否则出现编译错误。#include<iostream>#include<stdlib.h>using namespace std;class C{public: int fun(int x,in

2017-04-08 17:50:00 244

原创 关于继承

继承的概念继承是面向对象程序设计使代码可以复用的最重要的手段,允许程序员在保持原有类特性的基础上进行扩展,增加概功能,这样产生新的类叫派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。 定义格式:派生类(子类) :继承类型(基类成员在派生类中可见性) 基类(父类) 继承关系(方式):公有、保护、私有 类成员访问限定符:public、protected、private

2017-04-08 14:31:43 371

空空如也

空空如也

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

TA关注的人

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