自用学习总结第一篇

MYSQL

主键约束:primary key

主键自增:auto——increment

非空:not null

唯一:unique

默认:default

检查:check

外键:防止冗余的数据,通过外键来描述两张表的关系

#语法:foreign key(本表的主键名) references 对方表名(对方表的主键) FOREIGN KEY(user_id) REFERENCES tb_user(id) #创建外键

基础函数:

字母变大:upper        字母变大:lower        求长度:length       

截取:substr(截取字段、从那条截取、截取长度) 拼接:concat 替换:replace

将字段为空的替换:ifnull(字段名,替换内容) 四舍五入:round

分页:limit(2,3)从第三条截取,取3条数据

排序:order by 字段名 asc/desc 升序/降序默认不写为升序

聚合函数: 分组:group by

min最小、max最大、count条数、avg平均数、sum求和

事务的四大特性:

原子性:多条sql的关系是密不可分的,要么全成功,要么全失败

隔离性:数据库为了保证性能支持高并发,但是有安全隐患,保证多个操作之间是隔离的

持久性:对数据库操作是持久生效影响的

一致性:保证数据在多个系统中是一致的

隔离性有隔离级别:安全越来越好,性能越来越差——读未提交、读已提交、可重复度、串行化

索引:单值索引、唯一索引unique、复合索引

CREATE INDEX ename_index ON emp(ename)  创建单值索引

EXPLAIN SELECT * FROM emp WHERE job='总监'AND hiredate='2019-1-1'   使用索引,需要遵循最左原则。EXPLAIN用于查看是否使用索引

ALTER TABLE emp DROP INDEX 索引名    删除索引

视图:可以当成表来使用,但只能执行select操作

语法:create view 视图名 as 查询的SQL语句

使用视图:slect * from 视图名

多表联查:

        笛卡尔积:SELECT emp.* FROM dept,emp

                                WHERE dept.deptno=emp.deptno#描述了两张表的关系        

                                 AND dept.dname='java开发部' #业务条件

        连接查询:SELECT dept.* FROM dept JOIN emp

                                ON dept.deptno=emp.deptno#描述了两张表的关系

                                 WHERE emp.job='总监' #业务条件

        子查询:SELECT SUM(degree) FROM scores

                                WHERE sno=( SELECT sno FROM students WHERE sname='李军' )

sql总结:索引是否生效使用explain查看,索引遵循最左原则。

                分组前的过滤用where,不能用别名,聚合函数。

                当查询中出现聚合函数必须使用分组。

                子查询就是分开查询两张表

HTML

常用标签:

标题标签:<h1></h1>        列表标签:无序<ul><li></li></ul>     有序<ol><li></li></ol> 

图片:<img src="a.png"/>        超链接标签:<a href="网址"  target="_blank"></a>

   _blank新窗口打开     默认_self 当前窗口打开

输入框:<input type="" />

text:普通输入框        password:密码输入框        number:数字输入框        周输入框:week

data:年月日输入框        button:按钮        submit:提交按钮       radio:单选    多选:checkbox

<audio controls="controls">添加音频

        <source src="jay.mp3"></source>

</autio controls="controls">添加视频

<video controls="controls">

        <source src="b.mp4"></source>

</video>

表格:<table>

                 <tr>

                        <td></td>

                </tr>

         </table>

表单:在table标签外面加上form标签,在表格的基础上给表格的属性添加名字,需要提交submit

CSS

用来修饰HTML网页的

语法:选择器{属性名:属性值;属性名:属性值;样式3....}

<style>HTML提供的,写css代码的标签

        div{选中div

                text-align: center;   文字居中

}

</style>

基础选择器:直接用标签名{}

类(class)选择器:.名{}

id选择器:#名{}

分组选择器:把多种选择器用   ,   号隔开

属性选择器:按照标签的属性来选择元素,标签名[属性名] 

盒子模型:外边距margin    边框border    内边距padding     内容:width    heigh

在HTML网页中引入css代码,在<head>标签中

