第4节 Laravel-通过表单实现新增及操作状态提示功能
4.1 显示新增表单视图
4.2 通过模型实现新增
4.3 操作状态提示
4.1 显示新增表单视图
修改边栏的链接 \resources\views\shared\siderbar.blade.php <div class="col-md-3">
<div class="list-group">
<a href="{{ url('/') }}" class="list-group-item active">学生列表</a>
<a href="{{ url('student/create') }}" class="list-group-item">新增学生</a>
</div>
</div>
\resources\views\shared\message.blade.php <div class="alert alert-danger">
<ul>
<li>姓名不能为空</li>
<li>年龄只能为整数</li>
<li>请选择性别</li>
</ul>
</div>
\resources\views\student\create.blade.php @extends('layout/student') @section('content')
<!-- 所有的错误提示 -->
@include('shared/message')
<!-- 自定义内容区域 -->
<div class="panel panel-default">
<div class="panel-heading">新增学生</div>
<div class="panel-body">
<form class="form-horizontal">
<div class="form-group">
<label for="name" class="col-sm-2 control-label">姓名</label> <div class="col-sm-5">
<input type="text" class="form-control" id="name" placeholder="请输入学生姓名">
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">姓名不能为空</p>
</div>
</div>
<div class="form-group">
<label for="age" class="col-sm-2 control-label">年龄</label> <div class="col-sm-5">
<input type="text" class="form-control" id="age" placeholder="请输入学生年龄">
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">年龄只能为整数</p>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">性别</label> <div class="col-sm-5">
<label class="radio-inline">
<input type="radio" name="sex" value="option1"> 未知
</label>
<label class="radio-inline">
<input type="radio" name="sex" value="option2"> 男
</label>
<label class="radio-inline">
<input type="radio" name="sex" value="option3"> 女
</label>
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">请选择性别</p>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">提交</button>
</div>
</div>
</form>
</div>
</div>
@endsection
\app\Http\Controllers\StudentController.php /**
* 新增表单页面,表单提交到当前页
*
* @param
* @return void
* @author webjust [604854119@qq.com]
*/
public function create()
{
return view('student/create');
}
\app\Http\routes.php Route::get('/', ['uses' => 'StudentController@index']); // 新增表单路由
Route::any('student/create', ['uses' => 'StudentController@create']);
添加hover效果。\resources\views\shared\siderbar.blade.php <div class="col-md-3">
<div class="list-group">
<a href="{{ url('/') }}"
class="list-group-item {{ Request::path() == '/' ? 'active' : '' }}">学生列表</a>
<a href="{{ url('student/create') }}"
class="list-group-item {{ Request::path() == 'student/create' ? 'active' : '' }}">新增学生</a>
</div>
</div>
这里使用了 Request::path() 方法,更多Request facade 方法可以查看手册:https://cs.laravel-china.org/#requests 4.2 通过模型实现新增
给form表单添加action: <form class="form-horizontal" method="post" action="{{ url('student/create') }}">
\app\Http\Controllers\StudentController.php public function create(Request $request)
{
// 判断是POST请求,也就是提交表单时走这个区间
if($request->isMethod('POST'))
{
echo "post";
} return view('student/create');
}
此时会报 TokenMismatchException in VerifyCsrfToken.php line 67: 的错误。 Laravel 提供简单的方法保护你的应用程序不受到 跨网站请求伪造 攻击。跨网站请求伪造是一种恶意的攻击,破坏份子伪造 已通过身份检验的用户身份 来运行未经授权的命令。
Laravel 会自动生成一个 CSRF token 给每个用户的 Session。该 token 用来验证用户是否为实际发出请求的用户。可以使用 csrf_field 辅助函数来生成一个包含 CSRF token 的 _token 隐藏表单字段。
更多查看:http://d.laravel-china.org/docs/5.2/routing#csrf-protection 在Blade模板引擎中使用: {{ csrf_field() }}
修改 input 字段的属性:name="Student[name]" 这样可以获得一个数组下标以模型名命名的数组。 \resources\views\student\create.blade.php <form class="form-horizontal" method="post" action="{{ url('student/create') }}">
{{ csrf_field() }}
<div class="form-group">
<label for="name" class="col-sm-2 control-label">姓名</label> <div class="col-sm-5">
<input type="text" name="Student[name]" class="form-control" id="name" placeholder="请输入学生姓名">
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">姓名不能为空</p>
</div>
</div>
<div class="form-group">
<label for="age" class="col-sm-2 control-label">年龄</label> <div class="col-sm-5">
<input type="text" name="Student[age]" class="form-control" id="age" placeholder="请输入学生年龄">
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">年龄只能为整数</p>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">性别</label> <div class="col-sm-5">
<label class="radio-inline">
<input type="radio" name="Student[sex]" value="2"> 未知
</label>
<label class="radio-inline">
<input type="radio" name="Student[sex]" value="1"> 男
</label>
<label class="radio-inline">
<input type="radio" name="Student[sex]" value="0"> 女
</label>
</div>
<div class="col-sm-5">
<p class="form-control-static text-danger">请选择性别</p>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-primary">提交</button>
</div>
</div>
</form>
修改:\app\Http\Controllers\StudentController.php public function create(Request $request)
{
// 判断是POST请求,也就是提交表单时走这个区间
if($request->isMethod('POST'))
{
$data = $request->input('Student');
var_dump($data);
} return view('student/create');
}
访问:http://example.com/student/create 提交表单,效果: 实现模型的添加操作: // 判断是POST请求,也就是提交表单时走这个区间
if($request->isMethod('POST'))
{
$data = $request->input('Student');
// var_dump($data);
$data['created_time'] = time();
$data['updated_time'] = time(); // 模型的添加方法
$ret = Student::insert($data);
var_dump($ret);
}
添加数据测试,查询数据库,可以看到新增加了1条记录哦!(^__^) 嘻嘻…… 使用重定向方法:redirect() public function create(Request $request)
{
// 判断是POST请求,也就是提交表单时走这个区间
if($request->isMethod('POST'))
{
$data = $request->input('Student');
// var_dump($data);
$data['created_time'] = time();
$data['updated_time'] = time(); // 模型的添加方法
$ret = Student::insert($data);
if($ret)
{
return redirect('/');
} else{
return redirect('student/create');
}
} return view('student/create');
}
4.3 操作状态提示
重定向并加上 Session 闪存数据 通常重定向至新的 URL 时会一并 写入闪存数据至 session。所以为了方便,你可以利用链式调用的方式创建一个 RedirectResponse 的实例 并 闪存数据至 Session。这对于在一个动作之后保存状态消息相当方便: return redirect('/')->with('success', '操作成功!');
当然,在用户重定向至新的页面后,你可以获取并显示 session 的闪存数据。举个例子,使用 Blade 的语法: @if (session('success'))
<div class="alert alert-success">
{{ session('success') }}
</div>
@endif
修改如下: // 模型的添加方法
$ret = Student::insert($data);
if($ret)
{
return redirect('/')->with('success', '添加成功!');
} else{
return redirect('student/create')->with('error', '添加失败!');
}
\resources\views\shared\success.blade.php @if(Session::has('success'))
<!-- 成功提示框 -->
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<strong>成功!</strong> {{Session::get('success')}}
</div>
@endif @if(Session::has('error'))
<!-- 失败提示框 -->
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
<strong>失败!</strong> {{Session::get('error')}}
</div>
@endif
同理,我们也可以使用 Session类的方法。如: @if(Session::has('success'))
{{Session::get('success')}}
为了显示最新添加的数据,我们采用倒序的排列方式: public function index()
{
// 对 Eloquent 模型进行分页
$students = Student::orderby('id', 'desc')->paginate(5); // 渲染 student/index 视图,并传递查询出来的全部数据
return view('student/index', ['students' => $students]);
}
最终效果如下:

