try

js判断非127开头的IP地址

落爺英雄遲暮 提交于 2020-01-03 17:03:46
js验证回送地址,IP地址不能以127开头 回送地址(127.x.x.x)是本机回送地址(Loopback Address) var ipNotStartWith127 = function(ip) { try { var data = ip.split("."), ip1; return 4 == data.length && 127 !== parseInt(data[0]) } catch (e) { return !1 } } console.log(ipNotStartWith127("127.0.0.1")); // false console.log(ipNotStartWith127("192.168.1.1")); // true 来源: https://www.cnblogs.com/sirdong/p/12145496.html

Delphi编码规范

梦想与她 提交于 2020-01-03 01:52:47
规范 --======== 以下是在之前的公司与别人共同参与制定的Delphi开发规范(5年前了,那时用的还是Delphi7,部分规则可能有些过时,但不整理了,觉得有用的人,自己整理成适合自己的开发规范吧), 目 录 一、序言 二、通用源代码格式规则 2.1 缩格 2.2 页边空格 2.3 Begin…End 配对 2.4代码文件中通用符号含义 2.5注释写法 三、Object Pascal 3.1 括号 3.2 保留字和关键字 3.3 过程和函数(例程) 3.3.1 命名/格式化/声明 3.3.2 形式参数 3.3.2.1 格式化 3.3.2.2 命名 3.3.2.3 参数的排序 3.3.2.4 常量参数 3.3.2.5 名称的冲突 3.4 变量 3.4.1 变量的命名和格式 3.4.2 局部变量 3.4.3 全局变量的使用 3.5 类型 3.5.1 大写约定 3.5.1.1 浮点指针类型 3.5.1.2 枚举类型 3.5.1.3 变数和ole变数类型 3.5.2 结构类型 3.5.2.1 数组类型 3.5.2.2 记录类型 3.6 语句 3.6.1 if 语句 3.6.2 case 语句 3.6.2.1 一般性话题 3.6.2.2 格式 3.6.3 while 语句 3.6.4 for 语句 3.6.5 repeat 语句 3.6.6 with 语句 3.6.6.1 一般话题

C# 编码规范和编程好习惯

杀马特。学长 韩版系。学妹 提交于 2020-01-03 01:44:53
C# 编码规范和编程好习惯 转自: http://developer.51cto.com/art/200601/20130.htm 阅读提示: 本文介绍在C# 编码的时候需要遵守的规范,以及程序员应该养成的编程好习惯…… 命名惯例和规范 注记 : Pascal 大小写形式-所有单词第一个字母大写,其他字母小写。 Camel大小写形式-除了第一个单词,所有单词第一个字母大写,其他字母小写。 类名使用Pascal 大小写形式 public class HelloWorld { ... } 方法使用Pascal 大小写形式 public class HelloWorld { void SayHello(string name) { ... } }< 变量和方法参数使用Camel 大小写形式 public class HelloWorld { int totalCount = 0; void SayHello(string name) { string fullMessage = "Hello " + name; ... } } 不要使用匈牙利方法来命名变量 以前,多数程序员喜欢它-把数据类型作为变量名的前缀而m_作为成员变量的前缀。例如: string m_sName; int nAge; 然而,这种方式在.NET编码规范中是不推荐的。所有变量都用camel 大小写形式

C#中try catch finally 用法

怎甘沉沦 提交于 2020-01-02 00:11:26
1、将预见可能引发异常的代码包含在try语句块中。 2、如果发生了异常,则转入catch的执行。 catch有几种写法: catch 这将捕获任何发生的异常。 catch(Exception e) 这将捕获任何发生的异常。另外,还提供e参数,你可以在处理异常时使用e参数来获得有关异常的信息。 catch(Exception的派生类 e) 这将捕获派生类定义的异常,例如安卓中文网,我想捕获一个无效操作的异常,可以如下写: catch(InvalidOperationException e) { .... } 这样,如果try语句块中抛出的异常是InvalidOperationException,将转入该处执行,其他异常不处理。 catch可以有多个,也可以没有,每个catch可以处理一个特定的异常。.net按照你catch的顺序查找异常处理块,如果找到,则进行处理,如果找不到,则向上一层次抛出。如果没有上一层次,则向用户抛出,此时,如果你在调试,程序将中断运行,如果是部署的程序,将会中止。 如果没有catch块,异常总是向上层(如果有)抛出,或者中断程序运行。 3、finally finally可以没有,也可以只有一个。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行

C#中try catch finally 用法

a 夏天 提交于 2020-01-02 00:11:18
1、将预见可能引发异常的代码包含在try语句块中。 2、如果发生了异常,则转入catch的执行。 catch有几种写法: catch 这将捕获任何发生的异常。 catch(Exception e) 这将捕获任何发生的异常。另外,还提供e参数,你可以在处理异常时使用e参数来获得有关异常的信息。 catch(Exception的派生类 e) 这将捕获派生类定义的异常,例如安卓中文网,我想捕获一个无效操作的异常,可以如下写: catch(InvalidOperationException e) { .... } 这样,如果try语句块中抛出的异常是InvalidOperationException,将转入该处执行,其他异常不处理。 catch可以有多个,也可以没有,每个catch可以处理一个特定的异常。.net按照你catch的顺序查找异常处理块,如果找到,则进行处理,如果找不到,则向上一层次抛出。如果没有上一层次,则向用户抛出,此时,如果你在调试,程序将中断运行,如果是部署的程序,将会中止。 如果没有catch块,异常总是向上层(如果有)抛出,或者中断程序运行。 3、finally finally可以没有,也可以只有一个。无论有没有发生异常,它总会在这个异常处理结构的最后运行。即使你在try块内用return返回了,在返回前,finally总是要执行

