1.后台管理之电影预告管理

1.1 定义电影预告表单

在app的admin目录的forms.py文件中,定义电影预告表单

# 预告表单
class PreviewForm(FlaskForm):
title = StringField(
label="预告标题",
validators=[
DataRequired("请输入预告标题!")
],
description="预告标题",
render_kw={
"class": "form-control",
"placeholder": "请输入预告标题!",
}
) logo = FileField(
label="预告封面",
validators=[
DataRequired("请上传预告封面!")
],
description="预告封面",
)
submit = SubmitField(
"编辑",
render_kw={
"class": "btn btn-primary",
}
)

1.2 电影管理之所有电影预告列表

1.2.1 电影管理之电影预告列表视图函数

在admin目录下的views.py文件中定义电影预告列表视图函数

电影预告列表视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route('/preview/list/<int:page>', methods=["GET"])
@admin_login_req
@admin_auth
def preview_list(page=None):
if page is None:
page = 1
page_data = Preview.query.order_by(Preview.addtime.desc()).paginate(page=page, per_page=10) return render_template("admin/preview_list.html", page_data=page_data)

1.2.2 电影管理之电影预告列表前端页面

电影预告列表页面继承admin.html页面,还需要导入admin_page.html页面以实现分页效果

{% extends 'admin/admin.html' %}
{% import "ui/admin_page.html" as pg %} {% block content %}
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 预告管理</a></li>
<li class="active">预告列表</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header">
<h3 class="box-title">预告列表</h3>
<div class="box-tools">
<div class="input-group input-group-sm" style="width: 150px;">
<input type="text" name="table_search" class="form-control pull-right"
placeholder="请输入关键字..."> <div class="input-group-btn">
<button type="submit" class="btn btn-default"><i class="fa fa-search"></i>
</button>
</div>
</div>
</div>
</div>
<div class="box-body table-responsive no-padding">
{% for msg in get_flashed_messages(category_filter=["ok"]) %}
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h4><i class="icon fa fa-check"></i> 操作成功</h4>
{{ msg }}
</div>
{% endfor %} <table class="table table-hover">
<tbody>
<tr>
<th>编号</th>
<th>预告标题</th>
<th>预告封面</th>
<th>添加时间</th>
<th>操作事项</th>
</tr> {% for v in page_data.items %}
<tr>
<td>{{ v.id }}</td>
<td>{{ v.title }}</td>
<td>
<img data-src="{{ url_for("static",filename="uploads/"+v.logo) }}"
class="img-responsive center-block" alt="">
</td>
<td>{{ v.addtime }}</td>
<td>
<a href="{{ url_for('admin.preview_edit',id=v.id) }}"
class="label label-success">编辑</a>
&nbsp;
<a href="{{ url_for('admin.preview_del',id=v.id) }}" class="label label-danger">删除</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="box-footer clearfix">
{{ pg.page(page_data,"admin.preview_list") }}
</div>
</div>
</div>
</div>
</section>
{% endblock %} {% block js %}
<script>
$(document).ready(function () {
$("#g-4").addClass('active');
$("#g-4-2").addClass('active');
});
</script>
{% endblock %}

1.3 电影管理之添加电影预告

1.3.1 电影管理之添加电影预告视图函数

在admin目录下的views.py文件中定义添加电影预告视图函数

添加电影预告视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route('/preview/add/', methods=["GET", "POST"])
@admin_login_req
@admin_auth
def preview_add():
form = PreviewForm()
if form.validate_on_submit():
data = form.data
file_logo = secure_filename(form.logo.data.filename) if not os.path.exists(app.config["UP_DIR"]):
os.makedirs(app.config["UP_DIR"])
os.chmod(app.config["UP_DIR"])
logo = change_filename(file_logo)
form.logo.data.save(app.config["UP_DIR"] + logo)
preview = Preview(
title=data.get("title"),
logo=logo
)
db.session.add(preview)
db.session.commit()
flash("添加预告成功!", "ok")
return redirect(url_for("admin.preview_add"))
return render_template("admin/preview_add.html", form=form)

