自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(57)
  • 资源 (1)
  • 收藏
  • 关注

原创 stock cpp

stock.h#pragma once#ifndef STOCK_H_#define STOKC_H_#include <string>class Stock {private: std::string company; long shares; double share_val; double total_val; void set_tot() { tot...

2019-02-09 00:13:39 214 2

原创 析构函数

用构造函数创建对象后,程序负责跟踪该对象,直到其过期为止。对象过期时,程序将自动调用一个特殊的成员函数,该函数的名称令人生畏——析构函数。析构函数完成清理工作,因此实际上很有用。例如,如果构造函数使用new来分配内存,则析构函数将使用delete来释放这些内存。Stock的构造函数没有使用new,因此析构函数实际上没有需要完成的任务。在这种情况下,只需让编译器生成一个什么要不做的隐式析构函数即可,...

2019-02-08 23:05:42 824

原创 函数模板

作用:使用泛型来定义函数,其中的可用具体类型(如int或double)替换,通过将类型作为参数传递给模板,可使编译器生成该类型的函数template<typename T>void Swap(T &a,T &b){ T temp; temp=a; a=b; b=temp;}重载的模板template<typename T>vo...

2019-01-23 13:58:41 140

原创 linux文件系统

目录用途/虚拟目录的根目录。通常不会在这里存储文件/bin二进制目录,存放许多用户级的GNU工具/boot启动目录,存放启动文件/dev设备目录, Linux在这里创建设备节点/etc系统配置文件目录/home主目录, Linux在这里创建用户目录/lib库目录,存放系统和应用程序的库文件/media媒体目录,可移动媒体...

2019-01-14 13:31:07 107

原创 strback.cpp

#include<iostream>char * bulidstr(char,int);int main(){ using namespace std; int times; char ch; cout<<"Enter acharacter: "; cin>>ch; cout<<"Ent...

2019-01-13 00:17:46 119

原创 c++ string类

ISO/ANSI C++98标准通过添加string类扩展了C++库,因此现在可以string类型的变量(使用C++的话说是对象)而不是字符数组来存储字符串要使用string类,必须在程序中包含头文件string。string类位于名称空间std中,因此您必须提供一条using编译指令,或者使用std::string来引用它。string类定义隐藏了字符串的数组性质,让您能够像处理普通变量那样处...

2019-01-11 04:48:02 86

原创 c++ cctype

#include<iostream>#include<cctype>int main(){ using namespace std; cout<<"Enter text for analysis, an type @" "to terminate input.\n";

2019-01-11 03:54:08 278

原创 JSON 全国省市联动

HTML <div class="form-group"> <label class="col-sm-3 control-label no-padding-right" for="address">联系地址: </label> <div class="col

2018-12-02 00:56:41 464

原创 python字符串和编码

print(“are you ok”)are you okprint(‘a’)a对于单个字符编码提供 ord() 函数获取字符整数表示Aord(‘A’)65chr(66)‘B’b’abc’.decode(‘ascii’)‘abc’从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法b’\xe4\xb8\xad\x...

2018-11-22 22:16:41 83

原创 pl/sql 嵌套表

嵌套表指的是在一个数据表定义同时加入其他内部表的定义语法CREATE [OR REPLACE] TYPE 类型名称 AS|IS TABLE OF 数据类型 [NOT NULL]; /例:SQL> CREATE OR REPLACE TYPE project_nested IS TABLE OF VARCHAR2(50) NOT NULL; 2 /类型已创建。--创建表指...

2018-11-21 20:56:56 434

原创 shell 读取参数

bash sell 会将一些成为位置参数的特殊变量分配给输入到命令行参赛中的所有参数位置参数三标准的数字:$0是程序名,$1是第一个参数 $2是第二个参数,依次类推,直到第九个参数$9使用$1#!/bin/bashfactorial=1 for (( number = 1; number <= $1 ; number++ ))do factorial=$[ $facto...

2018-11-21 19:18:18 9047

原创 PL/SQL 索引表

定义索引表TYPE 类型名称 IS TABLE OF 数据类型 [NOT NULL]INDEX BY [PLS_INTEGER | BINARY_INTEGER | VARCHAR2(长度)];SQL> DECLARE 2 TYPE info_index is TABLE OF VARCHAR(20) 3 INDEX BY PLS_INTEGER; 4 ...

2018-11-19 21:10:02 209

原创 pl/sql 记录类型

定义记录类型 成员名称 数据类型[[NOT NULL][:= 默认值] 表达式], ....);使用记录类型返回接受查询结果

2018-11-13 21:53:12 182

原创 pl/sql 内部程序块 &异常处理

--子程序声明部分,例如定义变量,常量,游标 BEGIN -- 子程序编写sql语句 EXECTPTION -- 子程序处理异常 END; 2 v_x NUMBER :=30; --全局变量 3 BEGIN 4 DECLARE 5 v_x VARCHAR2(40):='ABC'...