<link rel="stylesheet" href="1.css"/>通过这个标签实现了HTML和css的松耦合

JS

概述:javascript,java脚本语言用来增强网页的交互性,JS是基于对象和事件驱动的脚本语言。基于对象:js和java一样可以创建对象和使用对象 

事件驱动:js代码需要触发才会执行,常见事件:单击、双击、鼠标划入划出

脚本语言:js的运行必须在浏览器里

JS特点:直译式,弱类型语言。跨平台(指浏览器),一定的安全性

<head>

        <script>
            alert('您路过了div元素')
        </script>

</head>

<body>

        <!-- 单击div时弹出提示 --> <div οnclick="alert('您路过了div元素')">我是div</div>

</body>

JS运算符:需要注意==比较的是值,===比较的是类型和值。!=比较值,!==比较值与类型

JS的数据类型:number/string/boolean/null/undefined

JS中同样有分支结构switch()        if...else

JS数组

概述:和java数组一样,区别是JS数组可以存储不同类型的数据

JS函数

概述:类似于jaba里的方法,用来封装一段代码,为了提高代码的复用性

// 1,定义函数 var sout = function(){ console.log("调用成功"); } // 2,调用函数 sout();

JS对象

创建对象:    let   car = {name : "BMW",    //资源名 :资源的值

                                        price : 9.9,        //设置属性

                                        start : function(){    //设置函数

                                                console.log('调用成功!');        

                }}

DOM

概述:全程是文档对象模型,是JS提供的一种用来快速解析HTML网页的技术

不太理解有时间再搞吧

JSON---轻量简洁明了

概述:规定了浏览器和服务器交互数据的格式,本质上就是一个字符串

在<head>引入js代码

        <script src="1.js"></script>

</head>

Vue

概述:基于JavaScript的渐进式前端框架
           基于JavaScript : 本质上就是封装了js代码, 提供vue.js文件
           渐进式 : vue框架的功能很丰富的, 自己选择用哪些功能.
           前端框架 : 只是提供了一套完善的功能,指定软件的流程
特点:轻量级 + MVVM思想 + 数据驱动/双向绑定 + 组件化

同样实在<script src="vue.js位置"></script>

<body>
		<!-- 2.准备数据渲染区:是指在指定位置展示vue提供的数据
		 {{ }} 插值表达式,{{msg}}获取vue提供的msg的值
		 -->
		<div id="app"> {{msg}} </div>
		{{msg}} 
		<!-- 3.创建Vue对象,使用vue准备数据,让第二步获取数据 -->
		<script>
			new Vue({
				//el属性是:挂载点,即将把数据展示在指定位置(css选择器)
				el:"#app" , //id选择器,用#获取id的值
				//data属性是:用来准备数据
				data:{ //js对象
					msg:'hello vue~~~'
				}
			})
		</script>
	</body>

11Vue从这里学习

el:挂载点        data:给渲染去准备数据        methods:创建vue方法

Axios技术

概述:是Vue提供的Ajax技术,对比JS实现的Ajax不同,Vue提供了更加简单语法,封装了js代码Ajax技术是实现了网页的局部刷新,异步访问的功能,好处是避免了刷新整个页面,而只刷新局部

Vue路由

概述:接受浏览器的请求,根据不同的请求方式,找到匹配的组件

<router-view></router-view>通过此标签展示

Vue-cli脚手架--14

概述:是指vue的客户端,是使用vue项目的前提,只需要安装就可以使用。

ElementUI

概述:提供了一套漂亮的前端网页展示效果

el-form是表单用来提交数据,el-form-item是表单项,el-input是输入框,el-button是按钮
      :model是表单要获取的数据,label是表单项的名字,placeholder是提示,v-model是双向绑定
      按钮的type属性用来指定颜色,@click属性给按钮添加点击事件(在methods里提供函数)
 

maven--15

概述:是一个项目构建数据,用来管理项目中用到的jar包,包含下载、存放、编译jar包

仓库:远程仓库/镜像仓库/本地仓库

groupld是组id,通常他的值是公司的域名

