Vue学习-5
v-on指令事件绑定绑定事件监听器。事件类型由参数指定。表达式可以是一个方法的名字或一个内联语句,如果没有修饰符也可以省略。
v-on指令用法<input type = 'button' v-on:click='num++'/>
v-on指令简写<input type = 'button' @click='num++'/>
事件函数的调用方式
直接绑定函数名称<button v-on:click='say'>Hello</button>
调用函数<button v-on:click='say()'>Say hi</button>
事件函数参数传递
不带参数默认会传递事件对象作为事件函数的第一个参数<button v-on:click='say'>Say hi</button>
普通参数和事件对象<button v-on:click='say(" ...
Vue学习-4
双向数据绑定
从页面到数据(页面的值发生改变代码中与之绑定的数据也发生改变)
从数据到页面(代码数据的值发生改变页面与之绑定的值也发生改变)
v-model指令前面的v-text,v-html指令都是单向的数据绑定,即从数据到页面。通过v-model指令来实现双向数据绑定。
当输入框改变输入框中的值的时候,发生从页面到数据,改变了msg的值,然后从数据到页面通过插值表达式将msg的值响应给页面,发生了从数据到页面。
MVVM设计思想
M(model)
V(view)
VM(View-Model)
Vue学习-3
指令 什么是指令?
什么是自定义属性
指令的本质就是自定义属性
指令的格式:以v-开始(比如:v-cloak)
v-cloak指令
插值表达式存在的问题:“闪动”
如何解决该问题:使用v-cloak指令
解决该问题的原理:先隐藏,替换好值之后再显示最终的值
闪动问题:当网络出现延迟,会出现一些加载顺序延迟先加载html内容,若有插值表达式则会先显示{-{xxx}-},才会显示js的代码。
v-cloak指令的用法
提供样式
123[v-cloak]{ display: none; }
在插值表达式所在的标签中添加v-cloak指令
背后的原理:先通过样式隐藏内容,然后在内存中进行值的替换,替换好之后再显示最终的结果
数据绑定什么是数据绑定 ?
数据绑定:将数据填充到标签中
数据绑定指令
指令
作用
优劣
v-text
填充纯文本
相比插值表达式更加简洁,不存在闪动问题
v-html
填充HTML片段
存在安全问题。本网站内部数据可以使用,来自第三方的数 ...
Vue学习-2
Vue模板语法模板语法概述
Vue学习-1
Vue概述
Vue基本使用传统开发模式对比
Vue.js之HelloWorld基本步骤
Vue.js之HelloWorld细节分析
SpringBoot-Web开发-6
Thymeleaf 公共页面元素抽取list页面和主页面的侧边栏和顶部都相同,我们是不是应该将它抽取出来呢?
抽取公共片段 th:fragment 定义模板名
引入公共片段 th:insert 插入模板名
我们来抽取一下,使用list列表做演示!我们要抽取头部,nav标签
为了重用更清晰,我们建立一个commons文件夹,专门存放公共页面
除了使用insert插入,还可以使用replace替换,或者include包含,三种方式会有一些小区别,可以见名知义;
我们使用replace替换,可以解决div多余的问题,可以查看thymeleaf的文档学习
将主页面中和list页面中的侧边栏和顶部代码删除后,我们去页面中引入一下。
<div th:replace="~{commons/commons::topbar}"></div>
<div th:replace="~{commons/commons::sidebar}"></div>
解决我们侧边栏激活问 ...
SpringBoot-Web开发-5
登录templates下的页面只能通过Controller跳转实现,而static下的页面是能直接被外界访问的,就能正常访问了。
我们把登录页面的表单提交地址写一个controller!
我们再添加一个视图控制映射,在我们的自己的MyMvcConfig中
去编写对应的controller
页面存在缓存,所以我们需要禁用模板引擎的缓存
spring.thymeleaf.cache=false
模板引擎修改后,想要实时生效!页面修改完毕后,IDEA小技巧 : Ctrl + F9 重新编译!
登录失败的话,我们需要将后台信息输出到前台,可以在首页标题下面加上判断!
拦截器我们可以直接登录到后台主页,不用登录也可以实现!
怎么处理这个问题呢?我们可以使用拦截器机制,实现登录检查!
我们先自定义一个拦截器
登录页
然后将拦截器注册到我们的SpringMVC配置类当中!
我们然后在后台主页,获取用户登录的信息
数据库练习
单表查询
查询所有职员的所有信息select * from tbemp;
查询所有职员的姓名,电话,地址select ename,etel,eaddr from tbemp;
查询所有女职员的详细信息select * from tbemp where esex = '女';
查询年龄在24到26岁之间的职员的姓名,性别select ename,esex from tbemp where eage >=24 and eage <=26;select ename,esex from tbemp where eage between 24 and 26;
查询家住长沙的女职员的姓名,电话,地址select * from tbemp where eaddr like '%长沙%' and esex = '女';select * from tbemp where instr(eaddr,'长沙')>0 and esex = '女';
查询李云,孙一成,林笑的电话,地址select eaddr,ete ...
SpringBoot-Web开发-4
默认访问首页SpringBootWeb开发自动配置了,当浏览器地址输入‘/‘时自动去四个静态资源文件夹classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/.下自动映射到名为index.html的页面。由于引入了thymeleaf所以放在templates下的index.html在浏览器输入‘/’时也能访问。我们也可以自己扩展配置MVC映射路径。
修改项目启动名(项目路径)server.servlet.context-path=/kylin
现在你访问localhost:8080 就不行了,需要访问localhost:8080/king
为了保证资源导入稳定,我们建议在所有资源导入时候使用 th:去替换原有的资源路径!
页面国际化第一步 :编写国际化配置文件,抽取页面需要显示的国际化页面消息。我们可以去登录页面查看一下
先在IDEA中统一设置properties的编码问题!
我们在resources资源文件下新建一个i18n目录,建立一个login.p ...
SpringBoot-Web开发-3
SpringMVC自动配置
① 配置了视图解析器bean;② 静态资源访问支持,包括WebJars;③ 注册了转换器和格式化器;④ 请求响应信息转换器;⑤ 注册信息校验解析器–定义错误代码生成规则;⑥ 静态页面index.html支持(欢迎页);⑦ 项目浏览器图标支持;⑧ 可配置web数据绑定初始化器bean的自动使用
官方文档
修改SpringBoot的默认配置SpringBoot在自动配置很多组件的时候,先看容器中有没有用户自己配置的(如果用户自己配置@bean),如果有就用用户配置的,如果没有就用自动配置的;如果有些组件可以存在多个,比如我们的视图解析器,就将用户配置的和自己默认的组合起来!
扩展使用SpringMVC
If you want to keep Spring Boot MVC features and you want to add additional MVC configuration (interceptors, formatters, view controllers, and other features), you can add your own @C ...