PHP技术基础
PHP技术基础
1.php4种标签风格及3种注释风格
i.标签风格
a.XML风格
echo "hello world!";
?>
b.ASP风格
<%
echo "hello world!";
%>
c.脚本风格
echo "hello world!";
d.极简风格
注意:当使用极简风格和ASP风格时需要在php.ini文件中配置short_open_tag和asp_tags设置为on
ii.注释风格
a.c++风格的单行注释 //
b.c++风格的多行注释 /**/
c.shell风格的注释 #
2.php脚本执行的3种参数传递与解析
a.$argc和$argv 传递参数
echo "接收到{$argc}个参数";
print_r($argv);
?>
执行结果: php.exe .\hello.php hello world -a 123
paras count : 5Array
(
[0] => .\hello.php
[1] => hello
[2] => world
[3] => -a
[4] => 123
)
b.getopt()函数解析参数
$param_arr = getopt('a:b:c:');
print_r($param_arr);
?>
执行结果:php test.php -a 345 -b 12q3
Array
(
[a] => 345
[b] => 12q3
)
c.提示用户输入
fwrite(STDOUT,'请输入您的博客名:');
echo '您输入的信息是:'.fgets(STDIN);
?>
3.php数据类型
php的变量使用$开头,属于动态数据类型,数据类型包括:
boolean string integer float array object resource null值
数据类型的定义:
a.string 单引号和双引号字符串的区别
同shell中的单双引号的区别相同,双引号的字符串需要先执行递归的变量替代
$a='hello world';
echo "hi,$a";
b1.string的界定符输出
目的:增强可读性
$string=<<
hi,
hello world
std; //结束
b2.格式化字符串
$formatted = sprintf ("hello,%s", "world");
printf($formatted);
c.array3种定义
$array=array("v1","v2");//数值自动键,从0开始
$array[key]="vkey";//字符指定键
$array=array(key1=>v1,key2=>v2) //字符键和数字键可以混用
d.null值
通常会用于变量申明
$str=null;
is_null($str) //true
$str="str"
is_null($str) //false
unset($str)
is_null($str) //true
e.数据类型之间的强制转换
$str="123"
$num=(integer)$str
$bl=(boolean)$str
f.数据类型检测函数
is_bool(),is_string,is_float(),is_double(),is_integer(),is_int(),is_null(),is_array(),is_object(),is_numeric()
g.常量定义函数
define(string 常量名,值,true/false大小写敏感)
bool defined(string 常量名) //判断该常量是否已经定义
define("ms",123)
echo ms+24;
h.php预定义常量
__FILE__ PHP程序文件名
__LINE__ PHP当前文件行数
PHP_VERSION
PHP_OS 执行PHP的OS
...
i.string的+运算和。运算
string + :表示将字符串转换成数字再执行+ (只转换字符串首部的数字,首部为字母则结果为0)
string . :表示将字符串拼接
$n="3.14r";
$m=1;
echo $n.$m , $n+$m //3.14r1 4.14
4.变量
a.变量的引用定义&
$i="hello"
$j=&$i
$i="$i,world"
echo $i // hello,world
echo $j // hello,world
b.变量的3种作用域
i.局部变量
函数中定义的变量,作用域为整个函数
ii.全局变量
函数以外的变量,作用域为当前PHP文件,但函数内部不可用,除非在函数中申明global才可作用于函数中
iii.静态变量
定义于函数中,函数结束时不会被释放
$msg="hello"; //全局变量
function hello(){
static $msg1="hello";//静态变量
global $msg; //函数中使用全局变量
$msg1="hello" //局部变量
}
?>
c.变量的递归性(可变变量)
$a="hello,world";
$b="a"
echo $$b //将输出hello,world
d.php预定义变量
$_SERVER['SERVER_ADDR'] //当前运行脚本所在的服务器IP
$_SERVER['SERVER_NAME'] //...服务器名
$_SERVER['REQUEST_METHOD'] //请求方法
$_SERVER['REMOTE_ADDR'] //
$_SERVER['REMOTE_HOST'] //
$_SERVER['REMOTE_PORT'] //
$_SERVER['SCRIPT_FILENAME'] //当前脚本的绝对路径
$_SERVER['SERVER_PORT'] //
$_SERVER['DOCUMENT_ROOT'] //当前脚本的文档根目录
$_COOKIE //通过HTTPCookie传递到脚本的信息(数组)
$_SESSION //包含与所有回话有关的信息(数组)
$_POST //包含通过POST方法传递的相关信息(数组)
$_GET //包含通过GET方法传递的相关信息(数组)
$_GLOBALS //所以已定义的全局变量组成的数组,变量名是该数组的索引(数组)
6.运算符
c语言中的所有运算符适用于PHP,并有其他运算符:
@:错误屏蔽运算符,可以屏蔽表达式产生的错误
$err=@(5/0) ;//防止系统报错,使得程序可以继续运行
7.函数
a.函数定义与调用
function fun_name($arg1,&$arg2,$arg3=value,...){
}
function exap($num){
return $num+10;
}
echo exap(10);
特点:入参的传递有2种值传递和引用传递,参数可以有默认值
b.函数作为变量值时的调用(变量函数)
$fun="exap";
$fun(10);
c.函数返回值得引用<=>函数的引用
$a=&exap(10)
echo $a."
";
unset($a) //解引用或解变量
8.流控制语句
a.if,switch,while,do...while,for与C语言相同
b.foreach 用于数组和对象
foreach(array_expression as $value) 或者 foreach(array_expression as $key => $value)
8.字符串处理
a.trim(string str[,string charlist]),ltrim,rtrim
默认删除字符串左右两边所有的空格,\0,\t,\n,\x0B,\r
b.字符串转义
"\",addcslashes(),stripcslashes()
例子:$m1="select * from t where book='m'";
$m="select * from t where book=\'m\'";
$m=addcslashes($m1)
也可以去转义
stripcslashes($m)
c.子字符串
string substr(string str,int start[,int len])
d.比较字符串
int strcmp(string str1,string str2)
int strnatcmp(string str1,string str2) 不区分大小写
int strncmp(string str1,string str2,int len)
e.字符串查找
string strstr(string str,string findstr) 返回findstr第一次出现的位置到str末尾的子字符串
int substr_count(string str,string findstr) 查找子字符串出现的次数
f.字符串替代
string str_ireplace(string new_substr,string old_substr,string str[,int count替代次数])
string substr_replace(string str,string repl,int star[,int len])
g.分割字符串
array explode(string sep,string str[,int limit限制返回值最多包含的元素])
h.合成字符串
string implode(string glue,array)
9.正则表达式
a.bool ereg/eregi(string pattern,string str[,returnarray]) 在字符串str中匹配pattern模式, 将匹配的字符放在返回数组中;如果匹配成功返回true,否则返回false。
b.string ereg_replace/eregi_replace(string pattern,string rep,string str) 使用rep替代 str中所有匹配pattern的子串,返回最后替代的结果
c.array split/spliti(string pattern,string str[,int limit]) 使用pattern分割str,返回 分割后的数组,最后返回limit个元素
d. array preg_grep(string pattern ,array input) 使用pattern匹配数组array中的所有元素, 返回完全匹配的元素(而不是部分匹配);pattern必须使用"/.../"包围
e.preg_match/preg_match_all(string pattern,string str [,array matches]) 使用pattern 匹配str中所有的子串并返回,返回匹配的次数
f. string preg_quote(string str[,string delimiter]) 将str中的所有特殊字符自动转义, delimiter字符串指定的所有字符也将被转义(即加上一个‘\’)
g.mixed preg_replace(mixed pattern, mixed replacement,mixed str[,int limit]) 使用pattern在str中匹配,将匹配的子串替代为replacement,最多替代limit次
h.mixed preg_replace(mixed pattern, callback ck,mixed str[,int limit]) 与上述函数相同,但是是使用ck函数的返回值来替代,ck的入参是一个数组,该数组是每一个匹配返回的所有分组
i.array preg_split(string pattern,string str[,int limit]) 使用pattern模式分割str。
10.数组
print_r(mixed)可以打印数组
each()和list()
explode()字符串拆分成数组
implode()数组组合成字符串
int count(array[,int mode]) 统计数组元素个数(mode==1递归统计)
mixed array_search(key,array) 在array中查找键值,如果找到返回键值;否则返回FALSE
mixed array_pop(array) 获取并删除数组中的最后一个元素,如果数组为空则返回null
int array_push(array,mixed v1[,v2,...]) 向数组尾部插入元素,并返回数组中的元素总数
array array_unique(array) 删除数组中重复的元素
11.php与web表单交互数据
a.表单用于浏览器发送数据到服务器,并使用action指明使用哪个url进行表单数据的处理。浏览器的数据只能通过表单来传送。表单的元素较多:checkbox,submit,reset,button,textarea...
b.GET和POST提交表单的区别:使用GET提交的表单将会将表单数据作为参数附加到url中进行提交;而POST方法不会。
c.关于全局变量$_POST,$_GET,$_SESSION
$_POST:数组格式,POST方法传递表单,使用表单元素的元素名获取元素值:$_POST['user'] .
$_GET :数组格式,GET方法传递表单,使用表单元素的元素名获取元素值:$_GET['user']
$_SESSION:session传参获取变量。使用表单元素的元素名获取元素值:$_SESSION['user']
根据表单元素的不同,传回来的'user'键对应的值有可能是一个数组
d.在web中嵌入php脚本的方法只有2种:
使用HTML标记编写php脚本;对表单元素的value属性进行赋值
include("index.php");//可以引用外部文件解耦合,多次引用将多次包含,如果只引用一次可以使用require_once
require_once("index.php"); //require
?>
$hidden="yg0025";
?>
$re=require("...")函数及其变种都具有返回值,返回调用的php文件中return函数的值
return "hello";
?>
include 和require的执行过程都是先将代码原本的拷贝到当前文件再执行。
return的效果也可以理解成将代码返回。return后面的代码将不会被拷贝。
这种拷贝有一个缺陷就是:同名变量或类有可能产生错误。
12.php与JavaScript交互
a.js的一些常识
js是一种由浏览器运行解析的脚本(也可以由服务器执行)。可以在不与服务器交互的条件下实现动态网页。
事件驱动:js是基于对象的语言。采用了事件驱动,当激发了某些事件时将执行相应的js代码。
js事件相应模式:
js的常用事件:onclick,ondblclick,onmousedown,...可以在网上查询js常用事件
与html解耦合: 包含外部文件
在页面底部(
之前)引入js脚本,原因:由于js加载阻塞页面,而HTML是下载多少渲染多少,因此我们把它至于页面底部,让UI线程先执行完再加载js脚本
13.日期与时间
14.cookie与session
cookie:
a.cookie是从一个web页面到下一个web页面的数据传递方法,存储在客户端;session是让数据在页面中持续有效的方法,存储在服务器端。功能:记录访客的信息;在页面之间传递变量;将所查看的Internet页缓存在cookie临时文件夹中;
b.php设置cookie
必须写在文件开头
setcookie("tmcookie","www.baidu.com");//生命周期默认为浏览器会话周期
setcookie("tmcookie","www.baidu.com",time()+60);//有效期60秒
setcookie("tmcookie","www.baidu.com",time+60,"/tm/",".baidu.com",1); //设置有效目录和域名
setcookie("tmcookie","",time()-1);//删除cookie
?>
浏览器会定时清流cookie,即使是未过期cookie也可能在cookie容量满时被清理
session
a.session以随机且唯一的session_id为文件名保存在服务器的文件中,该session_id则是保存在cookie中
写session:
session_start();
$_SESSION["admin"]="hello";//完成写session
?>
读session
if(!empty($_SESSION['admin'])) //将判断cookie中是否存在session_id和‘admin’字段,否则均返回null
$user=$_SESSION['admin']
?>
删除session
unset($_SESSION['admin']);
$_SESSION=array();//删除所有session
session_destory();//彻底销毁会话,确定会话结束时,应该这么做
b.session的过期时间(只有存在cookie时才能使用)
i.session_set_cookie_params将设置session_id的过期时间
session_set_cookie_params(1*60);
session_start();
$_SESSION["admin"]='hello'
?>
ii.setcookie设置session_id的过期时间
session_start();
setcookie(session_name(),session_id(),time()+60,'/');
$_SESSION["admin"]='hello'
?>
c.session只能使用当前session,如果想用上一个session,那是不可能的,因为无法得知session id。
d.session_id的4种传递方式
i.通过cookie传递,默认.需要客户端浏览器打开cookie。
ii.设置php.ini中的session.use_trans_sid=1,让PHP自动跨页面传递session_id
iii.通过GET方法,隐藏表单传递session_id
iv.使用文件或者数据库存储session_id,在页面间传递中手动调用
15.php的图形图像处理技术
16.php文件处理
17.php面向对象
a.定义
与c++相似
final class demo{
public function __construct(){ //构造函数
echo __METHOD__.":".__LINE__."\n";
}
public function func($param){ //普通函数
$param++;
echo "method func $paramn";
}
public function __destruct(){ //析构函数
echo __METHOD__.":".__LINE__."\n";
echo $this->sex;
}
//public $name = 123+456; 错误:初始化时不能带有计算
static $a = '$a';
const A = 'A';
public $name = '凤姐';
protected $sex = '男+女';
private $age = 23;
}
类的构造及成员的调用:$demo = new demo(); $demo->func(1);
成员的可见性有:public protected private 3种
其它修饰符:static final const
成员的调用方式: $this->property
b.类中的魔术方法(具有一定意义的方法)
i. 魔术方法必须被定义为公共的,所有其他魔术方法都必须如此
ii. 从PHP 5以后的版本,PHP中的类就可以使用魔术方法了。其规定以两个下划线(__)开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开头,除非是为了重载已有的魔术方法,接下来列出一些魔术方法,如果大家想详细了解可以针对某一个进行查询了解,这里就不大篇幅的介绍了。
b1.__construct() 构造方法
__destruct()析构方法
b2.__autoload() 自动加载魔术方法。有的时候,在文件众多的项目中,要一一将所需类的文件都 include 进来,PHP 提供了 __autoload()方法,它会在试图使用尚未被定义的类时自动调用。 通过调用此函数,脚本引擎在PHP 出错失败前有了最后一个机会加载所需的类。
加入在Person.php中存在Person类,则当在另一个文件中调用时可以这样:
function __autoload($class_name)
{
require_once $class_name.'.php';
}
//当前页面 Pserson 类不存在则自动调用 __autoload() 方法,传入参数 Person
$p1 = new Person("张三","20");
$p1 -> say();
?>
b3.__get() 当调用一个未定义的属性时,此方法会被触发,传递的参数是被访问的属性名。
__set() 给一个未定义的属性赋值时,此方法会被触发,传递的参数是被设置的属性名和值。 这里的没有声明包括当使用对象调用时,访问控制为proteced,private的属性(即没有权限访问的属性)。
__isset() 当在一个未定义的属性上调用isset()函数时调用此方法
__unset() 当在一个未定义的属性上调用unset()函数时调用此方法
class Person {
private $name;
private $sex;
private $age;
//__set()方法用来设置私有属性
function __set($property_name, $value) { //在属性赋值时会被调用
echo "在直接设置私有属性值的时候,自动调用了这个 __set() 方法为私有属性赋值 ";
$this->$property_name = $value;
}
//__get()方法用来获取私有属性
function __get($property_name) {
echo "在直接获取私有属性值的时候,自动调用了这个 __get() 方法 ";
return isset($this->$property_name) ? $this->$property_name : null;
}
}
$p1=new Person();
$p1->name = "张三";
echo "我的名字叫:".$p1->name;
?>
运行该例子,输出:
在直接设置私有属性值的时候,自动调用了这个 __set() 方法为私有属性赋值
在直接获取私有属性值的时候,自动调用了这个 __get() 方法
我的名字叫:张三
b4.__call( $method, $arg_array ) 当调用一个未定义的方法是调用此方法,这里的未定义的方法包括没有权限访问的方法;如果方法不存在就去父类中找这个方法,如果父类中也不存在就去调用本类的__call()方法,如果本类中不存在__call()方法就去找父类中的__call()方法。
b5.__clone()如果想复制一个对象则需要使用clone方法
如果想在克隆后改变原对象的内容,需要在类中添加一个特殊的 __clone() 方法来重写原本的属性和方法。__clone() 方法只会在对象被克隆clone的时候自动调用。
class Person {
private $name;
private $age;
function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
function say() {
echo "我的名字叫:".$this->name;
echo " 我的年龄是:".$this->age." ";
}
function __clone() {
$this->name = "我是假的".$this->name;
$this->age = 30;
}
}
$p1 = new Person("张三", 20);
$p1->say();
$p2 = clone $p1;
$p2->say();
?>
b6.
__toString()方法在将一个对象转化成字符串时自动调用,比如使用echo打印对象时
__sleep() 串行化的时候用
__wakeup 反串行化的时候调用
__set_state()当调用var_export()时,这个静态 方法会被调用(自PHP 5.1.0起有效)
__invoke当尝试以调用函数的方式调用一个对象时,__invoke 方法会被自动调用。
__callStatic(PHP 5.3.0以上版本有效) 是为了处理静态方法调用
c.继承与多态
c1.范围解析操作符(::)
作用:范围解析操作符或者更简单地说是一对冒号,可以用于访问静态成员,类常量,还可以用于覆盖类中的属性和方法。self,parent 和 static这三个特殊的关键字是用于在类定义的内部对其属性或 方法进行访问的。范围解析操作符(::)与类名连用,可以用于访问静态成员、方法和常量;与parent连用,可以访问被覆盖类中的成员和方法。
class MyClass
{
protected function myFunc() {
echo "MyClass::myFunc()\n";
}
}
class OtherClass extends MyClass
{
// 覆盖了父类的定义
public function myFunc()
{
// 但还是可以调用父类中被覆盖的方法
parent::myFunc();
echo "OtherClass::myFunc()\n";
}
}
$class = new OtherClass();
$class->myFunc();
/**
* 输出结果 ->
* MyClass::myFunc()
* OtherClass::myFunc()
*/
function mycall(MyClass $a){ //函数的入参可以指明类型也可以不指明
$a->myFunc();
}
mycall(new OtherClass()); 多态
?>
c2.接口interface与实现implements
class 子类 extends 父类 implemtns 接口1, 接口2, ...
{
......
}
interface User{
function getDiscount();
function getUserType();
}
//VIP用户 接口实现
class VipUser implements User{
// VIP 用户折扣系数
private $discount = 0.8;
function getDiscount() {
return $this->discount;
}
function getUserType() {
return "VIP用户";
}
}
d.对象的序列化与反序列化->存储
序列化完整过程包括两个步骤:一个是序列化,就是把对象转化为二进制的字符串,serialize() 函数用于序列化一个对象;另一个是反序列化,就是把对象被序列转化的二进制字符串再转化为对象,unserialize() 函数来反序列化一个被序列化的对象。这样整个过程下来,对象内的类型结构及数据都是 完整的。
$p1 = new Person("张三", 20);
$p1_string = serialize($p1);
//将对象序列化后写入文件
$fh = fopen("p1.text", "w");
fwrite($fh, $p1_string);
fclose($fh);
$p2 = unserialize(file_get_contents("p1.text"));
$p2 -> say();
?>
18.php加密技术
19.php操作mysql数据库
resource mysql_connect("hostname","username","password"); //成功返回连接conn,失败返回null
mysql_select_db(string dbname[,resource conn]);//选择使用的数据库 mysql_query("dbname"[,conn])
$result=mysql_query(string query[,resource conn]);//适合所有sql语句,语句中不能加";"
$info=mysql_fetch_array($result[,int result_type]); 从数组结果中获取递归一行信息,返回数组;如果是select则$info的键为字段的名字,如果到底尾部则false
$info=mysql_fetch_object($result[,int result_type]); 获取一行作为对象,成员为字段名
$info=mysql_fetch_row($result[,int result_type]); 返回数组,但是是以下标索引的。
int mysql_num_rows()获取查询结果中总的记录数
20.php的PDO
a.支持的数据库
PDO支持MS SQL SERVER,MYSQL,ODBC,ORACLE,POSTGRE SQL等。
需要的php版本:php5.1以上
b.当数据库发生变化时只需要修改PDO的DSN数据源名称
c.PDO连接mysql
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', 'nsfocus123');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO user VALUES ('5', 'xiaohua');";
$stmt = $dbh->prepare($sql);
$stmt->execute();
echo $dbh->lastinsertid();
$sql = "SELECT * FROM user";
$stmt = $dbh->prepare($sql);
$stmt->execute();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){ // print_r($stmt->fetchAll() 以列名为索引的数组
print_r($row);
}
关于fetch的参数取值:
PDO::FETCH_ASSOC 从结果集中获取以列名为索引的关联数组。
PDO::FETCH_NUM 从结果集中获取一个以列在行中的数值偏移量为索引的值数组。
PDO::FETCH_BOTH 这是默认值,包含上面两种数组。
PDO::FETCH_OBJ 从结果集当前行的记录中获取其属性对应各个列名的一个对象。
PDO::FETCH_BOUND 使fetch()返回TRUE,并将获取的列赋给在bindParm()方法中指 定的相应变量。
PDO::FETCH_LAZY 创建关联数组和索引数组,以及包含列属性的一个对象,从而可以在这三种接口中任选一种。
21.ThinkPHP架构
22.一些有用的函数
a.trigger_error("输出信息", E_USER_ERROR);触发fatal错误,并退出程序执行
b.exit(0); 退出当前进程
c.$pid = pcntl_fork(); 创建子进程,需要pcntl模块
23.php的模块安装方法
a.下载需要安装的源码,编译生成.so或.dll
b.将动态库复制到php安装目录下的ext目录中
c.修改安装目录下的php.ini配置文件,在[php]字段中添加 extension=***.so
e.php -m |grep *** 查看模块是否安装成功
24. 内建函数和默认常量
unset(变量) 删除某个变量
is_null(变量) 判断变量是否为null
is_bool(变量)
is_string(变量)
is_float/is_double(变量)
is_integer/is_int(变量)
is_array(变量)
is_object(变量)
is_numeric(变量)
define(变量,value)
defined(变量)
strlen(string) #大量使用了c语言的库函数
substr()
explode() //字符串拆分
implode() //(数组)合并为字符串
echo
print_t
count() //统计数组元素个数
array_push() //向数组最后添加一个元素
array_pop() //数组元素个数减一,返回最后一个元素
array_search() //按值搜索元素,并返回键
array_key_exists(key,array) 键是否存在
array_unique() //删除数组中的重复元素
self:: 指代类本身 $this->指代对象本身
默认常量
__FILE__ __LINE__
PHP_VERSION PHP_OS
E_ERROR 常量,指向最近的错误处
你可能感兴趣的:(哦)
2020-12-16
长寿富贵
9:56不知今天哪位亲来说说话呀?成萌:尽尽皆是道。道道皆相同。不解呀?成萌:郁郁不得志,混混过日子。哦……说谁的呀?成萌:说自己呀……还能说谁呢?那如何办呢?成萌:回头……如何回头?成萌:回见心源。如何回见心源?成萌:不追不随诸相迁,如如不动在心田。啊?成萌:慢慢守心吧。
《大兴安岭猎人传说》今年最好看的东北鬼怪故事,很优秀
一部电影
《大兴安岭猎人传说》是最新上映于愚人节的网剧,别看是网剧却远超出我的个人预料。该片由民俗故事改编,这点就很吸引人,因为民俗故事口口相传,比那些编造而成的鬼故事更具有了真实性,网大做的电影还不错哦,如果可以我打四星好评。大兴安岭的故事我们经常听老人提起,那里有原始大森林,物产丰富,更流传着精灵怪物的传说。什么红黄白柳灰,出马仙、人参娃娃的故事层出不穷,以大兴安岭为背景的故事真不少。可很多鬼片看到最后
“日舍一物”之42——活在当下,并向前看
記二十一
这件衣服已经有十五、六年了(突然发现我可真是能囤东西啊)。这原本是一件我非常喜欢的衣服,无论是样子,还是质地。照片拍的比较渣,但其实,白色棉质衣料中,尚织有银色的丝线,在阳光或灯光下,会闪亮,不晃眼,但很漂亮。或许正是因为太喜欢了,所以一直保留着,尽管很多年都没有再穿过了。因为不合适了。首先是随着年龄的增长,尽管体重总量没有太多变化(哦,其实还是涨了)。但是体型还是和十几年前不一样了,最明显的就是
京券东券优惠券领取网站-点击进入
高省爱氧惠
嘿,小伙伴们,你们知道吗?京东商城可是有好多超值优惠券等着我们领取哦!不论是京券还是东券,都有好多好多的优惠等着我们呢!氧惠APP(带货领导者)——是与以往完全不同的抖客+淘客app!2024全新模式,我的直推也会放到你下面。主打:带货高补贴,深受各位带货团队长喜爱(每天出单带货几十万单)。注册即可享受高补贴+0撸+捡漏等带货新体验。送万元推广大礼包,教你如何1年做到百万团队。想要领取这些优惠券,
记录幸福(三月)
杨芸
3月6日中午,匆匆忙忙与老爸和三妹在高铁站候车厅见了一面,两个南瓜包传递了亲人间的爱,那一刻好幸福好满足。他们进站后,我带着离别的忧伤,走到出口,突然想起朵儿喜欢吃的奥尔良鸡腿煲,便折回去,买了她和我,还有朵爸各自喜爱的。以前和亲人每次分开,都要难过许久,那天我竟然突然明白了一个道理,正因为爱家人,所以要让自己过的更开心更舒适,才能长寿,有更多的时间去爱他们。而不是忧心忡忡的过日子哦。最爱的家人回
每日头像|爱与时光,终年不遇
一宝先生
小可爱们晚上好呀今天晚上来推送一期情侣头像~喜欢的小可爱可以点赞收藏评论哟~部分素材来自网络,版权归原创者,如有侵权请联系删除今天的头像结束啦喜欢的小可爱可以点下关注哟~如果喜欢本期的内容可以转发分享哦~那我们下期再见咯~拜了个拜~
小西妈双语工程打卡2018-1-18
慢蜗牛Erica
这是送给妈妈的,还有一张是爸爸的,现在看着这张小图,觉得好温暖。早上看到了我把它折上了,还好一顿不高兴。妈妈这个是爸爸。爸爸希望之星,Herewecome.复赛通知书这是送给妈妈的小鹿,栩栩如生吧,不过妈妈不确定这是他一个人完成的。还送了妈妈一个小蝴蝶发卡,很暖心哦。小鹿上完课回家就很晚了,自己看了好几本书,没有录阅读打卡。听peppa第一季3集。
心态决定格局
影趣图文
古人常说:宰相肚里能撑船哦!大人有大量宰相肚里能撑船,以豁达宽松的胸怀对待别人的过失,有不可思议的功效,对自己一生都会有影响。战国时期,赵国国王顺利拿回和氏璧。因为蔺相如功大封上卿位,在廉颇之上。廉颇自恃战功多,认为蔺相如仅仅一个嘴皮子心中不服。蔺相如听说后自称有病不上朝,相府属员认为这样低声下气,纷纷要求离他而去。为挽留他们,说出了实情,说:你们认为廉颇比秦王如何?都说不如秦王!秦王那么厉害,我
融开心告诉你:银行怎么靠你的信用卡赚钱
骊驰商学院
办卡送礼、刷卡返现……信用卡无论办卡还是用卡,福利不要太爽哦~~很多人出于种种原因,办理了多张信用卡。然而却不知道:只要你用信用卡消费,银行就已经开始用你的卡来赚钱了。银行怎么靠你的信用卡赚钱,骊驰融开心告诉你这些:银行怎么靠你的信用卡赚钱?1、信用卡利息收入。持卡人透支信用额度所支付的利息,这一部分是信用卡收入的主要部分。如持卡人逾期、还最低还款额时,利息就产生,日息万分之五哦~~2、信用卡年费
积食宝宝福音,试着坚持3件事,孩子脾胃好还消积!
MrWu_e989
许多宝妈由于第一次当父母,所以经验还是缺乏,宝宝突然不吃饭了,睡眠也变差了,还容易哭闹,有经验的家长朋友们都会说,这些都是孩子积食的表现,所以得注意了,孩子腹痛腹胀也是孩子积食的表现哦。一起了解孩子积食积食在中医学上,主要是小孩吃东西消化慢,堆积在体内,形成一种肠胃疾患,主要的表现就是腹胀、不吃饭、腹泻呕吐等等。宝宝积食危害大,长时间的积食容易影响营养的吸收,还会影响生长发育,甚至是智力发育的罪魁
在线美工可撩
金戈药商公子绾月
啦啦啦啦啦,封面来啦,好书怎么可以没有封面呢(疯狂暗示,疯狂暗示,疯狂暗示)小辣鸡美工在线接单,有意私戳我哦图片发自App图片发自App图片发自App
剧本杀《暗黑者·七宗欲》复盘详细解析+凶手角色剧透答案真相
VX搜_小燕子复盘
为了你获得更好的游戏体验,本文仅显示《暗黑者·七宗欲》剧本杀部分真相复盘,获取完整真相复盘只需两步①【微信关注公众号:集美复盘】②回复【暗黑者·七宗欲】即可查看获取哦﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎﹎1、剧本杀《暗黑者·七宗欲》角色介绍朱思俊沙害杜光荣的手法:接到杜光荣的电话之后,朱思俊约对方在地下室见面细聊。朱思俊出门时携带了老冰棍(放在保温杯中)、白砂糖、鱼线
土豆丝别再炒了,10分钟做成早餐,外脆里软香喷喷,连吃3天不腻
美食达人计划
今天给大家介绍一款特别有意思的美食,从外表看有点春卷的味道,但口感上要强太多!这款美食就是饺子皮土豆丝煎饼,是不是感觉有点奇怪呢!饺子皮那么厚真能做出春卷的厚度吗?要是太厚了肯定不好吃哦!饺子皮真有这么大的魔力吗?其实我们有小诀窍呢!普通饺子皮只用简单处理一下,就能做出薄如蝉翼的面皮来!再包入各种馅料,瞬间就能成为一款好吃的美食呢!我们今天就来做饺子皮土豆丝煎饼,比炒土豆丝好吃太多了呢!土豆丝别再
新媒体运营小白,有哪些书籍可以推荐?
y耳朵
为了转行运营,我曾花了3个月的时间,看了不下百本书,可以说市面上大部分跟运营有关的书籍,我都看过了,因此关于书的推荐也有一些自己的小见解。看书不一定要多,但一定要****精,我根据豆瓣评分、推荐热度和自己的转行经历,挑出了13本值得运营小白看的书,收藏好这份书单,不需要你浪费时间去找书了。先看下统计好的书单:整理不易,看完记得点个赞哦!感谢你的支持。入门篇:1.《运营之光》(豆瓣评分:8.0)推荐
20220226号今日份(6)
张雅苑Momo
考虑以下必备行程安排:1作息规律2三餐规律3早茶下午茶4晨练运动5阅读笔记6挚爱亲朋联络20220226号今日份快乐是有哪一些呢?1:视频号直播的持续今天已经是第221/190天啦今天主讲人在分享事上练的能力,事上见2:持续吉他练习今天已经第25天啦3:今天持续带动某人整理屋子,要加油哦,要持续哦今天的过程持续比较轻松愉快4:今天老佛爷入院的第四天,上阵父子兵,期待他们仨早起凯旋归来如何成为自己喜
特别的520——家引师第二次团体会议
Erin曹
图片发自App前几天收到郭老师通知今天会议内容时,有点惊喜有点感动,还有感恩的,发现我要感恩的人好多哦!其实这个时间点我的身体感受是有点累的,有点困了想休息了,今天团体结束之后又到女儿的班级跟孩子们做了一次互动,到晚上九点钟才结束回家,之后班主任老师和学校德育主任分别与我沟通今天的互动情况,非常感恩老师和孩子们的敞开,让我更多一些了解孩子们,也让我确定接下来需要工作的方向!这是今晚的一个收获!图片
教师资格考试中学《教育知识与能力》知识点|高频考点汇总
小山丘
温馨提示:更多汇总详情留言小编哦!!!认知过程之易混知识点剖析社会中心课程论情绪——重要考点皮亚杰教你带孩子斯金纳强化规律你的心理足够强大吗?教育心理学的效应德育有规律常考人物思想之夸美纽斯中学常考教学原则孔子及《论语》中的重要教育思想教育学创立阶段人物之赫尔巴特学习策略分类知识点梳理教师资格证辨析题作答思路综合课程的类型班杜拉的学习理论马斯洛需要层次理论记忆类型的四大分类柏拉图和他的《理想国》感
爱自己便是自己的女王
慧宁Sandy
昨天自己感觉有点小累的,奖励自己看了一个电影《我是女王》,刚开始我看的时候,我就是对名字感觉好奇来看的,我是女王多霸气的名字的哦!其实电影前面很狗血我就不吐槽了,我就简单的说一下的,女主角安妮的蜕变。安妮本是一名演员的,谈了五年的恋爱,三年在失恋中没有走出来的,为了别人而失去了自己的,什么事情都是一味的去为别人着想,哪怕是在委屈自己也要去奉承身边的人,严重的不自信的,缺乏安全感,为了那仅有的安全感
IT--授权系统开发
opcc
一开题虽然目前的开发项目还很小(哪有项目),但随着代码量、含金量越来越高(哦?),也该考虑授权问题了,万一哪天有购买需求了呢(喂,醒醒)。二设计构思1、授权内容通过获取不同层面的用户信息来标识用户的唯一性。我从系统层、主机层、用户注册信息中各抽取一条相对唯一的数据,组成一个应该算是不会出现重复的标识码。授权和其他软件一样,也是以使用时间来限制,最终授权码是标识码加授权时间。2、授权加密这次我又换了
在校学生怎么赚零花钱?盘点12个适合大学生无成本赚钱方法
氧惠好项目
今天给大家分享一下大学生可以赚到零花钱的兼职,都是一些简单容易上手的,没有任何专业技术,大多数大学生都能做到的。01、淘宝客赚钱这里不是说开网店哦,淘宝客是在淘宝推广专区那里得到商品代码,之后买家只要是通过你推广链接购买商品,你就能赚取商品的佣金了。推广方式还是蛮多的,这里给大家推荐:全网佣金最高的「氧惠」APP,氧惠邀请码:009900。分享商品及推广APP做团队赚佣金,适合新手小白(有导师一对
学生兼职的日常生活4
0f8cf7bfd36d
今天顾客还蛮多的,但是员工好少,我们只能晚吃饭,早上起的太晚了,没有吃饭,上班没一会就饿得前胸贴后背了,太难过了,今天经理买了KFC,我蹭了挺多的,还有好心的同事请我喝了杯奶茶,嘻嘻~就是今天好热,可是我却感冒了,老是流鼻涕,给顾客点餐的时候,差点鼻涕都挂不住了,热感冒太难受了,温差有点大,大家要注意哦!
蜂享家佣金价格表?蜂享家邀请码在哪里?蜂享家掌柜什么申请?蜂享店是什么?
知行导师
问:蜂享家佣金价格表?答;商品的佣金不是固定的哦,成为蜂享家掌柜之后可以看到商品的佣金多少的哦。问:蜂享家掌柜什么申请?答:应用商店搜索蜂享家下载填写邀请码完成注册(请往下看下面提供几十个免费邀请码请自取)问:蜂享店是什么?答:蜂享店是可以分享品牌特卖商品的小程序。先应用商店搜索蜂享家下载填写邀请码完成注册,就可以用自己的蜂享店了。蜂享家app分享出来的链接就是蜂享店。注册好蜂享家成为掌柜=有了自
这该死的疫情
婴宁嫣然
我真的是后知后觉,对今年年初的疫情当时只是恐惧,厌恶,现在是严重的憎恨了。因为疫情,领导说上学期学生在家没好好学习,基础不扎实,于是我们从期末考试结束就开始补课,今年的暑假休息了四天,哦不对是四天半。从七月至今,我们已经连续上了五个月课了,如果不是春节,估计我们还会有下一个五个月,还好,春节让我们这学期只用再上两个月。而从期中考试之前两周到现在,已经连续七个周上课了。我知道有人一定说疫情期间,你们
极品小农场 名窑 第1062章
龘龑文轩
第1062章洞穴餐厅李汉喝了口啤酒,面色严肃说道。“不说这些,赖斯,王储婚礼这件事你和尼古拉斯多用心思,今天晚上的事杰西卡你跟一下,这次要给着他们一个个狠狠的教训,这段时间,我可不想再出什么意外。”杰西卡点头,保证道。“boss,你放心,这些该死混蛋,这次一定会记住一辈子。”“不要太过,狗急跳墙,那可就不好了。”李汉说话,手指弹了下竖着小耳朵偷听的嘟嘟脑门一下。“去洗澡,睡觉。”“哦。”嘟嘟不情不
京粉怎么给自己返利?京粉自己下单有佣金吗
日常购物小技巧
大家好,我是花桃APP商品推荐官:美美,今天给各位说说京粉怎么给自己返利?京粉自己下单有佣金吗。京粉怎么给自己返利?京粉自己下单有佣金吗京粉怎么给自己返利?京粉自己下单买有佣金吗?怎么实现单个账号自推自买?说【京粉返利】之前给大家推荐一款返利APP,【全网返利最高哦!可以对比一下自己在用的返利软件】都是有内部返利和优惠券的,应用商店搜索下载花桃APP即可查询返利佣金。【官方邀请码:00028】目前
【华为OD机试真题 python】输出指定字母在字符串的中的索引【2022 Q4 | 100分】
无痕de泪
华为OD机试真题 python 输出指定字母在字符串的中的索引 字符串 华为od python
前言《华为OD笔试真题python》专栏含华为OD机试真题、华为面试题、牛客网华为专栏真题。如果您正在准备华为的面试,或者华为od的机会,有任何想了解的可以私信我进行交流。我会尽可能的给一些建议,和帮您解答!PS:文中答案仅供参考,不能照抄哦■题目描述【输出指定字母在字符串的中的索引】给定一个字符串,把字符串按照大写在前小写在后排序,输出排好后的第K个字母在原来字符串的索引。相同字母输出第一个出现
淘宝延长收货可以延长多久,淘宝的延长收货能延迟几天
日常购物小技巧
在淘宝上购物虽然很方便,但是等待收货的过程是非常煎熬的,这对于一些心急的人来说非常不友好,而且有的时候因为各种原因还会导致货物不能按时送达,这个时候为了防止货物出现问题可以选择延长收货来确保收到货物。那么淘宝延长收货可以延长多久,淘宝的延迟收货能延迟几天?说【淘宝延长收货】之前给大家推荐一款返利APP,【全网返利最高哦!可以对比一下自己在用的返利软件】都是有内部返利和优惠券的,应用商店搜索下载花桃
To:一凡
fullofyou
一凡,你是一个文静的姑娘。不过,你有些过于安静了,对于所有东西都不争不抢。你从不抱怨,也从不炫耀。有时候安静的让人心疼。图片发自App虽然你很文静,但是和同学相处的不错。为了让你更融入班级,我决定让你书写每天的3+1。你真的很认真负责,从来没有让我操心,需要更换时,你会问我或者看其它班级的内容。这一点你真的很棒!图片发自App姑娘,以后的路还很长,该争取的时候也要争取哦!过于文静,会让别人忽略了你
关系中的对抗与纠缠
建依
1.主题是什么?关系中的对抗与纠缠2.事件是什么?一,和同寝一起做运动,我们有这个习惯,每次做两个,用的她的平板放视频,做完第一个,她决定不做了,去做饭,我继续用她的平板做第二个,不一会儿,她进来,看到我在用平板,她似乎有些情绪,说:哦,你在用平板呀。然后犹豫了一下。说,我要查一下什么什么的做法,你用平板,我就用手机吧。我马上停了下来,感觉有些尴尬。她看我停了下来,开始解释,平板更大些,所以我想用
你会喜欢台风吗?
小白洋羊洋
文/小白洋羊洋你记忆中的台风是怎么样的呢?近日台风“利奇马”来袭,给我们的生活带来了或多或少的影响。也为受到严重影响的地区祈福。今日的故事便和台风有关。台风情况小洋生活在福建地区,所以每年基本都或多或少受到台风天的影响。所以遇到台风对小洋这里来说就如日本人民遇到地震是一样的。但是福建地区受到像“利奇马”这样的台风是很少的哦。说起台风,人们的第一印象觉得台风就是像地震这样的严重灾害,所经受之处,无不
面向对象面向过程
3213213333332132
java
面向对象:把要完成的一件事,通过对象间的协作实现。
面向过程:把要完成的一件事,通过循序依次调用各个模块实现。
我把大象装进冰箱这件事为例,用面向对象和面向过程实现,都是用java代码完成。
1、面向对象
package bigDemo.ObjectOriented;
/**
* 大象类
*
* @Description
* @author FuJian
Java Hotspot: Remove the Permanent Generation
bookjovi
HotSpot
openjdk上关于hotspot将移除永久带的描述非常详细,http://openjdk.java.net/jeps/122
JEP 122: Remove the Permanent Generation
Author Jon Masamitsu
Organization Oracle
Created 2010/8/15
Updated 2011/
正则表达式向前查找向后查找,环绕或零宽断言
dcj3sjt126com
正则表达式
向前查找和向后查找
1. 向前查找:根据要匹配的字符序列后面存在一个特定的字符序列(肯定式向前查找)或不存在一个特定的序列(否定式向前查找)来决定是否匹配。.NET将向前查找称之为零宽度向前查找断言。
对于向前查找,出现在指定项之后的字符序列不会被正则表达式引擎返回。
2. 向后查找:一个要匹配的字符序列前面有或者没有指定的
BaseDao
171815164
seda
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class BaseDao {
public Conn
Ant标签详解--Java命令
g21121
Java命令
这一篇主要介绍与java相关标签的使用 终于开始重头戏了,Java部分是我们关注的重点也是项目中用处最多的部分。
1
[简单]代码片段_电梯数字排列
53873039oycg
代码
今天看电梯数字排列是9 18 26这样呈倒N排列的,写了个类似的打印例子,如下:
import java.util.Arrays;
public class 电梯数字排列_S3_Test {
public static void main(S
Hessian原理
云端月影
hessian原理
Hessian 原理分析
一. 远程通讯协议的基本原理
网络通信需要做的就是将流从一台计算机传输到另外一台计算机,基于传输协议和网络 IO 来实现,其中传输协议比较出名的有 http 、 tcp 、 udp 等等, http 、 tcp 、 udp 都是在基于 Socket 概念上为某类应用场景而扩展出的传输协
区分Activity的四种加载模式----以及Intent的setFlags
aijuans
android
在多Activity开发中,有可能是自己应用之间的Activity跳转,或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例,而不是产生大量重复的Activity。
这需要为Activity配置特定的加载模式,而不是使用默认的加载模式。 加载模式分类及在哪里配置
Activity有四种加载模式:
standard
singleTop
hibernate几个核心API及其查询分析
antonyup_2006
html .net Hibernate xml 配置管理
(一) org.hibernate.cfg.Configuration类
读取配置文件并创建唯一的SessionFactory对象.(一般,程序初始化hibernate时创建.)
Configuration co
PL/SQL的流程控制
百合不是茶
oracle PL/SQL编程 循环控制
PL/SQL也是一门高级语言,所以流程控制是必须要有的,oracle数据库的pl/sql比sqlserver数据库要难,很多pl/sql中有的sqlserver里面没有
流程控制;
分支语句 if 条件 then 结果 else 结果 end if ;
条件语句 case when 条件 then 结果;
循环语句 loop
强大的Mockito测试框架
bijian1013
mockito 单元测试
一.自动生成Mock类 在需要Mock的属性上标记@Mock注解,然后@RunWith中配置Mockito的TestRunner或者在setUp()方法中显示调用MockitoAnnotations.initMocks(this);生成Mock类即可。二.自动注入Mock类到被测试类 &nbs
精通Oracle10编程SQL(11)开发子程序
bijian1013
oracle 数据库 plsql
/*
*开发子程序
*/
--子程序目是指被命名的PL/SQL块,这种块可以带有参数,可以在不同应用程序中多次调用
--PL/SQL有两种类型的子程序:过程和函数
--开发过程
--建立过程:不带任何参数
CREATE OR REPLACE PROCEDURE out_time
IS
BEGIN
DBMS_OUTPUT.put_line(systimestamp);
E
【EhCache一】EhCache版Hello World
bit1129
Hello world
本篇是EhCache系列的第一篇,总体介绍使用EhCache缓存进行CRUD的API的基本使用,更细节的内容包括EhCache源代码和设计、实现原理在接下来的文章中进行介绍
环境准备
1.新建Maven项目
2.添加EhCache的Maven依赖
<dependency>
<groupId>ne
学习EJB3基础知识笔记
白糖_
bean Hibernate jboss webservice ejb
最近项目进入系统测试阶段,全赖袁大虾领导有力,保持一周零bug记录,这也让自己腾出不少时间补充知识。花了两天时间把“传智播客EJB3.0”看完了,EJB基本的知识也有些了解,在这记录下EJB的部分知识,以供自己以后复习使用。
EJB是sun的服务器端组件模型,最大的用处是部署分布式应用程序。EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基
angular.bootstrap
boyitech
AngularJS AngularJS API angular中文api
angular.bootstrap
描述:
手动初始化angular。
这个函数会自动检测创建的module有没有被加载多次,如果有则会在浏览器的控制台打出警告日志,并且不会再次加载。这样可以避免在程序运行过程中许多奇怪的问题发生。
使用方法: angular .
java-谷歌面试题-给定一个固定长度的数组,将递增整数序列写入这个数组。当写到数组尾部时,返回数组开始重新写,并覆盖先前写过的数
bylijinnan
java
public class SearchInShiftedArray {
/**
* 题目:给定一个固定长度的数组,将递增整数序列写入这个数组。当写到数组尾部时,返回数组开始重新写,并覆盖先前写过的数。
* 请在这个特殊数组中找出给定的整数。
* 解答:
* 其实就是“旋转数组”。旋转数组的最小元素见http://bylijinnan.iteye.com/bl
天使还是魔鬼?都是我们制造
ducklsl
生活 教育 情感
----------------------------剧透请原谅,有兴趣的朋友可以自己看看电影,互相讨论哦!!!
从厦门回来的动车上,无意中瞟到了书中推荐的几部关于儿童的电影。当然,这几部电影可能会另大家失望,并不是类似小鬼当家的电影,而是关于“坏小孩”的电影!
自己挑了两部先看了看,但是发现看完之后,心里久久不能平
[机器智能与生物]研究生物智能的问题
comsci
生物
我想,人的神经网络和苍蝇的神经网络,并没有本质的区别...就是大规模拓扑系统和中小规模拓扑分析的区别....
但是,如果去研究活体人类的神经网络和脑系统,可能会受到一些法律和道德方面的限制,而且研究结果也不一定可靠,那么希望从事生物神经网络研究的朋友,不如把
获取Android Device的信息
dai_lm
android
String phoneInfo = "PRODUCT: " + android.os.Build.PRODUCT;
phoneInfo += ", CPU_ABI: " + android.os.Build.CPU_ABI;
phoneInfo += ", TAGS: " + android.os.Build.TAGS;
ph
最佳字符串匹配算法(Damerau-Levenshtein距离算法)的Java实现
datamachine
java 算法 字符串匹配
原文:http://www.javacodegeeks.com/2013/11/java-implementation-of-optimal-string-alignment.html------------------------------------------------------------------------------------------------------------
小学5年级英语单词背诵第一课
dcj3sjt126com
english word
long 长的
show 给...看,出示
mouth 口,嘴
write 写
use 用,使用
take 拿,带来
hand 手
clever 聪明的
often 经常
wash 洗
slow 慢的
house 房子
water 水
clean 清洁的
supper 晚餐
out 在外
face 脸,
macvim的使用实战
dcj3sjt126com
mac vim
macvim用的是mac里面的vim, 只不过是一个GUI的APP, 相当于一个壳
1. 下载macvim
https://code.google.com/p/macvim/
2. 了解macvim
:h vim的使用帮助信息
:h macvim
java二分法查找
蕃薯耀
java二分法查找 二分法 java二分法
java二分法查找
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年6月23日 11:40:03 星期二
http:/
Spring Cache注解+Memcached
hanqunfeng
spring memcached
Spring3.1 Cache注解
依赖jar包:
<!-- simple-spring-memcached -->
<dependency>
<groupId>com.google.code.simple-spring-memcached</groupId>
<artifactId>simple-s
apache commons io包快速入门
jackyrong
apache commons
原文参考
http://www.javacodegeeks.com/2014/10/apache-commons-io-tutorial.html
Apache Commons IO 包绝对是好东西,地址在http://commons.apache.org/proper/commons-io/,下面用例子分别介绍:
1) 工具类
2
如何学习编程
lampcy
java 编程 C++ c
首先,我想说一下学习思想.学编程其实跟网络游戏有着类似的效果.开始的时候,你会对那些代码,函数等产生很大的兴趣,尤其是刚接触编程的人,刚学习第一种语言的人.可是,当你一步步深入的时候,你会发现你没有了以前那种斗志.就好象你在玩韩国泡菜网游似的,玩到一定程度,每天就是练级练级,完全是一个想冲到高级别的意志力在支持着你.而学编程就更难了,学了两个月后,总是觉得你好象全都学会了,却又什么都做不了,又没有
架构师之spring-----spring3.0新特性的bean加载控制@DependsOn和@Lazy
nannan408
Spring3
1.前言。
如题。
2.描述。
@DependsOn用于强制初始化其他Bean。可以修饰Bean类或方法,使用该Annotation时可以指定一个字符串数组作为参数,每个数组元素对应于一个强制初始化的Bean。
@DependsOn({"steelAxe","abc"})
@Comp
Spring4+quartz2的配置和代码方式调度
Everyday都不同
代码 配置 spring4 quartz2.x 定时任务
前言:这些天简直被quartz虐哭。。因为quartz 2.x版本相比quartz1.x版本的API改动太多,所以,只好自己去查阅底层API……
quartz定时任务必须搞清楚几个概念:
JobDetail——处理类
Trigger——触发器,指定触发时间,必须要有JobDetail属性,即触发对象
Scheduler——调度器,组织处理类和触发器,配置方式一般只需指定触发
Hibernate入门
tntxia
Hibernate
前言
使用面向对象的语言和关系型的数据库,开发起来很繁琐,费时。由于现在流行的数据库都不面向对象。Hibernate 是一个Java的ORM(Object/Relational Mapping)解决方案。
Hibernte不仅关心把Java对象对应到数据库的表中,而且提供了请求和检索的方法。简化了手工进行JDBC操作的流程。
如
Math类
xiaoxing598
Math
一、Java中的数字(Math)类是final类,不可继承。
1、常数 PI:double圆周率 E:double自然对数
2、截取(注意方法的返回类型) double ceil(double d) 返回不小于d的最小整数 double floor(double d) 返回不大于d的整最大数 int round(float f) 返回四舍五入后的整数 long round