2018-11-09 20:58:15 244

原创 pl/sqlf分支结构

if语句分支语法:if 判断条件 then 满足执行end if ;if 判断条件 then 满足执行else 不满足执行end if ;if 判断条件 then 满足执行elseif 判断条件2 满足执行 else 不满足执行end if ;SQL> DECLARE 2 v_result NUMBER; 3 B...

2018-11-07 22:11:07 171

原创 pl/sql 运算符

pl/sql 一共提供4类运算符赋值运算符:为变量或常量赋值连接运算符:将多个字符串进行连接关系运算符:判断两个操作数据大小关系,返回值true或flase,如果有一个数值为NULL,最终结果为NULL逻辑运算符,AND , OR ,NOT赋值运算符:赋值运算符的主要功能是将一个数字赋予指定数据类型的变量,语法:变量:=表达式;SQL> DECLARE 2 ...

2018-10-29 23:30:43 375

原创 pl/sql 变量的声明与赋值

pl/sql 是一种强类型的编程语言,所有的变量必须声明后再使用,要求在DECLARE部分进行声明变量名称规定:变量名称可以有字母,数字 _ $ #等组成所有的变量名称要求以字母开头,不能是oral中的保留字变量长度小于30个字符定义变量如果没有赋值则以NULL作为默认值 SQL> DECLARE 2 v_result VARCHAR2(30)...

2018-10-28 12:53:15 10101

原创 pl/sql简介

PL/SQL Developer是一个集成开发环境,专门开发面向Oracle数据库的应用。PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL)。PL/SQL是Oracle数据库对SQL语句的扩展。在普通SQL语句的使用上增加了编程语言的特点,所以PL/SQL把数据操作和查询语句组织在PL/SQL代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功...

2018-10-27 23:22:41 312

转载 ES6Script - let & const命令

let -用法类似var,用来声明变量,但是所声明的变量,只在let命令所在的代码块内有效。test:{ let a=10; var b=1;}b //10a //a is not defined使用var声明i是var声明的,在全局范围内都有效,结果是10var a=[];for(var i=0;i<10;i++){a[i]=function(){ con...

2018-10-11 19:36:27 144

原创 Redis