最终效果如下:


 

第4节 Laravel-通过表单实现新增及操作状态提示功能

  1.  
    4.1 显示新增表单视图
  2.  
    4.2 通过模型实现新增
  3.  
    4.3 操作状态提示

4.1 显示新增表单视图

修改边栏的链接

\resources\views\shared\siderbar.blade.php

  1.  
    <div class="col-md-3">
  2.  
    <div class="list-group">
  3.  
    <a href="{{ url('/') }}" class="list-group-item active">学生列表</a>
  4.  
    <a href="{{ url('student/create') }}" class="list-group-item">新增学生</a>
  5.  
    </div>
  6.  
    </div>
  7.  
     

\resources\views\shared\message.blade.php

  1.  
    <divclass="alert alert-danger">
  2.  
    <ul>
  3.  
    <li>姓名不能为空</li>
  4.  
    <li>年龄只能为整数</li>
  5.  
    <li>请选择性别</li>
  6.  
    </ul>
  7.  
    </div>

\resources\views\student\create.blade.php

  1.  
    @extends('layout/student')
  2.  
     
  3.  
    @section('content')
  4.  
    <!-- 所有的错误提示 -->
  5.  
    @include('shared/message')
  6.  
    <!-- 自定义内容区域 -->
  7.  
    <divclass="panel panel-default">
  8.  
    <divclass="panel-heading">新增学生</div>
  9.  
    <divclass="panel-body">
  10.  
    <formclass="form-horizontal">
  11.  
    <divclass="form-group">
  12.  
    <labelfor="name"class="col-sm-2 control-label">姓名</label>
  13.  
     
  14.  
    <divclass="col-sm-5">
  15.  
    <inputtype="text"class="form-control"id="name"placeholder="请输入学生姓名">
  16.  
    </div>
  17.  
    <divclass="col-sm-5">
  18.  
    <pclass="form-control-static text-danger">姓名不能为空</p>
  19.  
    </div>
  20.  
    </div>
  21.  
    <divclass="form-group">
  22.  
    <labelfor="age"class="col-sm-2 control-label">年龄</label>
  23.  
     
  24.  
    <divclass="col-sm-5">
  25.  
    <inputtype="text"class="form-control"id="age"placeholder="请输入学生年龄">
  26.  
    </div>
  27.  
    <divclass="col-sm-5">
  28.  
    <pclass="form-control-static text-danger">年龄只能为整数</p>
  29.  
    </div>
  30.  
    </div>
  31.  
    <divclass="form-group">
  32.  
    <labelclass="col-sm-2 control-label">性别</label>
  33.  
     
  34.  
    <divclass="col-sm-5">
  35.  
    <labelclass="radio-inline">
  36.  
    <inputtype="radio"name="sex"value="option1"> 未知
  37.  
    </label>
  38.  
    <labelclass="radio-inline">
  39.  
    <inputtype="radio"name="sex"value="option2"> 男
  40.  
    </label>
  41.  
    <labelclass="radio-inline">
  42.  
    <inputtype="radio"name="sex"value="option3"> 女
  43.  
    </label>
  44.  
    </div>
  45.  
    <divclass="col-sm-5">
  46.  
    <pclass="form-control-static text-danger">请选择性别</p>
  47.  
    </div>
  48.  
    </div>
  49.  
    <divclass="form-group">
  50.  
    <divclass="col-sm-offset-2 col-sm-10">
  51.  
    <buttontype="submit"class="btn btn-primary">提交</button>
  52.  
    </div>
  53.  
    </div>
  54.  
    </form>
  55.  
    </div>
  56.  
    </div>
  57.  
    @endsection

