- java注释转json插件开发实战
java插件maven
目的将java的代码注释转换为json格式,并写入文件本文介绍了完整的开发流程及如何使用运行环境jdk1.8maven3.x设计思想系统构思编译完成的class里没有注释的,所以注释信息只有在编译代码时存储起来将能够生成javadoc.json的代码做成maven插件关键技术与算法需要实现Doclet必须引入下述jar包,来导入com.sun.javadoc.Docletcom.suntools1
- 【网络安全】OSI网络安全体系结构
Hacker_Fuchen
web安全网络安全
1.OSI安全体系结构概述1.1背景与目的OSI安全体系结构是在开放式系统互联(OSI)参考模型的基础上,为了解决网络通信中的安全问题而提出的。随着计算机网络技术的快速发展,数据传输的安全性变得越来越重要。OSI安全体系结构的提出,旨在为网络通信提供一个标准化的安全框架,确保信息在传输过程中的机密性、完整性和可用性。国际标准化组织(ISO)在20世纪80年代提出了OSI参考模型,随后为了应对日益增
- AI如何改变传统工厂的生产模式?
橙蜂智能
数字化转型人工智能
随着第四次工业革命的浪潮席卷全球,制造业的数字化转型成为企业在竞争中脱颖而出的关键。过去,传统制造业往往依赖于大量的人工操作和低效率的管理流程,而如今,智能化、自动化、数据化已经成为未来制造业的必由之路。从车间到云端,制造业的数字化升级不仅仅是技术的革新,更是商业模式、管理理念和企业文化的全面变革。本文将从制造业数字化转型的核心要素、技术实施路径以及面临的挑战等方面,为企业提供一个全面的数字化转型
- 从车间到云端:制造业的数字化升级全攻略
橙蜂智能
数字化转型人工智能大数据经验分享制造
随着第四次工业革命的浪潮席卷全球,制造业的数字化转型成为企业在竞争中脱颖而出的关键。过去,传统制造业往往依赖于大量的人工操作和低效率的管理流程,而如今,智能化、自动化、数据化已经成为未来制造业的必由之路。从车间到云端,制造业的数字化升级不仅仅是技术的革新,更是商业模式、管理理念和企业文化的全面变革。本文将从制造业数字化转型的核心要素、技术实施路径以及面临的挑战等方面,为企业提供一个全面的数字化转型
- 3D Web轻量化引擎HOOPS Communicator如何赋能航空航天制造?
工业3D_大熊
3DCAD开发工具3d制造3D数据可视化3D模型格式转换3D可视化3DWeb轻量化3Dweb可视化
在当今航空航天制造领域,精确度、效率和协作是推动行业发展的关键要素。随着数字化技术的飞速发展,3DWeb可视化开发包HOOPSCommunicator为航空航天制造带来了革命性的变化。它凭借强大的功能和灵活的应用,助力企业在设计、生产、培训等各个环节实现高效协同和创新优化,成为航空航天制造企业迈向数字化转型的重要工具。本文将深入探讨HOOPSCommunicator在航空航天制造中的广泛应用,揭示
- linux清理方法
xuanloyer
linux服务器
本文适用于初学者,主要针对linux学习过程中遇到的内存不足的问题。一.大文件排除法使用find命令直接查找所有大于1G的文件。find/-typef-size+1G得到所有目标文件后,逐一进行排查,删除不需要的文件,如已经解压过的安装包等。使用rm命令进行删除。rm-rf/path/to/largefile二.清理临时文件系统的/tmp目录存放临时文件,很多进程退出后不会自动清理:rm-rf/t
- 艾里 - 贝塞尔子弹(Airy-Bessel bullet)
Luis Li 的猫猫
经验分享图像处理学习论文阅读
一、艾里-贝塞尔子弹的形成原理艾里-贝塞尔子弹的产生源于复杂的波动光学原理。它通常是在特定的光学系统中,通过对光的振幅、相位和偏振等参量进行精确调控而形成的。从数学角度来看,其光场分布可以用艾里函数和贝塞尔函数的组合来描述,这两种函数在光学领域有着独特的性质,它们的交织使得光场在空间和时间上呈现出高度局域化且稳定传播的特性,宛如一颗飞行的“子弹”轨迹,故得名艾里-贝塞尔子弹。例如,在一些实验装置中
- 基于matlab开发的图书馆信息管理系统
2201_75931014
matlab
《基于MatlabGUI的图书管理系统》是一套完备的代码实现方案,专为热衷于数据分析的爱好者以及潜心学习的人士量身打造。Matlab(矩阵实验室)作为一款功能强大的编程环境,在数值计算、数据分析以及可视化展示等方面展现出了卓越的优势。本系统借助Matlab的图形用户界面(GUI)功能,精心构建了一个直观且易于操作的图书管理平台,能够便捷地助力用户开展图书的录入、查询、修改以及删除等各类操作。Mat
- Linux系统管理-Shell-脚本入门
11-pmans-20220308016
linux运维服务器
关于Linux系统管理、Shell以及脚本入门,我们可以从以下几个方面进行清晰的归纳和总结:一、Linux系统管理基础知识Linux系统组成:Linux系统由内核、shell、文件系统和应用程序四个部分组成。Linux系统分为内核版本与发行版本。Linux文件系统:Linux文件系统采用树形结构,根目录(/)是顶级目录。文件是数据的集合,目录则是包含文件和子目录的容器。Linux文件系统使用元数据
- 框架基本知识总结 Day9
小斌的Debug日记
vuevue.js
Node.jsNode.js是一个基于ChromeV8JavaScript引擎构建的JavaScript运行环境。它使得开发者能够在服务器端运行JavaScript,而不仅仅是在浏览器中运行。SE6的一些语法特性1.解构是一种从数组或对象中提取数据并将其赋值给变量的语法。它让你可以更简洁地获取对象或数组中的值,而不需要通过繁琐的方式逐个提取。属性,数组,键值对,方法都可以解构2.模块化类似于jav
- 在 Ubuntu 上安装 MySQL 的详细指南
m0_74824802
面试学习路线阿里巴巴ubuntumysqladb
在Ubuntu环境中安装mysql-server以及MySQL开发包(包括头文件和动态库文件),并处理最新版本MySQL初始自动生成的用户名和密码,可以通过官方的APT包管理器轻松完成。以下是详细的步骤指南,包括从官方仓库和MySQL官方仓库安装的两种方法,并介绍如何处理自动生成的初始用户名和密码,以及如何修改root初始密码。方法一:使用Ubuntu官方仓库安装步骤一:更新系统包列表首先,确保您
- [250224] Yaak 2.0:Git集成、WebSocket支持、OAuth认证等 | Zstandard v1.5.7 发布
x-cmd
dailybloggitwebsocket网络协议OAuth安全压缩运维
目录Yaak2.0发布:Git集成、WebSocket支持、OAuth认证等众多功能!Zstandardv1.5.7发布:性能提升,稳定性增强Yaak2.0发布:Git集成、WebSocket支持、OAuth认证等众多功能!Yaak,一款离线、开源且Git友好的桌面应用,用于与HTTP、GraphQL、WebSockets、SSE和gRPC交互,近日发布了2.0版本,带来了众多令人期待的新功能和改
- 快手弹幕 websocket 分析
2766958292
websocketjavagopython快手快手弹幕ks
声明:本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!逆向分析importtimeimportrequestsimportrandomdefgenerate_random_string(t):characters="useandom-26T198340PX75pxJACKVERYMI
- 流程管理和质量体系管理怎样有效的整合
项目管理
流程管理和质量体系管理的有效整合是提升组织整体运作效率和产品质量的核心因素。有效的整合不仅仅是将两者的标准和要求融合在一起,还要确保两者的相互支持和促进。其中,明确流程界定、统一标准制定、持续改进以及文化融合是实现整合的四个关键环节。在这些环节中,明确流程界定为整合的基础,它要求企业定义每一个流程的目标、输入、输出以及各流程之间的相互联系和依赖,从而确保整个系统能够顺畅、高效地运作。一、明确流程界
- 如何做好企业档案管理
管理
企业档案管理是企业日常运营中不可或缺的一部分,直接关系到信息安全、管理效率和法律合规等多个方面。要做好企业档案管理,必须从建立完善的管理制度、选择适合的管理工具、定期进行档案评估与清理、培养员工档案管理意识等多方面入手。这些措施相互配合,共同作用,确保档案管理工作有条不紊地进行。本文将详细探讨如何做好企业档案管理,帮助企业实现档案管理的规范化、标准化和信息化。一、建立完善的档案管理制度企业档案管理
- 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
从Chrome125开始,支持了一个全新的CSS特性-AnchorPositioning,翻译过来即是锚点定位。在之前的文章中,我们较为系统的讲述了这个新特性的使用,感兴趣的可以翻开一下前文:抢先体验!超强大的AnchorPositioning锚点定位。在本文中,我们将使用锚点定位,实现一个简化版本的Popover功能。下面,我们将一起一探究竟。传统Popover功能长话短说,在日常的前端需求开发
- JavaScript函数的命名方式
哲子君
jsjavascript
函数的命名方式JavaScript代码服用单位是函数,函数可以包含一段可执行代码,也可以接受调用者传入的参数。JavaScript定义函数主要有以下三种方式:第一种方式:命名函数function函数名(参数列表){//function声明函数的关键字要执行的语句块;}functionmyAge(age){document.write('我的年龄是'+age)//我的年龄是19}myAge(19)/
- 大学生知识库人工智能知识助手泉舟创新中心【产品经理】
一米九五的猪
1、授课:张思鹏sunnyact(泉舟时代创新创业中心)参考:2、主要文章内容:大学生知识库(专升本)1.福建统招专升本考试大纲及参考用书http://fj.offcn.com/html/2018/11/108847.html2.福建省教育考试院2019年普通高校专升本考试报名工作的通知http://jyt.fujian.gov.cn/xxgk/zywj/201812/t20181228_4728
- 《JAVA 进阶: Java常用类》
HarkerYX
【Java_Scala基础】
一、字符串相关的类1.String类String类:代表字符串。Java程序中的所有字符串字面值(如"abc")都作为此类的实例实现。String是一个final类,代表不可变的字符序列,就算重新赋值,或使用“+=”,或者使用方法对字符串的内容进行修改,都不会改变原来字符串的内容字符串是常量,用双引号引起来表示。它们的值在创建之后不能更改。String底层其是一个char[]而且被final所修饰
- vue组件间通信的八大方法
@LitterFisher
vuejavascript前端es6
再读vue官方文档系列文章目录vue组件间通信的八大方法文章目录再读vue官方文档系列文章目录前言一、通信种类?二、八大通信方式1.props和$emit2.$parent和$children3.provide和reject4.ref/refs5.Vuex6.slot7.$attrs和$listeners8.localStorage和sessionStorage总结前言刚开始学vue的时候只是读了
- 恢复更新--vue源码系列1之如何看源码
@LitterFisher
vuevue.jsjavascript前端
年过完了,是时候学习了(狗头)。文章目录前言一、前提二、如何看1.学会断点debuger2.整体看代码3.结合别人的vue源码解释总结前言本系列为vue2.6版本的源码分析系列一、前提你总不能一个vue的项目也没写过吧二、如何看1.学会断点debuger巧妙运用这个你会发现看源码会轻松很多。(相信我如果不是很快你就从入门到放弃)为什么?vue里面做了很多性能优化,参数初始化的工作,如果你全部看完,
- 手把手教你架构3d游戏引擎pdf_一个在游戏行业摸爬滚打了十几年的人,为何我对这本书情有独钟...
weixin_39794340
BigNews!《游戏开发:世嘉新人培训教材》今日开始预售啦!经过漫长的等待,这次终于可以买到了。现在下单,你将在图书出印厂的第一时间收到书哦~这本书由世嘉一线开发者执笔,并被选为世嘉新人培训教材,荣获游戏开发者奥斯卡CEDECAWARDS2009著作奖。作者平山尚,1977年生于日本北海道,曾在京都大学研究生院工学研究科进行基因研究,毕业后进入世嘉株式会社,参与了《电脑战机》(PS2)、《超级网
- c++ 智能指针_超详细 C/C++ 学习路线分析:学好 C/C++,走遍天下都不怕
weixin_39637919
c++智能指针c++构造函数数组c++标准异常类层次结构c++图形界面编程c++基于mfc之地图量算c++电视遥控(静态+友元)
C/C++遍布的领域有后端服务器,移动互联网后端,经典Windows界面开发,移动互联网端界面开发,跨平台界面开发,图形分析,系统架构,应用设计,分布架构,还有现在最为流行的人工智能等一些新的技术领域。所以说:C/C++俨然已成为一门贵族语言,成为了编程界最重要的语言之一。如果大家如果在自学遇到困难,想找一个C++学习环境,可以加入我们的C++学习圈,点击我加入吧,会节约很多时间,减少很多在学习中
- JSP基础实践项目:创建交互式网站案例
DIY飞跃计划
本文还有配套的精品资源,点击获取简介:JSP(JavaServerPages)是一种动态网页技术,通过将HTML与Java代码结合,简化了JavaWeb应用的开发。本案例面向初学者,包含多个JSP页面,演示了数据展示、用户输入处理等功能。页面由静态和动态内容组成,展示了JSP生命周期的三个阶段、内置对象、动作标签等核心概念。还包括JavaBean的使用和MVC设计模式的基础。案例包含JSP文件、J
- 当Vue组件的复用性不是很高的时候,组件化还有必要用vue吗?
百锦再@新空间代码工作室
包罗万象vue.js前端javascript前端框架组件复用
图片:Vue作为一个轻量级的前端框架,在个性化开发中的使用非常广泛,尤其是其组件化开发的思想可以有效提升开发效率、可维护性和代码复用性。不过,正如你提到的,当Vue组件的复用性不高时,组件化是否还必要、是否还有使用Vue的必要性就变得有些模糊了。一、Vue组件化开发的优势组件化思想Vue的组件化开发思想,使得开发者可以将UI和业务逻辑划分为不同的模块。每个模块(组件)都可以独立开发、调试、测试和维
- python 基于aiohttp的异步爬虫实战
钢铁知识库
python教程python爬虫开发语言
钢铁知识库,一个学习python爬虫、数据分析的知识库。人生苦短,快用python。之前我们使用requests库爬取某个站点的时候,每发出一个请求,程序必须等待网站返回响应才能接着运行,而在整个爬虫过程中,整个爬虫程序是一直在等待的,实际上没有做任何事情。像这种占用磁盘/内存IO、网络IO的任务,大部分时间是CPU在等待的操作,就叫IO密集型任务。对于这种情况有没有优化方案呢,当然有,那就是使用
- MySQL数据库入门:从零开始掌握数据库基础
心随_风动
数据库数据库mysql
MySQL数据库入门:从零开始掌握数据库基础@[TOC](MySQL数据库入门:从零开始掌握数据库基础)什么是MySQL?为什么学习MySQL?MySQL的核心概念1.数据库(Database)2.表(Table)3.字段(Field)4.记录(Record)5.SQL(StructuredQueryLanguage)MySQL的安装与配置1.下载MySQL2.安装MySQL3.启动MySQL服务
- Docker小游戏 | 使用Docker部署star-battle太空飞船射击小游戏
心随_风动
Docker部署小游戏项目docker容器运维
Docker小游戏|使用Docker部署star-battle太空飞船射击小游戏前言项目介绍项目简介项目预览二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署star-battle网页小游戏下载镜像创建容器检查容器状态检查服务端口安全设置四、访问star-battle网页小游戏五、总结前言在数字化浪潮奔涌的当下,软件开发与部署的模式正经历着深刻变革,容器化技术脱颖而出,成为众
- JDBC连接池
晚安720
开发语言java
1.把对所有Dao类的操作——抽取一个父类抽取:公共的属性、获取连接对象、增删改操作把Dao类中的所有公共内容抽取到一个父类packagecom.zmq.dao;importcom.alibaba.druid.pool.DruidDataSourceFactory;importjavax.sql.DataSource;importjava.io.IOException;importjava.io.
- DOM编程
晚安720
前端javascript服务器
DOM编程what主要是对页面中标签的增删改查。文档对象模型(DocumentObjectModel,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织在一个树形结构中。why学习DOM操作就是操作页面中的标签/节点/元素/标记的对节点的操作what:什么是节点?文档是一个文档节点。(页面中的汉字、空格符、特殊符号)所有的HTML元素都是元素
- 对于规范和实现,你会混淆吗?
yangshangchuan
HotSpot
昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息:
JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So
- android 网络
百合不是茶
网络
android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来 方便查找 , 服务器使用的是TomCat
服务器代码; servlet的使用需要在xml中注册
package servlet;
import java.io.IOException;
import java.util.Arr
- [读书笔记]读法拉第传
comsci
读书笔记
1831年的时候,一年可以赚到1000英镑的人..应该很少的...
要成为一个科学家,没有足够的资金支持,很多实验都无法完成
但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......
- 随机数的产生
沐刃青蛟
随机数
c++中阐述随机数的方法有两种:
一是产生假随机数(不管操作多少次,所产生的数都不会改变)
这类随机数是使用了默认的种子值产生的,所以每次都是一样的。
//默认种子
for (int i = 0; i < 5; i++)
{
cout<<
- PHP检测函数所在的文件名
IT独行者
PHP函数
很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。
代码:
[php]
view plain
copy
// Filename: functions.php
<?php&nbs
- 银行各系统功能简介
文强chu
金融
银行各系统功能简介 业务系统 核心业务系统 业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等 清分清算系统 以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程 国际结算系
- Python学习1(pip django 安装以及第一个project)
小桔子
pythondjangopip
最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上!
第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy!
第二部:解压这个压缩文件,会看到一个setup.p
- php 数组
aichenglong
PHP排序数组循环多维数组
1 php中的创建数组
$product = array('tires','oil','spark');//array()实际上是语言结构而不 是函数
2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组
$numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10
$numbers=range(1,10,
- 安装python2.7
AILIKES
python
安装python2.7
1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
2、复制解压
#mkdir -p /opt/usr/python
#cp /opt/soft/Python-2
- java异常的处理探讨
百合不是茶
JAVA异常
//java异常
/*
1,了解java 中的异常处理机制,有三种操作
a,声明异常
b,抛出异常
c,捕获异常
2,学会使用try-catch-finally来处理异常
3,学会如何声明异常和抛出异常
4,学会创建自己的异常
*/
//2,学会使用try-catch-finally来处理异常
- getElementsByName实例
bijian1013
element
实例1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/x
- 探索JUnit4扩展:Runner
bijian1013
java单元测试JUnit
参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。
文章地址:http://www.blogjava.net/jiangshachina/archive/20
- [MongoDB学习笔记二]MongoDB副本集
bit1129
mongodb
1. 副本集的特性
1)一台主服务器(Primary),多台从服务器(Secondary)
2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作
3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来
2
- 【Spark八十一】Hive in the spark assembly
bit1129
assembly
Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners:
1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)
- Nginx问题定位之监控进程异常退出
ronin47
nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。
1. 在error.log中查看是否有signal项,如果有,看看signal是多少。
比如,这是一个异常退出的情况:
$grep signal error.log
2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s
- No grammar constraints (DTD or XML schema).....两种解决方法
byalias
xml
方法一:常用方法 关闭XML验证
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。
方法二:(个人推荐)
添加 内容如下
<?xml version=
- Netty源码学习-DefaultChannelPipeline
bylijinnan
netty
package com.ljn.channel;
/**
* ChannelPipeline采用的是Intercepting Filter 模式
* 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现
*
* 下面对ChannelPipeline作一个模拟,只模拟关键代码:
*/
public class Pipeline {
- MYSQL数据库常用备份及恢复语句
chicony
mysql
备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。
mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > ba
- 小白谈谈云计算--基于Google三大论文
CrazyMizzz
Google云计算GFS
之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。
我先说说GFS
&n
- hadoop 平衡空间设置方法
daizj
hadoopbalancer
在hdfs-site.xml中增加设置balance的带宽,默认只有1M:
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>10485760</value>
<description&g
- Eclipse程序员要掌握的常用快捷键
dcj3sjt126com
编程
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得
- Android学习之路
dcj3sjt126com
Android学习
转自:http://blog.csdn.net/ryantang03/article/details/6901459
以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。
下面说说我学习Android的感受,我学Android首先是看MARS的视
- java 遍历Map的四种方法
eksliang
javaHashMapjava 遍历Map的四种方法
转载请出自出处:
http://eksliang.iteye.com/blog/2059996
package com.ickes;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 遍历Map的四种方式
- 【精典】数据库相关相关
gengzg
数据库
package C3P0;
import java.sql.Connection;
import java.sql.SQLException;
import java.beans.PropertyVetoException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBPool{
- 自动补全
huyana_town
自动补全
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo
- jquery在线预览PDF文件,打开PDF文件
天梯梦
jquery
最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。
核心代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
- ViewPager刷新单个页面的方法
lovelease
androidviewpagertag刷新
使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面
- 利用按位取反(~)从复合枚举值里清除枚举值
草料场
enum
以 C# 中的 System.Drawing.FontStyle 为例。
如果需要同时有多种效果,
如:“粗体”和“下划线”的效果,可以用按位或(|)
FontStyle style = FontStyle.Bold | FontStyle.Underline;
如果需要去除 style 里的某一种效果,
- Linux系统新手学习的11点建议
刘星宇
编程工作linux脚本
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。
一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu
- hibernate dao层应用之HibernateDaoSupport二次封装
wangzhezichuan
DAOHibernate
/**
* <p>方法描述:sql语句查询 返回List<Class> </p>
* <p>方法备注: Class 只能是自定义类 </p>
* @param calzz
* @param sql
* @return
* <p>创建人:王川</p>
* <p>创建时间:Jul
页面跳转:
//获得控件的绝对位置(2)
oRect = obj.getBoundingClientRect();
oRect.left
oRect.
//最小化,最大化,关闭
//光标停在文字最后
//页面进入和退出的特效
进入页面
推出页面
这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使
用哪种特效,取值为1-23:
0 矩形缩小
1 矩形扩大
2 圆形缩小
3 圆形扩大
4 下到上刷新
5 上到下刷新
6 左到右刷新
7 右到左刷新
8 竖百叶窗
9 横百叶窗
10 错位横百叶窗
11 错位竖百叶窗
12 点扩散
13 左右到中间刷新
14 中间到左右刷新
15 中间到上下
16 上下到中间
17 右下到左上
18 右上到左下
19 左上到右下
20 左下到右上
21 横条
22 竖条
23
//网页是否被检索
其中属性值有以下一些:
属性值为"all": 文件将被检索,且页上链接可被查询;
属性值为"none": 文件不被检索,而且不查询页上的链接;
属性值为"index": 文件将被检索;
属性值为"follow": 查询页上的链接;
属性值为"noindex": 文件不检索,但可被查询链接;
属性值为"nofollow":
//打印分页
page1
page2
//设置打印
具体使用手册,更多信息,点这里
//自带的打印预览
WebBrowser.ExecWB(1,1) 打开
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1) 保存网页
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印预览
Web.ExecWB(8,1) 打印页面设置
Web.ExecWB(10,1) 查看页面属性
Web.ExecWB(15,1) 好像是撤销,有待确认
Web.ExecWB(17,1) 全选
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 关闭窗体无提示
//去掉打印时的页眉页脚
//浏览器验证
function checkBrowser()
{
this.ver=navigator.appVersion
this.dom=document.getElementById?1:0
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
this.ie4=(document.all && !this.dom)?1:0;
this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.mac=(this.ver.indexOf('Mac') > -1) ?1:0;
this.ope=(navigator.userAgent.indexOf(' Opera')>-1);
this.ie=(this.ie6 || this.ie5 || this.ie4)
this.ns=(this.ns4 || this.ns5)
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)
this.nbw=(!this.bw)
return this;
}
//计算内容宽和高
//无模式的提示框 function modelessAlert(Msg)
{
window.showModelessDialog("javascript:alert(\""+escape(Msg)+"\");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
}
//屏蔽按键
屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键
//屏蔽打印
//移动的图层,拖动
1.meizz
2.
wlecome
//文档状态改变
//刷新后不变的文本框
//访问剪贴板
event.dataTransfer.setData("URL", oImage.src);
sImageURL = event.dataTransfer.getData("URL")
(2)普通访问
window.clipboardData.setData("Text",oSource.innerText);
window.clipboardData.getData("Text");
//操作COOKIE
function SetCookie(sName, sValue)
{
document.cookie = sName + "=" + escape(sValue) + "; ";
}
function GetCookie(sName)
{
var aCookie = document.cookie.split("; ");
for (var i=0; i < aCookie.length; i++)
{
var aCrumb = aCookie.split("=");
if (sName == aCrumb[0])
return unescape(aCrumb[1]);
}
}
function DelCookie(sName)
{
document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;";
}
//setTimeout增加参数
//自定义的apply,call
Function.prototype.apply = function (obj, argu) {
if (obj) obj.constructor.prototype._caller = this;
var argus = new Array();
for (var i=0;i
var r;
eval("r = " + (obj ? ("obj._caller(" + argus.join(",") + ");") : ("this(" + argus.join(",") + ");")));
return r;
};
Function.prototype.call = function (obj) {
var argu = new Array();
for (var i=1;i
return this.apply(obj, argu);
};
//下载文件
function DownURL(strRemoteURL,strLocalURL)
{
try
{
var xmlHTTP=new ActiveXObject("Microsoft. xmlhttp");
xmlHTTP.open("Get",strRemoteURL,false);
xmlHTTP.send();
var adodbStream=new ActiveXObject("ADODB.Stream");
adodbStream.Type=1;//1=adTypeBinary
adodbStream.Open();
adodbStream.write(xmlHTTP.responseBody);
adodbStream.SaveToFile(strLocalURL,2);
adodbStream.Close();
adodbStream=null;
xmlHTTP=null;
}
catch(e)
{
window.confirm("下载URL出错!");
}
//window.confirm("下载完成.");
}
//检验连接是否有效
function getXML(URL)
{
var xmlhttp = new ActiveXObject("microsoft.xmlhttp");
xmlhttp.Open("GET",URL, false);
try
{
xmlhttp.Send();
}
catch(e){}
finally
{
var result = xmlhttp.responseText;
if(result)
{
if(xmlhttp.Status==200)
{
return(true);
}
else
{
return(false);
}
}
else
{
return(false);
}
}
}
//POST代替FORM
//readyState是xmlhttp返回数据的进度,0=载入中,1=未初始化,2=已载入,3=运行中,4=完成
//组件是否安装
isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "componentID"))
//检查网页是否存在
function CheckURL(URL)
{
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("GET",URL, false);
try
{
xmlhttp.Send();
var result = xmlhttp.status;
}
catch(e) {return(false); }
if(result==200)
{
return true;
}
xmlhttp = null;
return false;
}
//连接数据库
//使用数据岛
srno:
times:
//获得参数
search
//可编辑SELECT
//设置光标位置
function getCaret(textbox)
{
var control = document.activeElement;
textbox.focus();
var rang = document.selection.createRange();
rang.setEndPoint("StartToStart",textbox.createTextRange())
control.focus();
return rang.text.length;
}
function setCaret(textbox,pos)
{
try
{
var r =textbox.createTextRange();
r.moveStart('character',pos);
r.collapse(true);
r.select();
}
catch(e)
{}
}
function selectLength(textbox,start,len)
{
try
{
var r =textbox.createTextRange();
r.moveEnd('character',len-(textbox.value.length-start));
r.moveStart('character',start);
r.select();
}
catch(e)
{//alert(e.description)}
}
function insertAtCaret(textbox,text)
{
textbox.focus();
document.selection.createRange().text = text;
}
//页内查找
function findInPage(str)
{
var txt, i, found,n = 0;
if (str == "")
{
return false;
}
txt = document.body.createTextRange();
for (i = 0; i <= n && (found = txt.findText(str)) != false; i++)
{
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}
if (found)
{
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
n++;
}
else
{
if (n > 0)
{
n = 0;
findInPage(str);
}
else
{
alert(str + "... 您要找的文字不存在。\n \n请试着输入页面中的关键字再次查找!");
}
}
return false;
}
//操作EXECL
//自定义提示条
tip
//插入文字
document.onclick =function(){
var oSource = window.event.srcElement;
if(oSource.tagName!="DIV")
return false;
var sel = document.selection;
if (sel!=null) {
var rng = sel.createRange();
if (rng!=null)
rng.pasteHTML("插入文字");
}
}
//netscapte下操作xml
doc = new ActiveXObject("Msxml2.DOMDocument");
doc = new ActiveXObject("Microsoft.XMLDOM")
->>
doc = (new DOMParser()).parseFromString(sXML,'text/xml')
//禁止fso
1.注销组件
regsvr32 /u scrrun.dll
2.修改PROGID
HKEY_CLASSES_ROOT\Scripting.FileSystemObject
Scripting.FileSystemObject
3.对于使用object的用户,修改HKEY_CLASSES_ROOT\Scripting.
//省略号
//判断键值
//Javascript Document.
请按任意一个键。。。。
//检测media play版本
//图象按比例
//细线SELECT
//Import
function Import() {
for( var i=0; i
if ( file.match(/\.js$/i))
document.write('
//取得innerText
//mergeAttributes 复制所有读/写标签属性到指定元素。
ATTRIBUTE1="true"
ATTRIBUTE2="true"
οnclick="alert('click');"
οnmοuseοver="this.style.color='#0000FF';"
οnmοuseοut="this.style.color='#000000';"
>
This is a sample DIV element.
This is another sample DIV element.
TYPE="button"
VALUE="Merge Attributes"
οnclick="fnMerge()"
>
用于包含javascript代码.
语法
属性
LANGUAGE 定义脚本语言
SRC 定义一个URL用以指定以.JS结尾的文件
windows对象
每个HTML文档的顶层对象.
属性
frames[] 子桢数组.每个子桢数组按源文档中定义的顺序存放.
feames.length 子桢个数.
self 当前窗口.
parent 父窗口(当前窗口是中一个子窗口).
top 顶层窗口(是所有可见窗口的父窗口).
status 浏览器状态窗口上的消息.
defaultStatus 当status无效时,出现在浏览器状态窗口上的缺省消息.
name 内部名,为由window.open()方法打开的窗口定义的名字.
方法
alert("message") 显示含有给定消息的"javascript Alert"对话框.
confirm("message") 显示含有给定消息的"Confirm"对话框(有一个OK按钮和一个Cancel按钮).如果用户单击OK返回true,否则返回false.
prompt("message") 显示一个"prompt"对话框,要求用户根据显示消息给予相应输入.
open("URL","name") 打开一个新窗口,给予一个指定的名字.
close() 关闭当前窗口.
frame对象
它是整个浏览器窗口的子窗口,除了status,defaultStatus,name属性外,它拥有window对象的全部属性.
location对象
含有当前URL的信息.
属性
href 整个URL字符串.
protocol 含有URL第一部分的字符串,如http:
host 包含有URL中主机名:端口号部分的字符串.如//www.cenpok.net/server/
hostname 包含URL中主机名的字符串.如http://www.cenpok.net
port 包含URL中可能存在的端口号字符串.
pathname URL中"/"以后的部分.如~list/index.htm
hash "#"号(CGI参数)之后的字符串.
search "?"号(CGI参数)之后的字符串.
document对象
含有当前文档信息的对象.
属性
title 当前文档标题,如果未定义,则包含"Untitled".
location 文档的全URL.
lastModified 含有文档最后修改日期.
referrer 调用者URL,即用户是从哪个URL链接到当前页面的.
bgColor 背景色(#xxxxxx)
fgColor 前景文本颜色.
linkColor 超链接颜色.
vlinkColor 访问过的超链颜色.
alinkColor 激活链颜色(鼠标按住未放时).
forms[] 文档中form对象的数组,按定义次序存储.
forms.length 文档中的form对象数目.
links[] 与文档中所有HREF链对应的数组对象,按次序定义存储.
links.length 文档中HREF链的数目.
anchors[] 锚(...)数组,按次序定义存储.
anchors.length 文档中锚的数目.
方法
write("string") 将字符串突出给当前窗口.(字符串可以含有HTML标记)
writeln("string") 与write()类似,在结尾追加回车符,只在预定格式文本中(...或...)生效.
clear() 清当前窗口.
close() 关闭当前窗口.
form对象
属性
name
中的NAME属性的字符串值.
method 中METHOD属性的类值,"0"="GET" ,"1"="POST" .
action 中ACTION属性的字符串值.
target 表格数据提交的目标,与标记中相应属性一致.
elements[index] elements属性包含form中的各个元素.
length 表格中的元素个数.
方法
submit() 提交表格.
事件处理器onSubmit() 用户单击一个定义好的按钮提交form时运行的代码.
text和textarea对象
属性
name NAME属性的字符串值.
value 域内容的字符串值.
defaultValue 域内容的初始字符串值.
方法
focus() 设置对象输入焦点.
blur() 从对象上移走输入焦点.
select() 选定对象的输入区域.
事件处理器
onFocus 当输入焦点进入时执行.
onBlur 当域失去焦点时执行.
onSelect 当域中有部分文本被选定时执行.
onChange 当域失去焦点且域值相对于onFocus执行有所改变时执行.
复选框(checkbox)对象
属性
name NAME属性的字符串值.
value 复选框内容的字符串值.如果设置了,则为"on",否则为"off".
checked 复选框内容的布尔值.如果设置了,则为true,否则为false .
defaultChecked 反映(CHECKED)属性的布尔值(缺省状态).
方法
click() 选定复选框,并使之状态为"on".
事件处理器
onClick 当用户单击Checkbox时执行.
单选按钮(radio)对象
属性
name NAME属性的字符串值.
length radio对象中单选按钮的个数.
value VALUE属性的字符串值.
checked 布尔值,按下为true,否则为false .
defaultChecked 反映CHECKED属性值的布尔值.
方法
click() 选定单选按钮.
事件处理器
onClick 当单选按钮被选定时执行.
select对象
属性
length select对象中对象的个数.
name 由NAME=属性定义的select对象的内部名.
selectedIndex select对象中当前被选option的下标.
options 该属性对应于在HTML中定义select对象时标记中的内容,它有如下属性:
text 标记后的文本串.
value VALUE属性的值,当Submit按钮被按下时,该值被提交.
defaultSelected 反映标记的SELECTED属性的布尔值.
selected 反映option的当前选择状态的布尔值.
事件处理器
onFocus 当输入焦点进入域时执行.
onBlur 当域失去输入焦点时执行.
onChange 当域失去焦点且如果域的值相对于onFocus执行时有所改变,则执行onChange.
Button对象
表格中有三种类型按钮,由标记中的TYPE属性定义:
.submit (type="SUBMIT")
.reset (type="RESET")
.custom (type="BUTTON")
所有按钮对象都有如下成分:
属性
value VALUE属性的字符串值.
name NAME属性的字符串值.
方法
click() 选定按钮
事件处理器
onClick 当按钮被单击时执行.
submit和reset对象
属性
value VALUE=属性的内容.
name NAME=属性的内容.
方法
click() 选定按钮
事件处理器
onClick 当按钮被单击时执行.
password对象
属性
defaultValue VALUE=属性的内容.
name NAME=属性的内容.
value 目前输入password域的数据.
方法
focus() 将焦点带入password域.
blur 将焦点从password域移出.
select() 选定password域中的当前数据,以备修改.
navigator对象
该对象用于确定用户访问时使用的Navigator版本.
属性
appCodeName 相对于用户浏览器的"codename"
appName 相对于用户浏览器的实际名字.
appVersion 相对于用户浏览器的版本号.
userAgent 该属性反映用户浏览器的全部信息.
string对象
string对象为操作字符串的内容提供了很多方法.
属性
length 字符串的长度,即字符串中字符的个数.
方法
big(),blink(),bold(),fixed(),italics(),small(),sub(),strike(),sup(),fontColor(color),fontSize(size)
以上方法为字符串增加相应的HTML标记.
charAt(index) 返回字符串中index处的字符.
indexOf(searchValue,[fromIndex]) 该方法在字符串中寻找第一次出现的searchValue.如果给定了fromIndex,则从 字符串内该位置开始搜索,当searchValue找到后,返回该串第一个字符的位置.
lastIndexOf(searchValue,[fromIndex]) 从字符串的尾部向前搜索searchValue,并报告找到的第一个实例.
substring(indexA,indexB) 获取自indexA到indexB的子串.
toLowerCase(),toUpperCase() 将字符串中所有字符全部转换成大写,小写.
Date对象
要使用Date对象,必须先生成一个Date实例:
变量名=new Date();
方法
getDay(),getDate(),getHours(),getMinutes(),getMonth(),getSeconds(),getTime(),
getTimeZoneOffset(),getYear()
还有setDay... ...
toGMTString() 用GMT格式返回当前时间. (Sun,12 Feb 1999 14:19:22 GMT)
toLocaleString 用locale格式返回当前时间. (03/11/99 14:19:22)
parse(date) 将普通date字符串转换成豪秒形式,从而给setTime()做参数.
Math对象
属性
LN10 (10的自然对数)
PI (3.1415926...)
SQRT1_2 (1/2的平方根)
方法
abs(x) 返回x的绝对值
acos(x) 返回x的arc cosine值
asin(x) 返回x的arc sin值
atan(x) 返回x的arc tangent值
ceil(x) 返回大于等于x的最小整数
cos(x) 返回x的cosine值
exp(x) 返回e的x次方
floor(x) 返回小于等于x的最大整数
log(x) 返回x的
max(x,y) 返回x,y中的大值
min(x,y) 返回x,y中的小值
pow(x,y) 返回x的y次方
round(x) 舍入到最近整数,(小于或等于0.5小数舍去)
sin(x) 返回x的sin值
sqrt(x) 返回x的平方根
tan(x) 返回x的tangent值
功能:5小时弹一次+背后弹出+自动适应不同分辩率+准全屏显示
代码:
【1、最基本的弹出窗口代码】
其实代码非常简单:
因 为着是一段&#106avascripts代码,所以它们应该放在之间。是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示出来。要养成这个好习惯啊。
window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html不与主窗口在同一路径下,前面应写明路径,绝对路径(http://)和相对路径(../)均可。用单引号和双引号都可以,只是不要混用。
这一段代码可以加入html的任意位置,和之间可以,间也可以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。
【2、经过设置后的弹出窗口】
下面再说一说弹出窗口的设置。只要再往上面的代码中加一点东西就可以了。
我们来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。
参数解释:
js脚本结束
【3、用函数控制弹出窗口】
下面是一个完整的代码。
...任意的页面内容...
这里定义了一个函数openwin(),函数内容就是打开一个窗口。在调用它之前没有任何用途。
怎么调用呢?
方法一: 浏览器读页面时弹出窗口;
方法二: 浏览器离开页面时弹出窗口;
方法三:用一个连接调用:
打开一个窗口
注意:使用的“#”是虚连接。
方法四:用一个按钮调用:
【4、同时弹出2个窗口】
对源代码稍微改动一下:
为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可。最后用上面说过的四种方法调用即可。
注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。ok?
【5、主窗口打开文件1.htm,同时弹出小窗口page.html】
如下代码加入主窗口区:
加入区:
open即可。
【6、弹出的窗口之定时关闭控制】
下面我们再对弹出的窗口进行一些控制,效果就更好了。如果我们再将一小段代码加入弹出的页面(注意是加入到page.html的html中,可不是主页面中,否则...),让它10秒后自动关闭是不是更酷了?
首先,将如下代码加入page.html文件的区:
然后,再用 这一句话代替page.html中原有的这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,10秒钟后就自行关闭该窗口。)
【7、在弹出窗口中加上一个关闭按钮】
呵呵,现在更加完美了!
【8、内包含的弹出窗口-一个页面两个窗口】
上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。
通过下面的例子,你可以在一个页面内完成上面的效果。
打开一个窗口
看看 openwindow.document.write()里面的代码不就是标准的html吗?只要按照格式写更多的行即可。千万注意多一个标签或少一个标签就会出现错误。记得用openwindow.document.close()结束啊。
回 想一下,上面的弹出窗口虽然酷,但是有一点小毛病(沉浸在喜悦之中,一定没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那 么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?:-(有解决的办法吗?yes! ;-) follow me.
我们使用cookie来控制一下就可以了。
首先,将如下代码加入主页面html的区:
然后,用(注意不是openwin而是loadpop啊!)替换主页面中原有的这一句即可。你可以试着刷新一下这个页面或重新进入该页面,窗口再也不会弹出了。真正的pop-only-once!
强力弹窗代码:
function trim(inputstr) //去处空格,在获取客户端录入的表单信息前,
都先trim一下再提交 例如:“form1.org_name.value = trim(form1.org_name.value);”
{
if(!inputstr.length>0) return "";
var starts=0;
var ends=inputstr.length;
while(starts
if(inputstr.substring(starts,starts+1)==" ")
starts++;
else
break;
}
while(starts
if(inputstr.substring(ends-1,ends)==" ")
ends--;
else
break;
}
return inputstr.substring(starts,ends);
}
function isvalidcode(inputs) //校验邮政编码
{
var i,temp;
var isvalidcode = true;
inputstr=trim(inputs);
if(inputstr.length==null||inputstr.length==0||inputstr.length!=6) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!(temp>="0" && temp<="9"))
{
isvalidcode=false;
break;
}
}
return isvalidcode;
}
function isvalidtel(inputs) //校验电话号码
{
var i,temp;
var isvalidtel = true;
inputstr=trim(inputs);
if(inputstr.length==null||inputstr.length==0) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!(temp>="0" && temp<="9" || temp=="-"))
{
isvalidtel=false;
break;
}
}
return isvalidtel;
}
function isrealnum(inputs) //校验实数(含小数点)
{
var i,temp;
var isrealnum = true;
inputstr=trim(inputs);
if(inputstr.length==null||inputstr.length==0) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!(temp>="0" && temp<="9" || temp=="."))
{
isrealnum=false;
break;
}
}
return isrealnum;
}
function isnumeric(inputs) //校验是否整数
{
var i,temp;
var isnumeric = true;
inputstr=trim(inputs);
if(inputstr.length==null||inputstr.length==0) return false;
//isvalid = true;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!(temp>="0" && temp<="9"))
{
isnumeric=false;
break;
}
}
return isnumeric;
}
function isvalidide(inputs) //校验身份证
{
var i,temp;
var isvalidide = true;
inputstr=trim(inputs);
if(inputstr.length == null || inputstr.length == 0 || (inputstr.length != 15 && inputstr.length != 18)) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!((temp>="0" && temp<="9") || temp == "x" || temp == "X"))
{
isvalidide=false;
break;
}
}
return isvalidide;
}
function isvalidname(inputs) //校验账号2~15位(即只能是英文字母和数字组成的串)
{
var i,temp;
var isvalidname = true;
inputstr=trim(inputs);
if(inputstr.length==null || inputstr.length==0 || inputstr.length > 15 || inputstr.length < 2) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!((temp >= "0" && temp <= "9") || (temp >= "a" && temp <= "z") || (temp >= "A" && temp <= "Z")))
{
isvalidname=false;
break;
}
}
return isvalidname;
}
function isvalidphoto(inputs) //校验照片扩展名
{
var i,temp;
var isvalidphoto = true;
inputstr=trim(inputs);
if(inputstr.length==null || inputstr.length==0) return true; //没有相片也允许的
temp=inputstr.substring(inputstr.lastIndexOf(".")+1);
temp = temp.toLowerCase();
if(!(temp == "bmp" || temp == "jpg" || temp == "gif"))
{
isvalidphoto=false;
}
return isvalidphoto;
}
function isvalidzgh(inputs) //校验职工号8位(即只能是英文字母和数字组成的串)
{
var i,temp;
var isvalidzgh = true;
inputstr=trim(inputs);
if(inputstr.length==null || inputstr.length==0 || inputstr.length != 8) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!((temp >= "0" && temp <= "9") || (temp >= "a" && temp <= "z") || (temp >= "A" && temp <= "Z")))
{
isvalidzgh=false;
break;
}
}
return isvalidzgh;
}
function isvalidxh(inputs) //校验学号7位(即只能是英文字母和数字组成的串)
{
var i,temp;
var isvalidxh = true;
inputstr=trim(inputs);
if(inputstr.length==null || inputstr.length==0 || inputstr.length != 7) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!((temp >= "0" && temp <= "9") || (temp >= "a" && temp <= "z") || (temp >= "A" && temp <= "Z")))
{
isvalidxh=false;
break;
}
}
return isvalidxh;
}
function isvalidkcid(inputs) //校验课程编号5位(即只能是数字组成的串)
{
var i,temp;
var isvalidkcid = true;
inputstr=trim(inputs);
if(inputstr.length==null||inputstr.length==0||inputstr.length!=5) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!(temp>="0" && temp<="9"))
{
isvalidkcid=false;
break;
}
}
return isvalidkcid;
}
function isvalidnamee(inputs) //校验账号4~20位(即只能是英文字母和数字组成的串)
{
var i,temp;
var isvalidname = true;
inputstr=trim(inputs);
if(inputstr.length==null || inputstr.length==0 || inputstr.length > 20 || inputstr.length < 4) return false;
for(i=0;i
temp=inputstr.substring(i,i+1);
if(!((temp >= "0" && temp <= "9") || (temp >= "a" && temp <= "z") || (temp >= "A" && temp <= "Z")))
{
isvalidname=false;
break;
}
}
return isvalidname;
}
2. JS和HTML互转
在这里输入你需要转换的格式,可以是JavaScript也可以是DHtml.
这个是输出格式的窗口:
一个不好的消息:这个Js转Html部分现在只是支持由这个程序生成的
作者:FlashSoft2000 QQ:14433548
1.[普通效果]
现在很多网站广告做的如火如荼,现在我就来介绍一下常见的对联浮动广告效果的代码使用方法,介绍的这种效果,在1024*768分辨率下正常显示,在800*600的分辨率下可以自动隐藏,以免遮住页面影响访问者浏览内容,下面就是实现效果所需代码:
var delta=0.015
var collection;
function floaters() {
this.items = [];
this.addItem =
function(id,x,y,content)
{
document.write('
var newItem = {};
newItem.object = document.getElementById(id);
newItem.x = x;
newItem.y = y;
this.items[this.items.length] = newItem;
}
this.play =
function()
{
collection =
this.items
setInterval('play()',10);
}
}
function play()
{
if(screen.width<=800)
{
for(var i=0;i
collection.object.style.display = 'none';
}
return;
}
for(var i=0;i
var followObj = collection.object;
var followObj_x = (typeof(collection.x)=='string'?eval(collection.x):collection.x);
var followObj_y = (typeof(collection.y)=='string'?eval(collection.y):collection.y);
if(followObj.offsetLeft!=(document.body.scrollLeft+followObj_x)) {
var dx=(document.body.scrollLeft+followObj_x-followObj.offsetLeft)*delta;
dx=(dx>0?1:-1)*Math.ceil(Math.abs(dx));
followObj.style.left=followObj.offsetLeft+dx;
}
if(followObj.offsetTop!=(document.body.scrollTop+followObj_y)) {
var dy=(document.body.scrollTop+followObj_y-followObj.offsetTop)*delta;
dy=(dy>0?1:-1)*Math.ceil(Math.abs(dy));
followObj.style.top=followObj.offsetTop+dy;
}
followObj.style.display = '';
}
}
var theFloaters =
new floaters();
theFloaters.addItem('followDiv1','document.body.clientWidth-100',0,'
theFloaters.addItem('followDiv2',0,0,'
theFloaters.play();
把上面的代码另存为一个JS文件,然后在想实现此效果的页面用 调用即可!注意修改广告图片地址和连接地址!
2.[鼠标感应]
与前面一个代码不同的是,当鼠标移动到广告图片上是可以感应显示另外设置好的广告大图效果,下面就是实现效果所需代码:
function bigshow(){
document.all.div_250.style.visibility = 'visible';
document.all.div_80.style.visibility = 'hidden';
}
function bighide(){
document.all.div_80.style.visibility = 'visible';
document.all.div_250.style.visibility = 'hidden';
}
var ad_80= new Array(1);
var ad_250= new Array(1);
ad_80[0]="
ad_250[0]="
var imgheight;
var fubioleft;
window.screen.width>800 ? fubioleft=15:fubioleft=15
document.write('
ad_now = new Date();
ad_id= ad_now.getSeconds() %1
var adhead1="
var adhead2="
//var adhead1="
//var adhead2="
document.write(adhead1+ad_80[ad_id]+adhead2+ad_250[ad_id]+"
document.write ("
self.onError=null;
currentX = currentY = 0;
whichIt = null;
lastScrollX = 0; lastScrollY = 0;
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1: 0;
function heartBeat() {
if(IE) {
diffY = document.body.scrollTop;
diffX = document.body.scrollLeft; }
if(NS) {
diffY = self.pageYOffset; diffX = self.pageXOffset; }
if(diffY != lastScrollY) {
percent = .5 * (diffY - lastScrollY);
if(percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if(IE) document.all.floater_left.style.pixelTop += percent;
if(NS) document.floater_left.top += percent;
lastScrollY = lastScrollY + percent;
}
if(diffX != lastScrollX) {
percent = .5 * (diffX - lastScrollX);
if(percent > 0) percent = Math.ceil(percent);
else percent = Math.floor(percent);
if(IE) document.all.floater_left.style.pixelLeft += percent;
if(NS) document.floater_left.left += percent;
lastScrollX = lastScrollX + percent;
}
}
if(NS || IE) action = window.setInterval("heartBeat()",1);var ad_80= new Array(1);
var ad_250= new Array(1);
ad_80[0]="
ad_250[0]="
var imgheight;
var fubioleft;
window.screen.width>800 ? fubioleft=15:fubioleft=15
document.write('
ad_now = new Date();
ad_id= ad_now.getSeconds() %1
function myload()
{
if (navigator.appName == "Netscape")
{
document.div_right_80.pageX=+window.innerWidth-130;
document.div_right_250.pageX=+window.innerWidth-300;
mymove();
}
else
{
div_right_80.style.left=document.body.offsetWidth-130;
div_right_250.style.left=document.body.offsetWidth-300;
mymove();
}
}
function mymove()
{
if(document.ns)
{
document.div_right_80.left=pageXOffset+window.innerWidth-130;
document.div_right_250.left=pageXOffset+window.innerWidth-300;
setTimeout("mymove();",20)
}
else
{
div_right_80.style.left=document.body.scrollLeft+document.body.offsetWidth-145;
div_right_250.style.left=document.body.scrollLeft+document.body.offsetWidth-300;
setTimeout("mymove();",20)
}
}
var adhead1="
var adhead2="
document.write(adhead1+ad_80[ad_id]+adhead2+ad_250[ad_id]+"
myload()
document.write ("
self.onError=null;
currentX_right = currentY_right = 0;
whichIt_right = null;
lastScrollX_right = 0; lastScrollY_right = 0;
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1: 0;
function heartBeat_right() {
if(IE) {
diffY_right = document.body.scrollTop;
diffX_right = document.body.scrollLeft; }
if(NS) {
diffY_right = self.pageYOffset; diffX_right = self.pageXOffset; }
if(diffY_right != lastScrollY_right) {
percent_right = .5 * (diffY_right - lastScrollY_right);
if(percent_right > 0) percent_right = Math.ceil(percent_right);
else percent_right = Math.floor(percent_right);
if(IE) document.all.floater_right.style.pixelTop += percent_right;
if(NS) document.floater_right.top += percent_right;
lastScrollY_right = lastScrollY_right + percent_right;
}
if(diffX_right != lastScrollX_right) {
percent_right = .5 * (diffX_right - lastScrollX_right);
if(percent_right > 0) percent_right = Math.ceil(percent_right);
else percent_right = Math.floor(percent_right);
if(IE) document.all.floater_right.style.pixelLeft += percent_right;
if(NS) document.floater_right.left += percent_right;
lastScrollX_right = lastScrollX_right + percent_right;
}
}
if(NS || IE) action = window.setInterval("heartBeat_right()",1);
function bigshow_right(){
document.all.div_right_250.style.visibility = 'visible';
document.all.div_right_80.style.visibility = 'hidden';
}
function bighide_right(){
document.all.div_right_80.style.visibility = 'visible';
document.all.div_right_250.style.visibility = 'hidden';
}document.write('');
document.write('');
document.write('');
3.[允许关闭]
与前面两个代码不同的是,广告图下方增加了一个图片按纽,允许访客点击关闭广告图片,下面文本框中就是实现效果所需代码:
var delta=0.015;
var collection;
var closeB=false;
function floaters() {
this.items = [];
this.addItem = function(id,x,y,content)
{
document.write('
var newItem = {};
newItem.object = document.getElementById(id);
newItem.x = x;
newItem.y = y;
this.items[this.items.length] = newItem;
}
this.play = function()
{
collection = this.items
setInterval('play()',30);
}
}
function play()
{
if(screen.width<=800 || closeB)
{
for(var i=0;i
collection.object.style.display = 'none';
}
return;
}
for(var i=0;i
var followObj = collection.object;
var followObj_x = (typeof(collection.x)=='string'?eval(collection.x):collection.x);
var followObj_y = (typeof(collection.y)=='string'?eval(collection.y):collection.y);
if(followObj.offsetLeft!=(document.body.scrollLeft+followObj_x)) {
var dx=(document.body.scrollLeft+followObj_x-followObj.offsetLeft)*delta;
dx=(dx>0?1:-1)*Math.ceil(Math.abs(dx));
followObj.style.left=followObj.offsetLeft+dx;
}
if(followObj.offsetTop!=(document.body.scrollTop+followObj_y)) {
var dy=(document.body.scrollTop+followObj_y-followObj.offsetTop)*delta;
dy=(dy>0?1:-1)*Math.ceil(Math.abs(dy));
followObj.style.top=followObj.offsetTop+dy;
}
followObj.style.display = '';
}
}
function closeBanner()
{
closeB=true;
return;
}
var theFloaters = new floaters();
//
theFloaters.addItem('followDiv1','document.body.clientWidth-100',0,'
theFloaters.addItem('followDiv2',0,0,'
theFloaters.play();
把上面的代码分别另存为两个JS文件,然后在想实现此效果的页面用
调用即可,*代表你另存的文件名!注意修改广告图片地址和连接地址!
4.[浮动对联广告---之左侧代码]
如果您想只有一侧显示的话,下面是实现左侧效果所需代码:
var ad_float_left_src ="图片地址";
var ad_float_left_url ="地址";
var ad_float_left_type = "";
document.ns = navigator.appName == "Microsoft Internet Explorer"
var imgheight_close
var imgleft
window.screen.width>800 ? imgheight_close=120:imgheight_close=120
window.screen.width>800 ? imgleft=8:imgleft=122
function myload()
{
myleft.style.top=document.body.scrollTop+document.body.offsetHeigh
t-imgheight_close;
myleft.style.left=imgleft;
leftmove();
}
function leftmove()
{
myleft.style.top=document.body.scrollTop+document.body.offsetHeigh
t-imgheight_close;
myleft.style.left=imgleft;
setTimeout("leftmove();",50)
}
function MM_reloadPage(init) { //reloads the window if Nav4
resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&
(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight;
οnresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!
=document.MM_pgH) location.reload();
}
MM_reloadPage(true)
function close_float_left(){
myleft.style.visibility='hidden';
}
document.write("
+""
+"
if(document.ns){
if(ad_float_left_type!="swf")
document.write(" = '_blank'>
else
document.write("");
document.write("
+"
+"
myload()}
[ 5.背投广告]
[ 6.收缩广告]
调用即可,*代表你另存的文件名!注意修改广告图片地址和连接地址!相应的参数可以根据页面自行调整
var _c = 0;
var _i = 0;
var _v = 0;
var _l = 0;
var _sf = 3000;
var _html = null;
var _image = null;
var _mycars= new Array();
var _w = new Array();
var _h = new Array();
function adRotator() {}
function adRotator.add(p,w,h)
{
_mycars[_c] = p;
_w[_c] = w;
_h[_c] = h;
_c = _c + 1;
}
/* 播放设置 */
function adRotator.loads()
{
if (_i < _mycars.length && _l < 1)
{
_html = '
if (_v < 1)
{
document.getElementById('image').value = _html + ',' + _i;
document.getElementById('rotatorPlayer').innerHTML = _html;
_i = _i + 1;
document.getElementById('backs').disabled='';
window.setTimeout("adRotator.loads("+_i+")",_sf);
}
}
else
{
_html = '
document.getElementById('image').value = _html + ',' + _i;
document.getElementById('rotatorPlayer').innerHTML = _html;
}
if (_i+1 > _mycars.length)
{
document.getElementById('stops').disabled='True';
document.getElementById('play').disabled='';
document.getElementById('backs').disabled='';
document.getElementById('next').disabled='True';
_i = 0;
_v = 1;
}
}
/* 播放 */
function adRotator.play()
{
_v = 0;
_l = 0;
adRotator.loads();
}
/* 下一张 */
function adRotator.next()
{
_l = 1;
if(_i+1 < _mycars.length)
{
_i = _i + 1;
document.getElementById('play').disabled='';
document.getElementById('stops').disabled='True';
document.getElementById('backs').disabled='';
adRotator.loads();
}
else
{
document.getElementById('next').disabled='True';
}
}
/* 上一张 */
function adRotator.backs()
{
_l = 1;
if(_i-1 < 0)
{
document.getElementById('backs').disabled='True';
}
else
{
_i = _i - 1;
document.getElementById('play').disabled='';
document.getElementById('stops').disabled='True';
document.getElementById('next').disabled='';
adRotator.loads();
}
}
/* 间隔时间 */
function adRotator.set()
{
var _sfc = document.getElementById('second').value;
if (isInteger(_sfc))
{
_sf = _sfc * 1000;
}
else
{
alert('提示:只能输入数字!');
document.getElementById('second').value=1;
document.getElementById('second').select();
}
}
/* 字符检测 */
function isInteger(str)
{
var regu = /^[-]{0,1}[0-9]{1,}$/;
return regu.test(str);
}
/* 暂停 */
function adRotator.stops()
{
_v = 1;
}
/* 添加图片,还要加的话注意图片名字就好了,后面400,300是大小 */
adRotator.add("1.jpg",400,300);
adRotator.add("2.jpg",400,300);
adRotator.add("3.jpg",400,300);
把以上文件存为一个JS文件
在下面文件中引用即可
秒
一个非常棒的播放器,可惜如果图片是非常大的话,那结果有点惨!
转载于:https://www.cnblogs.com/lenther2002/p/5105461.html