Redis是使用c语言开发的一个高性能键值数据库。Redis可以通过一些键值类型来存储数据。键值类型:String字符类型map散列类型list列表类型set集合类型sortedset有序集合类型redis的应用场景缓存(数据查询、短连接、新闻内容、商品内容等等)。(最多使用)分布式集群架构中的session分离。聊天室的在线好友列表。任务队列。(秒杀、抢购、12306等等

2018-10-11 10:16:20 116

原创 使可变性最小化

不可变类存在有许多理由:不可变类比可变类更加易于设计,实现和使用,不容易出错,且更加安全 不可变类规则不要提供任何会修改对象状态的方法保证类不会被扩展是所有的域都是final的使所有的域都称为私有的确保对于任何可变组件的互斥访问 不可变类真正唯一缺点是对于每个不同的值,都需要一个单独的对象,创建这种对象的代价可能很高

2018-02-06 14:58:18 219

原创 顺序容器

#include<list>#include<vector>#include<string>#include<queue>#include<forward_list>#include<iostream>#include<array>int main() { using namespace st

2018-02-05 15:22:18 159

原创 指针

指针是指向来一个类型的符合类型,与引用类似,指针也实现对其他对象的间接访问,指针本身是一个对象,允许赋值,拷贝,在生命周期,可以先后指向不同的对象 与引用不同,指针无须在定义时赋初值.指针若没有初始化,将拥有一个不确定的值示范实例 int ival=42; int *p=&ival;如果指针指向一个对象可以使用解引用 * 来访问该对象int ival=42;int *p=&ival;co

2018-02-05 11:38:46 89

原创 引用

引用 refrence为对象起的另一个名字,声明符写为 &d 的形式来定义引用类型 int ival=1024; int &refval=ival; //refval指向ival; int &refval2; //error:引用必须初始化

2018-02-05 11:25:02 223

原创 使类和成员的可访问性最小化

要区别设计良好的模块与设计不好的模块,最重要的因素在于,这个模块而言,是否隐藏内部数据和其他实现细节.设计良好的模块会隐藏所有的实现细节,把它的api和其他的实现清晰的隔离开来.然后模块之间只通过他们的api进行通信, 一个模块不需要知道其他模块的内部工作情况,这个概念被称为信息隐藏 information hiding 为什么要信息隐藏,大多数理由都因为一个事实, 有效解除系统

2018-02-05 10:56:36 199

原创 通过私有构造器强化不可实例化的能力

有时候,你可能需要编写值包含静态方法和静态域的类,这些来名声不好,因为有些人扎面向对象的语言中滥用这样的类来编写过程化的程序,尽管如此,它们也确实有它们特别的用处,我们可以利用这种类以,java.lang.Math或者java.util.Arrays的方式,把基本类型和素质类型上的相关方法组织起来,我们也可以通过java.util.collections的方式,把实现特定接口对象上的静态方法组织起来

2017-10-10 15:21:56 212

原创 用私有构造器或枚举类型强化Singleton属性

单例 Singleton 指仅仅被实例化一次的类,Singleton 通常被用来代表本质上唯一的系统组件 实现Singleton有两种方法,两种方法都要把构造器私有化 并导出公有的静态成员. 1. public class Elvis{ public static final Elvis INSTANCE=new Elvis(); private Elvis(){

2017-09-28 15:58:54 357

原创 遇到多个构造器参数时要考虑用构建器Bulider

静态工厂和构造器有个共同的局限性:他们都不能很好的扩展大量的可选参数, 比如包装食品营养成分标签,含量,卡路里,等等,有可能会超过20个可选域,对于这样的类,应该用那种构造器或静态方法来写呢,构造器: 程序员一般习惯采用重载构造器来实现,第一个构造器,提供一个必要参数,第二个构造器提供,一个必要参数,一个可选参数,依次类推.public NutritionFacts(int servi

2017-09-21 21:26:12 162

转载 Cglib动态代理

JDK实现动态代理需要实现类通过接口定义业务方法,对于没有接口的类,如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理均是实现Spring AOP的基础。 简单的实现举例:这是一个需要被代理的类,也就是父类,通过字

2017-09-20 15:22:28 182

原创 Spring -1

Spring框架的概述 Spring是一个开源框架Spring是于2003 年兴起的一个轻量级的Java开发框架,由Rod Johnson在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2

2017-09-20 11:01:20 324

原创 枚举工厂

优点: 1.避免错误调用的发生 一般工厂方法模式中产生方法(也就是createcar方法)可以接受三种类型的参数:类型参数、String参数(产生方法中判断String参数是需要产生什么产品)、int参数(根据int值判断需要生产什么类型的产品),这三种参数都是宽泛的数据类型,很容易产生错误(比如边界值问题、null值问题),而且出现这类错误编辑器还不会报警。而使用枚举类型的工

2017-09-07 22:52:31 336

原创 考虑使用静态工厂代替构造器

创建和销毁对象 –静态工厂 优势:静态工程方法与构造器不同的第一大优势 他们有名称.如果构造构造的产生本身没有确切的描述正返回的对象,具有适当名称的静态工厂会更容易使用,产生的代码更易阅读静态工程方法与构造器不同的第二大优势 不必在每次调用它们都创建一个新的对象.静态工程方法与构造器不同的第三大优势 它们可以返回类型的任何子类型对象,这样我们在

2017-09-07 22:06:53 210

原创 原型模式

原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据库,以此来减少数据

2017-09-07 11:20:27 229

原创 建造者模式

意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 主要解决:主要解决在软件系统中,有时候面临着”一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法却相对稳定。 何时使用:一些基本部件不会变,而其组合经常变化的时候。 如何解决:将变与不变分离开。 关键代码:建造者

2017-09-06 09:51:34 144

转载 单列模式

保证一个类仅有一个实例,并提供一个访问它的全局访问点。public class SingObject { private static SingObject instance=new SingObject(); private SingObject(){} public static SingObject getInstance(){ return instance; } pu

2017-09-04 16:00:38 173

原创 工厂模式

接口:public interface Shape { void draw();}实体类:public class Rectangle implements Shape { @Override public void draw() { System.out.println("Inside Rectangle:draw() method."); }}publi

2017-09-04 09:46:25 144

原创 用脚本批量部署软件

cmd:解除powershell 脚本执行权限powershell -noprofile Set-ExecutionPolicy Unrestrictedpowershell 下载文件 执行文件$client = new-object System.Net.WebClient$client.DownloadFile('\\DW-PC\Users\sd\xx.msi', 'D:\1.msi')

2017-07-19 12:43:25 1284

原创 hibernate -2

1. 唯一标识OID的检索方式 * session.get(对象.class,OID)2. 对象的导航的方式3. HQL的检索方式 * Hibernate Query Language -- Hibernate的查询语言4. QBC的检索方式 * Query By Criteria -- 条件查询5. SQL检索方式(了解) * 本地的SQL检索HQL的查询方式

2017-07-11 15:23:59 186

原创 hibernate 3

对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式. hibernate实现ORM主要使用到的文件有:映射类(.Java)、映射文件(.hbm.xml)和数据库配置文件(.properties/.cfg.xml),它们各自的作用如下。j

2017-07-10 15:09:58 204

原创 struts2 拦截器

了解拦截器 拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作. 自定义拦截器/** *

2017-06-19 16:44:58 255

空空如也

空空如也

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

TA关注的人

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