\app\Http\Controllers\StudentController.php

  1.  
    /**
  2.  
    * 新增表单页面,表单提交到当前页
  3.  
    *
  4.  
    * @param
  5.  
    * @return void
  6.  
    * @author webjust [604854119@qq.com]
  7.  
    */
  8.  
    public functioncreate()
  9.  
    {
  10.  
    return view('student/create');
  11.  
    }

\app\Http\routes.php

  1.  
    Route::get('/', ['uses' => 'StudentController@index']);
  2.  
     
  3.  
    // 新增表单路由
  4.  
    Route::any('student/create', ['uses' => 'StudentController@create']);

添加hover效果。\resources\views\shared\siderbar.blade.php

  1.  
    <div class="col-md-3">
  2.  
    <div class="list-group">
  3.  
    <a href="{{ url('/') }}"
  4.  
    class="list-group-item {{ Request::path() == '/' ? 'active' : '' }}">学生列表</a>
  5.  
    <a href="{{ url('student/create') }}"
  6.  
    class="list-group-item {{ Request::path() == 'student/create' ? 'active' : '' }}">新增学生</a>
  7.  
    </div>
  8.  
    </div>
  9.  
     

这里使用了 Request::path() 方法,更多Request facade 方法可以查看手册:https://cs.laravel-china.org/#requests

4.2 通过模型实现新增

给form表单添加action:

<form class="form-horizontal" method="post" action="{{ url('student/create') }}">