1.3.2 电影管理之添加电影预告前端页面

电影预告列表页面继承admin.html页面

{% extends 'admin/admin.html' %}

{% block content %}
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 预告管理</a></li>
<li class="active">添加预告</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">添加预告</h3>
</div>
<form role="form">
<div class="box-body"> {% for msg in get_flashed_messages(category_filter=["ok"]) %}
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×
</button>
<h4><i class="icon fa fa-check"></i> 操作成功</h4>
{{ msg }}
</div>
{% endfor %} <div class="form-group">
<label for="input_title">{{ form.title.label }}</label>
{{ form.title }}
{% for err in form.title.errors %}
<div class="col-md-12">
<font style="color:red">{{ err }}</font>
</div>
{% endfor %}
</div>
<div class="form-group">
<label for="input_logo">{{ form.logo.label }}</label>
{{ form.logo }}
{% for err in form.logo.errors %}
<div class="col-md-12">
<font style="color:red">{{ err }}</font>
</div>
{% endfor %}
<img data-src="holder.js/700x320" style="margin-top:5px;" class="img-responsive"
alt="">
</div>
</div>
<div class="box-footer">
{{ form.csrf_token }}
{{ form.submit }}
</div>
</form>
</div>
</div>
</div>
</section>
{% endblock %} {% block js %}
<script src="{{ url_for('static',filename='jwplayer/jwplayer.js') }}"></script>
<script type="text/javascript">
jwplayer.key = "P9VTqT/X6TSP4gi/hy1wy23BivBhjdzVjMeOaQ=="; </script>
<script type="text/javascript">
jwplayer("moviecontainer").setup({
flashplayer: "url_for('static',filename='jwplayer/jwplayer.flash.swf')",
playlist: [{
file: "url_for('static',filename='video/htpy.mp4')",
title: "环太平洋"
}],
modes: [{
type: "html5"
}, {
type: "flash",
src: "url_for('static',filename='jwplayer/jwplayer.flash.swf')"
}, {
type: "download"
}],
skin: {
name: "vapor"
},
"playlist.position": "left",
"playlist.size": 200,
height: 250,
width: 387,
});
</script>
<script>
$(document).ready(function () {
$('#input_release_time').datepicker({
autoclose: true,
format: 'yyyy-mm-dd',
language: 'zh-CN',
});
});
</script>
<script>
$(document).ready(function () {
$("#g-4").addClass('active');
$("#g-4-1").addClass('active');
});
</script>
{% endblock %}

1.4 电影管理之编辑电影预告

1.4.1 电影管理之编辑电影预告视图函数

在admin目录下的views.py文件中定义编辑电影预告视图函数

编辑电影预告视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route("/preview/edit/<int:id>/", methods=['GET', 'POST'])
@admin_login_req
@admin_auth
def preview_edit(id=None):
form = PreviewForm()
form.logo.validators = []
preview = Preview.query.get_or_404(int(id))
if request.method == "GET":
form.title.data = preview.title
if form.validate_on_submit():
data = form.data
if form.logo.data.filename != "":
file_logo = secure_filename(form.logo.data.filename)
preview.logo = change_filename(file_logo)
form.logo.data.save(app.config["UP_DIR"] + preview.logo)
preview.title = data.get("title")
db.session.add(preview)
db.session.commit()
flash("修改预告成功!", "ok")
return redirect(url_for("admin.preview_edit", id=id))
return render_template("admin/preview_edit.html", form=form, preview=preview)

1.4.2 电影管理之编辑电影预告前端页面

电影预告列表页面继承admin.html页面

{% extends "admin/admin.html" %}

