摘要:简单修改、增加部分页面,了解django开发的过程。(Python3.9.12,django4.0.4)接前篇,通过命令: django-adminstartprojectmyWebSite 创立了新的站点,cdmyWebSite进入到站点根目录,并用命令pythonmanage.pyrunserver8080(或其他端口号) 就可使项目运行,然而这只是一个空壳,无任何作用,下面通过一个小应用对开发过程进行介绍。退出运行状态:当项目运行时,按下键盘上的ctrl和Break键,退出到根目录下。 一、创建一个显示当前日期和时间的网页1、Django项目由一系列应用程序组成,比如,一个站点分别
摘要:简单修改、增加部分页面,了解django开发的过程。(Python3.9.12,django4.0.4)接前篇,通过命令: django-adminstartprojectmyWebSite 创立了新的站点,cdmyWebSite进入到站点根目录,并用命令pythonmanage.pyrunserver8080(或其他端口号) 就可使项目运行,然而这只是一个空壳,无任何作用,下面通过一个小应用对开发过程进行介绍。退出运行状态:当项目运行时,按下键盘上的ctrl和Break键,退出到根目录下。 一、创建一个显示当前日期和时间的网页1、Django项目由一系列应用程序组成,比如,一个站点分别
一、防火墙配置前言:计算机的防火墙配置保证了别的主机无法访问本机非开放端口1、防火墙介绍Linux默认防火墙是开启的,而且所以的端口对外都是不可访问的,该策略保证了计算机的安全但同时也带来了问题如:其他计算机无法访问本机上项目开启的端口号在Linux上安装Tomcat,Tomcat软件需要使用8080端口。但是由于端口对外都是不可访问的,所以Windows没法访问Linux的Tomcat不过问题也有如下两种解决方案直接关闭防火墙,释放所有的端口,允许外界去访问全部的端口,方便省心,弊端不安全(开发阶段)只开放8080端口。开放指定的端口(生产阶段,项目上线)防火墙类似于一个关卡检查人员,当你访
一、防火墙配置前言:计算机的防火墙配置保证了别的主机无法访问本机非开放端口1、防火墙介绍Linux默认防火墙是开启的,而且所以的端口对外都是不可访问的,该策略保证了计算机的安全但同时也带来了问题如:其他计算机无法访问本机上项目开启的端口号在Linux上安装Tomcat,Tomcat软件需要使用8080端口。但是由于端口对外都是不可访问的,所以Windows没法访问Linux的Tomcat不过问题也有如下两种解决方案直接关闭防火墙,释放所有的端口,允许外界去访问全部的端口,方便省心,弊端不安全(开发阶段)只开放8080端口。开放指定的端口(生产阶段,项目上线)防火墙类似于一个关卡检查人员,当你访
MyBatis的关联映射023.一对多3.1基本介绍mybatis–MyBatis3|XML映射器多对一关系也是一个基本的映射关系,多对一,也可以理解为一对多。例如:User--Pet:一个用户可以有多只宠物Dep--Emp:一个部门有多个员工双向的多对一关系:通过User可以查询到对应的所有Pet,反之,通过Pet也可以级联查询到对应的User信息。多对多的关系就是在多对一的关系上拓展3.2案例实现映射方式:方式1:通过配置映射文件实现多对一方式2:通过注解的方式实现多对一需求说明:实现级联查询,通过user的user_id可以查询到User信息和关联的所有pet信息,反之,通过pet的pe
MyBatis的关联映射023.一对多3.1基本介绍mybatis–MyBatis3|XML映射器多对一关系也是一个基本的映射关系,多对一,也可以理解为一对多。例如:User--Pet:一个用户可以有多只宠物Dep--Emp:一个部门有多个员工双向的多对一关系:通过User可以查询到对应的所有Pet,反之,通过Pet也可以级联查询到对应的User信息。多对多的关系就是在多对一的关系上拓展3.2案例实现映射方式:方式1:通过配置映射文件实现多对一方式2:通过注解的方式实现多对一需求说明:实现级联查询,通过user的user_id可以查询到User信息和关联的所有pet信息,反之,通过pet的pe
24、两两交换链表中的节点·模拟节点交换题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/思路:循环中两两交换 手写模拟一下交换的过程就比较容易了 下图是我写的模拟过程: 代码实现:中规中矩地模拟就完事 时间复杂度O(n) 空间复杂度O(1)/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nu
24、两两交换链表中的节点·模拟节点交换题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/思路:循环中两两交换 手写模拟一下交换的过程就比较容易了 下图是我写的模拟过程: 代码实现:中规中矩地模拟就完事 时间复杂度O(n) 空间复杂度O(1)/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nu
?系列导航BlazorServer从头开始:01创建项目?阅读说明此部分内容旨在说明各种Blazor的基本概念与使用方法,并没有提供实际的教程式代码,所以读者没必要把代码敲一遍。没得意义。?Razor组件 Razor组件是Blazor应用的基本单元,每一个页面或页面上的元素都可以是一个组件,或者说,可以将组件看成是一个页面或引用到一个页面的一部分。Razor组件分成三个部分组成,1)声明:@page "路由名称",用于表示当前页面的路由;@layout模板名称,表示当前组件使用哪个布局模板;@inheritsLayoutComponentBase,表示当前组件是一个布局组件等。2)页面:使用H
?系列导航BlazorServer从头开始:01创建项目?阅读说明此部分内容旨在说明各种Blazor的基本概念与使用方法,并没有提供实际的教程式代码,所以读者没必要把代码敲一遍。没得意义。?Razor组件 Razor组件是Blazor应用的基本单元,每一个页面或页面上的元素都可以是一个组件,或者说,可以将组件看成是一个页面或引用到一个页面的一部分。Razor组件分成三个部分组成,1)声明:@page "路由名称",用于表示当前页面的路由;@layout模板名称,表示当前组件使用哪个布局模板;@inheritsLayoutComponentBase,表示当前组件是一个布局组件等。2)页面:使用H