[转]Java Jacob操作Excel

夙愿已清 提交于 2020-01-01 21:57:09
Jacob项目:https://sourceforge.net/projects/jacob-project/ 转自:https://blog.csdn.net/ZY_extreme/article/details/80019009 转自:http://www.360doc.com/content/14/0310/11/12385684_359224303.shtml 转自:https://blog.csdn.net/ZY_extreme/article/details/80007232 转自:https://www.cnblogs.com/vczh/p/5692527.html 转自:https://blog.csdn.net/javadakangxiaobai/article/details/83422396 转自:https://blog.csdn.net/a0701302/article/details/62236470 /** 2018年4月20日 **/ import com.jacob.com.*; import com.jacob.activeX.*; public class ReadExcel { private static ActiveXComponent xl; private static Dispatch workbooks = null;

IOC容器的依赖注入

折月煮酒 提交于 2020-01-01 12:25:05
IOC容器的初始化完成的主要工作是在IOC容器中建立BeanDefinition数据映射。在此过程中并没有看到IOC容器对Bean依赖关系进行注入。 注意到依赖注入的过程是用户第一次向IOC容器索要Bean时触发的。当然也有例外,也就是我们可以在BeanDefinition信息中通过控制lazy-init属性来让容器完成对Bean的预实例化。 BeanFactory中的getBean接口的实现就是触发依赖注入的地方。 AbstractBeanFactory的实现: final String beanName = transformedBeanName(name); Object bean; // Eagerly check singleton cache for manually registered singletons. Object sharedInstance = getSingleton(beanName); if (sharedInstance != null && args == null) { if (logger.isDebugEnabled()) { if (isSingletonCurrentlyInCreation(beanName)) { logger.debug("Returning eagerly cached instance of

Lock&Condition实现线程同步通信

梦想的初衷 提交于 2020-01-01 09:35:06
Definition Condition 的功能类似于传统线程技术中的Object.wait和Object.notify的功能。 一个锁内部可以有多个Condition,即有多路等待和通知。 在传统的线程机制中一个监视器对象只能有一路等待和通知,要想实现多路等待和通知,必须嵌套使用多个同步监视器对象。 Example 多路等待示例: 1、模板代码 class BoundedBuffer { final Lock lock = new ReentrantLock(); final Condition notFull = lock.newCondition(); final Condition notEmpty = lock.newCondition(); final Object[] items = new Object[100]; int putptr, takeptr, count; public void put(Object x) throws InterruptedException { lock.lock(); try { while (count == items.length) notFull.await(); items[putptr] = x; if (++putptr == items.length) putptr = 0; ++count; notEmpty

线程应用:(七)Lock & Condition同步通信

陌路散爱 提交于 2020-01-01 09:34:34
一、线程锁:Lock 代替synchronized   Lock的作用类似于传统线程模型中的synchronized,更体现面向对象的思想,两个线程执行的代码片段要实现同步互斥的效果,必须要用同一个Lock对象。 1)ReentrantLock //用Lock替换synchronized互斥 import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; public class ThreadTest1 { public static void main(String[] args) { new ThreadTest1().init(); } //起了两个线程,一个一直输出"AAAAAA",一个一直输出"BBBBBB",但调用方法的对象是同一个 public void init(){ final Outputer outputer = new Outputer(); new Thread(new Runnable() { @Override public void run() { while(true){ outputer.output("AAAAAA"); } } }).start(); new Thread(new Runnable() { @Override

Spring(四)

两盒软妹~` 提交于 2020-01-01 00:49:41
Spring 中的 JdbcTemplate JdbcTemplate 概述 它是 spring 框架中提供的一个对象,是对原始 Jdbc API 对象的简单封装。spring 框架为我们提供了很多 的操作模板类。 操作关系型数据的: JdbcTemplate HibernateTemplate 操作 nosql 数据库的: RedisTemplate 操作消息队列的: JmsTemplate 我们今天的主角在 spring-jdbc-5.0.2.RELEASE.jar 中,我们在导包的时候,除了要导入这个 jar 包 外, 还需要导入一个 spring-tx-5.0.2.RELEASE.jar(它是和事务相关的)。 JdbcTemplate 对象的创建 我们可以参考它的源码,来一探究竟: public JdbcTemplate() { } public JdbcTemplate(DataSource dataSource) { setDataSource(dataSource); afterPropertiesSet(); } public JdbcTemplate(DataSource dataSource, boolean lazyInit) { setDataSource(dataSource); setLazyInit(lazyInit);