{% block content %}
<!--内容-->
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 预告管理</a></li>
<li class="active">修改预告</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">修改预告</h3>
</div>
<form role="form" method="post" enctype="multipart/form-data">
<div class="box-body"> <!--消息闪现-->
{% for msg in get_flashed_messages(category_filter=["ok"]) %}
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×
</button>
<h4><i class="icon fa fa-check"></i> 操作成功</h4>
{{ msg }}
</div>
{% endfor %} <div class="form-group">
<label for="input_title">{{ form.title.label }}</label>
{{ form.title }}
<!--报错信息-->
{% for err in form.title.errors %}
<div class="col-md-12">
<font style="color:red">{{ err }}</font>
</div>
{% endfor %}
</div>
<div class="form-group">
<label for="input_logo">{{ form.logo.label }}</label>
{{ form.logo }}
<!--报错信息-->
{% for err in form.logo.errors %}
<div class="col-md-12">
<font style="color:red">{{ err }}</font>
</div>
{% endfor %}
<img src="{{ url_for('static',filename='uploads/'+preview.logo) }}"
style="margin-top:5px;" class="img-responsive"
alt="">
</div>
</div>
<div class="box-footer">
{{ form.submit }}
{{ form.csrf_token }}
</div>
</form>
</div>
</div>
</div>
</section>
<!--内容-->
{% endblock %} {% block js %}
<script>
$(document).ready(function () {
$("#g-4").addClass("active");
$("#g-4-1").addClass("active");
});
</script>
{% endblock %}

1.5 电影管理之删除电影预告

1.5.1 电影管理之删除电影视预告图函数

在admin目录下的views.py文件中定义删除电影预告视图函数

删除电影预告视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route("/preview/del/<int:id>/", methods=['GET', 'POST'])
@admin_login_req
@admin_auth
def preview_del(id=None):
preview = Preview.query.get_or_404(int(id))
db.session.delete(preview)
db.session.commit() flash("删除预告成功!", "ok")
return redirect(url_for("admin.preview_list", page=1))

1.后台管理之会员管理

2.1 会员管理之所有会员列表

2.1.1 会员管理之会员列表视图函数

在admin目录下的views.py文件中定义会员列表视图函数

会员列表视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route('/user/list/<int:page>/', methods=['GET'])
@admin_login_req
@admin_auth
def user_list(page=None):
if page is None:
page = 1
page_data = User.query.order_by(User.addtime.asc()).paginate(page=page, per_page=3)
return render_template("admin/user_list.html", page_data=page_data)

2.1.2 会员管理之会员列表前端页面

电影预告列表页面继承admin.html页面,还需要导入admin_page.html页面以实现分页效果

{% extends 'admin/admin.html' %}
{% import "ui/admin_page.html" as pg %} {% block content %}
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 会员管理</a></li>
<li class="active">会员列表</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header">
<h3 class="box-title">会员列表</h3>
<div class="box-tools">
<div class="input-group input-group-sm" style="width: 150px;">
<input type="text" name="table_search" class="form-control pull-right"
placeholder="请输入关键字..."> <div class="input-group-btn">
<button type="submit" class="btn btn-default"><i class="fa fa-search"></i>
</button>
</div>
</div>
</div>
</div>
<div class="box-body table-responsive no-padding"> <!--消息提示-->
{% for msg in get_flashed_messages(category_filter=["ok"]) %}
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h4><i class="icon fa fa-check"></i> 操作成功</h4>
{{ msg }}
</div>
{% endfor %} <table class="table table-hover">
<tbody>
<tr>
<th>编号</th>
<th>昵称</th>
<th>邮箱</th>
<th>手机</th>
<th>头像</th>
<th>注册时间</th>
<th>操作事项</th>
</tr>
{% for v in page_data.items %}
<tr>
<td>{{ v.id }}</td>
<td>{{ v.name }}</td>
<td>{{ v.email }}</td>
<td>{{ v.face }}</td>
<td>
<img src="{{ url_for('static',filename='uploads/users/%s'% v.face) }}"
style="width:50px;" class="img-responsive center-block" alt="">
</td>
<td>{{ v.addtime }}</td>
<td>
<a class="label label-success" href="{{ url_for('admin.user_view',id=v.id) }}">查看</a>
&nbsp;
<a class="label label-danger" href="{{ url_for('admin.user_del',id=v.id) }}">删除</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="box-footer clearfix">
{{ pg.page(page_data,'admin.user_list') }}
</div>
</div>
</div>
</div>
</section>
{% endblock %} {% block js %}
$(document).ready(function () {
$("#g-5").addClass('active');
$("#g-5-1").addClass('active');
});
{% endblock %}