artifactId是项目id,通常他的值是项目名称

version,版本号

注意:使用时需修改镜像仓库与本地仓库位置在settings.xml

配置maven:

SpringBoot重点初体验16

概述:是由Spring团队开发的,整合了Spring框架,SpringMVC框架的所有jar包

好处:

注解开发,简便

1、简化了Maven的操作,以前自己找jar包的坐标,现在直接创建springboot工程勾选你要的功能

2、SpringBoot项目可以快速启动/关闭,就像服务器(Tomcat)一样的操作,被整合了

3、简单快速整合其他技术

SpringMVC设计模式:M指Modes模型层用来封装数据,V指Viex视图层,用来展示数据,C指Controller控制层,接受浏览器发来的请求,并作出数据的响应

SpringMVC框架用来接收请求+做出响应

MVC工作原理:

涉及五个组件:

1.前端控制器DispatcherServlet:接受请求,并且调度

2.处理映射器HandlerAdapter:根据地址栏的写法,找到能处理这次请求的类和方法

3.处理适配器HandlerAdapter:真正开始找到方法,执行方法体处理业务,并返回结果

4.视图解析器ViewResolver:找到能够展示数据的页面

5.视图渲染View:把数据展示在页面上

浏览器发送数据给服务器有两种方式? get 和 post

RestFul数据解析--16

//get方式:http://localhost:8080/student/save?id=666&name=jack&age=2

//restful方式:http://localhost:8080/student/save2/666/jack/20

restful方式传输数据时需要使用@PathVariable

注意:restful解析参数时,标准是两步: {变量}+@PathVariable获取变量的值

但是,参数列表如果是一个java对象,就不许加@PathVariable否则500异常!!

Spring框架

 概述:Spring框架可以和其他技术无缝衔接

BeanFactory:

bean工厂,spring框架认为所有类都是bean,从bean工厂可以获取每个bean

IOC:控制反转,不需要程序员来创建对象了,交给Spring框架来管理对象(从初始化到销毁)。程序员可以直接从Spring框架中获取Bean的对象

常用的IOC注解:@Component@Service@Controller@Repository

DI:依赖注入,使用Spring框架明确两个对象间的依赖关系

通过@Autowired注解进行依赖注入,自动装配,自动布线

AOP:面向切面编程,是一种思想,解决了OOP(面向对象)的不足。

好处:把一些共性代码,提取形成切面,提供丰富的通知,聚焦了程序员的关注点,只关注业务本身

1, 切面Aspect: 就是一个类
2, 通知Advice: 类里的方法,分类:
前置通知, 是指调用业务方法前会被执行的功能(适用于权限管理,缓存管理)
后置通知, 是指调用业务方法后会被执行的功能(适用于释放资源)
环绕通知, 是指调用业务方法的前 后 会被执行的功能(适用于事务管理,性能分析)
返回后通知, 是指调用业务方法并返回了结果后 会被执行的功能
异常通知, 是指调用业务方法并抛出异常后 会被执行的功能
3,切点PointCut: 触发通知执行的那个方法的时间点

使用步骤:添加jar包spring-boot-starter-aop

 计时:long time=System.currentTimeMillis();记录当前时间
 

怎么使用bean第一种

创建Hello类,通过配置文件创建bean,最后通过进行使用

使用bean

1、读取配置文件       2、获取对象

 怎么使用bean第二种

使用IOC注解:功能是将类当成bean交给spring管理

1, 创建类, 并且一定要使用IOC注解(@Component @Controller @Service @Repository)
2, 配置包扫描, 需要指定包的路径, 包的扫描范围越小越好, 合理的定范围就可以
3, IOC本质就是, 把你创建的类,Spring框架创建对象,存入Map集合里.
key是类名(首字母小写) value是类的对象(框架利用反射来创建的对象)
Map -> { “hello” , Class.forName(“Hello类的全路径”).newInstance() }
 

Git--17

概述:一个储存下载的仓库

 声明:本文根据霞霞老师(cgblpx)所教内容进行总结,封面为lenovo滴图片

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值