\app\Http\Controllers\StudentController.php

  1.  
    public functioncreate(Request $request)
  2.  
    {
  3.  
    // 判断是POST请求,也就是提交表单时走这个区间
  4.  
    if($request->isMethod('POST'))
  5.  
    {
  6.  
    echo "post";
  7.  
    }
  8.  
     
  9.  
    return view('student/create');
  10.  
    }

此时会报 TokenMismatchException in VerifyCsrfToken.php line 67: 的错误。

Laravel 提供简单的方法保护你的应用程序不受到 跨网站请求伪造 攻击。跨网站请求伪造是一种恶意的攻击,破坏份子伪造 已通过身份检验的用户身份 来运行未经授权的命令。

Laravel 会自动生成一个 CSRF token 给每个用户的 Session。该 token 用来验证用户是否为实际发出请求的用户。可以使用 csrf_field 辅助函数来生成一个包含 CSRF token 的 _token 隐藏表单字段。

更多查看:http://d.laravel-china.org/docs/5.2/routing#csrf-protection

在Blade模板引擎中使用:

{{ csrf_field() }}

修改 input 字段的属性:name="Student[name]" 这样可以获得一个数组下标以模型名命名的数组。

\resources\views\student\create.blade.php

  1.  
    <form class="form-horizontal" method="post" action="{{ url('student/create') }}">
  2.  
    {{ csrf_field() }}
  3.  
    <div class="form-group">
  4.  
    <label for="name" class="col-sm-2 control-label">姓名</label>
  5.  
     
  6.  
    <div class="col-sm-5">
  7.  
    <input type="text" name="Student[name]" class="form-control" id="name" placeholder="请输入学生姓名">
  8.  
    </div>
  9.  
    <div class="col-sm-5">
  10.  
    <p class="form-control-static text-danger">姓名不能为空</p>
  11.  
    </div>
  12.  
    </div>
  13.  
    <div class="form-group">
  14.  
    <label for="age" class="col-sm-2 control-label">年龄</label>
  15.  
     
  16.  
    <div class="col-sm-5">
  17.  
    <input type="text" name="Student[age]" class="form-control" id="age" placeholder="请输入学生年龄">
  18.  
    </div>
  19.  
    <div class="col-sm-5">
  20.  
    <p class="form-control-static text-danger">年龄只能为整数</p>
  21.  
    </div>
  22.  
    </div>
  23.  
    <div class="form-group">
  24.  
    <label class="col-sm-2 control-label">性别</label>
  25.  
     
  26.  
    <div class="col-sm-5">
  27.  
    <label class="radio-inline">
  28.  
    <input type="radio" name="Student[sex]" value="2"> 未知
  29.  
    </label>
  30.  
    <label class="radio-inline">
  31.  
    <input type="radio" name="Student[sex]" value="1"> 男
  32.  
    </label>
  33.  
    <label class="radio-inline">
  34.  
    <input type="radio" name="Student[sex]" value="0"> 女
  35.  
    </label>
  36.  
    </div>
  37.  
    <div class="col-sm-5">
  38.  
    <p class="form-control-static text-danger">请选择性别</p>
  39.  
    </div>
  40.  
    </div>
  41.  
    <div class="form-group">
  42.  
    <div class="col-sm-offset-2 col-sm-10">
  43.  
    <button type="submit" class="btn btn-primary">提交</button>
  44.  
    </div>
  45.  
    </div>
  46.  
    </form>

修改:\app\Http\Controllers\StudentController.php

  1.  
    public functioncreate(Request $request)
  2.  
    {
  3.  
    // 判断是POST请求,也就是提交表单时走这个区间
  4.  
    if($request->isMethod('POST'))
  5.  
    {
  6.  
    $data = $request->input('Student');
  7.  
    var_dump($data);
  8.  
    }
  9.  
     
  10.  
    return view('student/create');
  11.  
    }

访问:http://example.com/student/create 提交表单,效果:

实现模型的添加操作:

  1.  
    // 判断是POST请求,也就是提交表单时走这个区间
  2.  
    if($request->isMethod('POST'))
  3.  
    {
  4.  
    $data = $request->input('Student');
  5.  
    // var_dump($data);
  6.  
    $data['created_time'] = time();
  7.  
    $data['updated_time'] = time();
  8.  
     
  9.  
    // 模型的添加方法
  10.  
    $ret = Student::insert($data);
  11.  
    var_dump($ret);
  12.  
    }

添加数据测试,查询数据库,可以看到新增加了1条记录哦!(^__^) 嘻嘻……