2.2 会员管理之查看会员

2.2.1 会员管理之查看会员视图函数

在admin目录下的views.py文件中定义查看会员详细信息视图函数

查看会员详细信息视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route('/user/view/<int:id>/', methods=['GET'])
@admin_login_req
@admin_auth
def user_view(id=None):
user = User.query.get_or_404(int(id))
return render_template("admin/user_view.html", user=user)

2.2.2 会员管理之查看会员前端页面

电影预告列表页面继承admin.html页面

{% extends 'admin/admin.html' %}

{% block css %}
<style>
.table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
vertical-align: middle;
text-align: left;
} .td_bd {
font-weight: bold;
}
</style>
{% endblock %}
{% block content %}
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 会员管理</a></li>
<li class="active">查看会员</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header">
<h3 class="box-title">会员详情</h3>
</div>
<div class="box-body table-responsive no-padding">
<table class="table table-hover">
<tbody>
<tr>
<td class="td_bd">编号:</td>
<td>{{ user.id }}</td>
</tr>
<tr>
<td class="td_bd">昵称:</td>
<td>{{ user.name }}</td>
</tr>
<tr>
<td class="td_bd">邮箱:</td>
<td>{{ user.email }}</td>
</tr>
<tr>
<td class="td_bd">手机:</td>
<td>{{ user.phone }}</td>
</tr>
<tr>
<td class="td_bd">头像:</td>
<td>
<img src="{{ url_for('static',filename='uploads/users/' + user.face) }}"
style="width:100px;" class="img-responsive" alt="">
</td>
</tr>
<tr>
<td class="td_bd">注册时间:</td>
<td>
{{ user.addtime }}
</td>
</tr>
<tr>
<td class="td_bd">唯一标志符:</td>
<td>
{{ user.uuid }}
</td>
</tr>
<tr>
<td class="td_bd">个性简介:</td>
<td>
{{ user.info }}
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</section>
{% endblock %} {% block js %}
$(document).ready(function () {
$("#g-5").addClass('active');
$("#g-5-1").addClass('active');
});
{% endblock %}

2.3 会员管理之删除会员

2.3.1 会员管理之删除会员视图函数

在admin目录下的views.py文件中定义删除会员视图函数

删除会员视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route("/user/del/<int:id>/", methods=['GET'])
@admin_login_req
@admin_auth
def user_del(id=None):
user = User.query.get_or_404(int(id))
db.session.delete(user)
db.session.commit()
flash("删除会员成功", "ok")
return redirect(url_for('admin.user_list', page=1))

3.后台管理之电影评论管理

3.1 电影管理之所有电影评论列表

3.1.1 电影管理之电影评论列表视图函数

在admin目录下的views.py文件中定义电影评论列表视图函数

电影评论列表视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route('/comment/list/<int:page>/', methods=['GET'])
@admin_login_req
@admin_auth
def comment_list(page=None):
if page is None:
page = 1
page_data = Comment.query.join(Movie).join(User).filter(
Movie.id == Comment.movie_id,
User.id == Comment.user_id
).order_by(Comment.addtime).paginate(page=page, per_page=10) return render_template("admin/comment_list.html", page_data=page_data)

3.1.2 电影管理之电影评论列表前端页面

电影预告列表页面继承admin.html页面,还需要导入admin_page.html页面以实现分页效果

{% extends 'admin/admin.html' %}
{% import "ui/admin_page.html" as pg %} {% block content %}
<section class="content-header">
<h1>微电影管理系统</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> 评论管理</a></li>
<li class="active">评论列表</li>
</ol>
</section>
<section class="content" id="showcontent">
<div class="row">
<div class="col-md-12">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">评论列表</h3>
<div class="box-tools">
<div class="input-group input-group-sm" style="width: 150px;">
<input type="text" name="table_search" class="form-control pull-right"
placeholder="请输入关键字..."> <div class="input-group-btn">
<button type="submit" class="btn btn-default"><i class="fa fa-search"></i>
</button>
</div>
</div>
</div>
</div>
<div class="box-body box-comments"> <!--消息提示-->
{% for msg in get_flashed_messages(category_filter=["ok"]) %}
<div class="alert alert-success alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h4><i class="icon fa fa-check"></i> 操作成功</h4>
{{ msg }}
</div>
{% endfor %} {% for v in page_data.items %}
<div class="box-comment">
<img class="img-circle img-sm"
src="{{ url_for('static',filename='uploads/users/%s' % v.user.face) }}" alt="User Image">
<div class="comment-text">
<span class="username">
{{ v.user.name }}
<span class="text-muted pull-right">
<i class="fa fa-calendar" aria-hidden="true"></i>
&nbsp;
{{ v.addtime }}
</span>
</span>
关于电影<a>《{{ v.movie.title }}》</a>的评论:{{ v.content }}
<br><a href="{{ url_for('admin.comment_del',id=v.id) }}" class="label label-danger pull-right">删除</a>
</div>
</div>
{% endfor %}
</div>
<div class="box-footer clearfix">
{{ pg.page(page_data,"admin.comment_list") }}
</div>
</div>
</div>
</div>
</section>
{% endblock %} {% block js %}
$(document).ready(function () {
$("#g-6").addClass('active');
$("#g-6-1").addClass('active');
});
{% endblock %}

3.2 电影管理之删除电影评论

3.2.1 电影管理之删除电影评论视图函数

在admin目录下的views.py文件中定义删除电影评论视图函数

删除电影评论视图函数需要被登录控制装饰器和权限控制装饰器同时装饰

@admin.route("/comment/del/<int:id>/", methods=['GET'])
@admin_login_req
@admin_auth
def comment_del(id=None):
comment = Comment.query.get_or_404(int(id))
db.session.delete(comment)
db.session.commit()
flash("删除评论成功", "ok")
return redirect(url_for("admin.comment_list", page=1))

Flask开发微电影网站(八)的更多相关文章

  1. Flask开发微电影网站(一)

    1.用到的Flask知识 1.使用整形,浮点型,路径型,字符串型下正则表达式路由转化器 2.使用GET与POST请求,上传文件,cookie获取与响应,404处理 3.使用模板自动转义,定义过滤器,定 ...

  2. Flask开发微电影网站(三)

    页面完成后的最终布局 可以看到,页面共同的部分是顶部导航和底部导航 所以我们可以把页面顶部导航和底部导航部分单独定义一个文件home.html,然后让需要使用顶部导航和底部导航的页面都继承home.h ...

  3. Flask开发微电影网站(五)

    后台管理页面是系统管理员登录后对网站进行管理的前端页面 后台登录页面,如下图所示 管理员登录后的页面,如下图所示 管理员登录后,在右上角显示的管理员信息,如下图所示 管理员登录后,在页面中间部分的左侧 ...

  4. Flask开发微电影网站(七)

    1.后台管理之电影管理 1.1 定义电影表单 在app的admin目录的forms.py文件中,定义电影表单 # 电影表单 class MovieForm(FlaskForm): title = St ...

  5. Flask开发微电影网站(六)

    1. 后台管理登录功能实现 1.1 后台管理页面登录表单LoginForm 在app的admin目录下创建forms.py文件,用来保存admin蓝图中需要使用到的表单 from flask_wtf ...

  6. Flask开发微电影网站(二)

    1.安装数据库连接依赖包 pip install flask-sqlalchemy 2.创建movie数据库 在CentOS虚拟机,进入MaridDB数据库提示符,创建movie数据库 create ...

  7. Flask开发微电影网站(十)

    1.后台管理之角色管理 1.1 角色管理之定义角色表单 在app的admin目录的forms.py文件中,定义角色表单 # 角色表单 class RoleForm(FlaskForm): name = ...

  8. Flask开发微电影网站(九)

    1.后台管理之电影管理 1.1 电影管理之所有电影收藏列表 1.1.1 电影管理之电影收藏列表视图函数 在admin目录下的views.py文件中定义电影收藏列表视图函数 电影收藏列表视图函数需要被登 ...

  9. Flask开发微电影网站(四)

    会员中心页面,如下图所示 用户登录后,修改密码页面,如下图所示 用户查看自己的评论页面,如下图所示 用户查看自己的登录日志页面,如下图所示 用户查看自己收藏的电影的页面,如下图所示 1. 定义用户主页 ...