使用重定向方法:redirect()

  1.  
    public functioncreate(Request $request)
  2.  
    {
  3.  
    // 判断是POST请求,也就是提交表单时走这个区间
  4.  
    if($request->isMethod('POST'))
  5.  
    {
  6.  
    $data = $request->input('Student');
  7.  
    // var_dump($data);
  8.  
    $data['created_time'] = time();
  9.  
    $data['updated_time'] = time();
  10.  
     
  11.  
    // 模型的添加方法
  12.  
    $ret = Student::insert($data);
  13.  
    if($ret)
  14.  
    {
  15.  
    return redirect('/');
  16.  
    } else{
  17.  
    return redirect('student/create');
  18.  
    }
  19.  
    }
  20.  
     
  21.  
    return view('student/create');
  22.  
    }

4.3 操作状态提示

重定向并加上 Session 闪存数据

通常重定向至新的 URL 时会一并 写入闪存数据至 session。所以为了方便,你可以利用链式调用的方式创建一个 RedirectResponse 的实例 并 闪存数据至 Session。这对于在一个动作之后保存状态消息相当方便:

return redirect('/')->with('success', '操作成功!');

当然,在用户重定向至新的页面后,你可以获取并显示 session 的闪存数据。举个例子,使用 Blade 的语法:

  1.  
    @if (session('success'))
  2.  
    <div class="alertalert-success">
  3.  
    {{ session('success') }}
  4.  
    </div>
  5.  
    @endif

修改如下:

  1.  
    // 模型的添加方法
  2.  
    $ret = Student::insert($data);
  3.  
    if($ret)
  4.  
    {
  5.  
    return redirect('/')->with('success', '添加成功!');
  6.  
    } else{
  7.  
    return redirect('student/create')->with('error', '添加失败!');
  8.  
    }

\resources\views\shared\success.blade.php

  1.  
    @if(Session::has('success'))
  2.  
    <!-- 成功提示框 -->
  3.  
    <divclass="alert alert-success alert-dismissible"role="alert">
  4.  
    <buttontype="button"class="close"data-dismiss="alert"aria-label="Close">
  5.  
    <spanaria-hidden="true">&times;</span>
  6.  
    </button>
  7.  
    <strong>成功!</strong> {{Session::get('success')}}
  8.  
    </div>
  9.  
    @endif
  10.  
     
  11.  
    @if(Session::has('error'))
  12.  
    <!-- 失败提示框 -->
  13.  
    <divclass="alert alert-danger alert-dismissible"role="alert">
  14.  
    <buttontype="button"class="close"data-dismiss="alert"aria-label="Close">
  15.  
    <spanaria-hidden="true">&times;</span>
  16.  
    </button>
  17.  
    <strong>失败!</strong> {{Session::get('error')}}
  18.  
    </div>
  19.  
    @endif
  20.  
     

同理,我们也可以使用 Session类的方法。如:

  1.  
    @if(Session::has('success'))
  2.  
    {{Session::get('success')}}

为了显示最新添加的数据,我们采用倒序的排列方式:

  1.  
    public functionindex()
  2.  
    {
  3.  
    // 对 Eloquent 模型进行分页
  4.  
    $students = Student::orderby('id', 'desc')->paginate(5);
  5.  
     
  6.  
    // 渲染 student/index 视图,并传递查询出来的全部数据
  7.  
    return view('student/index', ['students' => $students]);
  8.  
    }

最终效果如下:

Laravel小项目之第4节 Laravel-通过表单实现新增及操作状态提示功能的更多相关文章

  1. 用laravel Maatwebsite\Excel 教你导出漂亮的Excel表单

    先来看效果图 还算是漂亮吧 哈哈哈. 第一步当然是安装包咯 环境要求 PHP: ^7.0Laravel: ^5.5 composer require maatwebsite/excel 目前3.1 只 ...

  2. Laravel 5 基础(十一)- 子视图和表单复用

    我们需要处理编辑文章的问题.当然我们可以手工添加新的路由,就像这样: Route::get('/articles/{id}/edit', 'ArticleController@edit'); 让我们在 ...

  3. 第六十七节,html表单元素

    html表单元素 学习要点: 1.表单元素总汇 2.表单元素解析 本章主要探讨HTML5中表单元素,表单元素用于获取用户的输入数据.   一.表单元素总汇 HTML5的表单中,提供了各种可供用户输入的 ...

  4. 第二百三十四节,Bootstrap表单和图片

    Bootstrap表单和图片 学习要点: 1.表单 2.图片 本节课我们主要学习一下 Bootstrap 表单和图片功能,通过内置的 CSS 定义,显示各 种丰富的效果. 一.表单 Bootstrap ...

  5. 项目回顾1-图片上传-form表单还是base64-前端图片压缩

    第一个项目终于上线了,是一个叫亲青筹的公益众筹平台,微信端,电脑端还有后台界面大部分都是我完成的,几个月过来,感觉收获了很多,觉得要总结一下. 首先想到的是图片上传的问题.在通常表单数据都是ajax上 ...

  6. react 项目实战(四)组件化表单/表单控件 高阶组件

    高阶组件:formProvider 高阶组件就是返回组件的组件(函数) 为什么要通过一个组件去返回另一个组件? 使用高阶组件可以在不修改原组件代码的情况下,修改原组件的行为或增强功能. 我们现在已经有 ...

  7. 第四节:Vue表单标签和组件的基本用法,父子组件间的通信

    vue表单标签和组件的基本用法,父子组件间的通信,直接看例子吧. <!DOCTYPE html> <html> <head> <meta charset=&q ...

  8. PHP.TP框架下商品项目的优化4-优化商品添加表单js

    优化商品添加表单js 思路 1.制作五个按钮 2.下面五个table 3.全部隐藏,点击则显示 4.点击第几个按钮就显示第几个table 具体操作 1.添加按钮 2.添加五个table并添加class ...

  9. Laravel POST请求API接口 使用validate表单验证返回欢迎页

    突然遇到的问题  就是使用Laravel进行开发API接口的时候  发现在表单验证不通过的时候返回了登录页 猜测问题应该是因为表单验证失败后进行了重定向导致的 因为返回状态码200 网上找了好久没找到 ...

随机推荐

  1. SpringMVC Hello World

    前言 新年伊始,元宵佳节,窗外灯火通明,炮声连连.北漂以来第一次一个人在北京过十五. 切入正题,收假后一边要赶项目进度还要学习java,so在元宵佳节之际写了第一篇SpringMVC Hello Wo ...

  2. js------数组随机排序和去重

    let arr = ['g', 'b', 'c', 'd', 'e', 'a', 'g', 'b', 'c']; // 数组随机排序(原数组被修改)Array.prototype.randomSort ...

  3. 一张 JVM 相关的思维脑图(4.4M)

    楼主学习 JVM 总结的知识点,用思维脑图串起来,温故而知新,其中含有类加载器,内存布局,GC(右侧). 最多的就是 GC 的内容了. 内容有错误之处,还请指正. 大图地址

  4. (转)Visual Studio 2013新功能预览:增代码的透明度和可追溯性

    微软打破了Visual Studio两年升级一次的传统,Visual Studio 2012发布还不足一年,微软就计划发布了Visual Studio 2013了.在今天的TechEd大会上,微软宣布 ...

  5. 排版-标题及table

    排版-标题 在标题中还可以包含small标签,可以用来标记副标题 副标题灰色,比主标题小    <h1>我是标题 <small>我是小标题</small></ ...

  6. SqlServer 查看死锁的进程

    版权声明:本文为 走错路的程序员 原创文章,欢迎转载. https://blog.csdn.net/phker/article/details/78612974搞sqlsever 好多年, 从来没锁过 ...

  7. TCP/IP 详解

    分层 每一层负责不同的功能:     链路层 有时也称作数据链路层或网络接口层, 通常包括操作系统中的设备驱动程序和计算机 中对应的网络接口卡.它们一起处理与电缆(或其他任何传输媒介)的物理接口细节. ...

  8. hadoop 集群中数据块的副本存放策略

    HDFS采用一种称为机架感知(rack-aware)的策略来改进数据的可靠性.可用性和网络带宽的利用率.目前实现的副本存放策略只是在这个方向上的第一步.实现这个策略的短期目标是验证它在生产环境下的有效 ...

  9. Matlab illustrate stiffness

    % matlab script to illustrate stiffness % using simple flame propagation model close all clear all % ...

  10. mysql之数据备份与还原

    mysql数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如Windows. #2. 逻辑备份: 备份的是建表.建库.插入等操作所执行SQL语句,适用于中 ...