随机推荐

  1. 【学习总结】Git学习-GIT工作流-千峰教育(来自B站)

    Git工作流指南 - av32575602 文档资料 目录: 1-什么是版本控制系统 2-工作流简介 3-集中式工作流 4-功能分支工作流 5-GitFlow工作流 小记: 初看差点放弃了,不过后面还 ...

  2. CodeForces 1151C Problem for Nazar

    题目链接:http://codeforces.com/problemset/problem/1151/C 题目大意: 有一个只存奇数的集合A = {1, 3, 5……2*n - 1,……},和只存偶数 ...

  3. 使用Spring表达式语言进行装备--SpEL

    本文主要想记录最近的两个使用spring框架实现通过配置文件装备Bean,以及使用SpEL装备Bean. 1.使用配置文件装备Bean: 当我们写某些Bean的时候是希望这个Bean当中的属性是可以通 ...

  4. 【BZOJ5502】[GXOI/GZOI2019]与或和(单调栈)

    [BZOJ5502][GXOI/GZOI2019]与或和(单调栈) 题面 BZOJ 洛谷 题解 看到位运算就直接拆位,于是问题变成了求有多少个全\(0\)子矩阵和有多少个全\(1\)子矩阵. 这两个操 ...

  5. CRLF在过滤XSS语句后打Cookie方式

    看了很长时间的漏洞奖励计划,学到了不少骚姿势,我觉得这个姿势很不错,总结下写篇文章发出来.针对CRLF漏洞打cookie的方法. 这里不讲概念挖掘方式了,以实战为主: 阅读文章前先参考文章:http: ...

  6. 20175221 《Java程序设计》第5周学习总结

    20175221   <Java程序设计>第5周学习总结 教材学习内容总结 接口的定义 接口声明:interface 接口名 接口体中只可以有常量,而没有变量 接口体中只有抽象方法(可省略 ...

  7. python的内置模块xml模块方法 xml解析 详解以及使用

    一.XML介绍 xml是实现不同语言或程序直接进行数据交换的协议,跟json差不多,单json使用起来更简单,不过现在还有很多传统公司的接口主要还是xml xml跟html都属于是标签语言 我们主要学 ...

  8. 数据库学习之MySQL基础

    数据库基础 一.数据库简介 数据库:存放数据的仓库 sql及其规范 sql是Structured Query Language(结构化查询语言)的缩写.SQL是专为数据库而建立的操作命令集,是一种功能 ...

  9. C++回顾day03---<纯虚函数和抽象类以及虚析构函数,delete使用>

    一:纯虚函数和抽象类 纯虚函数是一个在基类中说明的虚函数,在基类中没有定义,要求任何派生类都定义自己的版本 纯虚函数为各个派生类提供一个公共接口 纯虚函数的形式: virtual 类型 函数名(参数列 ...

  10. [再寄小读者之数学篇](2015-06-24 Series)

    (AMM. Problems and Solutions. 2015. 03) Let $\sed{a_n}$ be a monotone decreasing sequence of real nu ...