JAVAWeb从入门到企业实战笔记

一、JAVAWeb介绍

  • Web:全球广域网,可通过浏览器访问的网站
  • JAVAWeb:用java技术开发网站
  • 数据库:存储和管理数据
    三者关系如下图所示:
    在这里插入图片描述

二、数据库

数据库相关概念

1、数据库(DB database)

  • 数据库是存放数据的仓库,简称DB(data base)
  • 数据在数据库中有组织地存储

2、数据库操作系统(DBMS database manager system)

  • 数据库操作系统是管理数据库的大型软件
  • MYSQL数据库:免费的数据库操作系统
  • Orcale数据库:昂贵的数据库操作系统

3、SQL(structed query langugae)

  • 结构化查询语言
  • 操作关系型数据库的编程语言
  • 定义操作所有关系型数据库的统一标准

MYSQL安装

MYSQL数据模型

SQL

1、SQL简介

2、SQL通用语法

3、SQL分类

4、DDL

5、DML

6、DQL

三、JDBC

JDBC学习笔记地址

四、Maven

1、Maven概述

Maven是专门用于管理和构建JAVA项目的工具

  • 提供了一套标准化的项目结构
  • 提供了一套标准化的项目构建流程(编译,测试,打包,发布)
  • 提供了一套依赖管理机制

2、Maven安装配置

安装步骤

  • 解压即安装完成
  • 配置环境变量Maven_Home为安装路径的bin目录
  • 本地仓库的配置,修改conf\settings.xml文件localRepository为指定目录
    在这里插入图片描述
  • 配置阿里云私服,修改conf\settings.xml文件标签,为其添加如下子标签:
	 <mirror>
      <id>alimaven</id>
      <mirrorOf>aliyun maven</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>

    </mirror>

3、IDEA配置Maven

步骤

  • settings->
  • Build,Execution,Deployment->
  • Maven->
  • Maven home path(改成自己Maven安装地址)->
  • user setting file(改成自己Maven目录中的settings.xml)

Maven坐标详解

  • 什么是坐标
    Maven的坐标是资源的唯一标识
    使用坐标来定义项目或引入项目中需要的依赖
  • Maven坐标主要组成
    groupId:定义当前Maven项目隶属组织名称(通常是域名反写)
    artifacId:定义当前Maven项目名称(通常是模块名称)
    version:定义当前项目版本号

IDEA创建Maven项目

  • 创建模块,选择Maven,点击next
  • 填写模块名称,坐标信息,点击finish
  • 编写Hello World并运行

IDEA导入Maven项目

  • 选择右侧maven面板,点击+号
  • 选中对应项目的pom.xml
  • 如果没有Maven面板,选择View->Appearance->Tools windows bar

配置Maven helper插件

  • settings
  • plugging
  • 搜索maven helper,安装
  • 重启

4、依赖管理

导入依赖步骤

  • 在pom.xml中编写dependencies标签
  • 在dependencies标签中用dependency标签引入坐标
  • 定义坐标的groupId,artifacId,version
  • 点击刷新

依赖范围

  • 通过设置坐标的依赖范围scope,可以设置对应jar包的作用范围:编译环境,测试环境,运行环境
  • scope默认范围是compile

五、Mybatis

1、mybatis简介

  • mybatis是一款持久层框架
  • 用于简化JDBC对数据库的操作

2、mybatis快速入门

  • 1、创建数据库
  • 2、创建模块,导入mybatis坐标
  • 3、编写mybatis核心配置文件–>替换连接信息,解决硬编码问题
  • 4、编写SQL映射文件–>统一管理sql语句,解决硬编码问题
  • 5、编码
    创建pojo类
    加载核心配置文件
    获取sqlSession对象,执行sql语句
    释放资源

3、使用Mapper代理开发

  • 1、定义与SQL映射文件同名的Mapper接口,将SQL映射文件和接口放到同一目录下
  • 2、把SQL映射中的namespace改为全限定名
  • 3、在Mapper接口中定义方法,方法名就是SQL映射文件中sql语句的id,并保持参数和返回类型一致
  • 4、编码:
    通过SqlSession中的getMapper方法获取Map接口的代理对象
    调用对应方法完成sql执行

六、Javascript

1、引入方式

  • 内部引入:
  <script>
            //alert是javascript提供的一个警告框函数
            //可以接受任意类型的参数,这个参数就是警告框的提示信息
            alert("hello world");
        </script>
  • 外部引入:编写js文件,用src地址引入
 <script src="1.js"></script>
  • script代码可以放在html文件中的任何位置,为了用户体验通常放在最后执行

2、基本语法&&输出语句

基本语法

  • 区分大小写
  • 语句结束时;可有可无
  • 当行注释//;多行注释/**/
  • 大括号中是代码块

输出语句

  • windows.alert()写入警告框
  • document.write()写入页面上
  • consle.log()写入控制台

变量&&数据类型

js是弱类型语言,可以用三种声明定义变量

var
  • 作用范围为全局
  • 可重复定义变量
let
  • 作用范围为局部
  • 不可重复定义
const
  • 定义常量
数据类型(原始类型和引用类型)
  • 数字类型
  • String
  • boolean
  • null
  • undifined

运算符

js大部分运算符和java一样,但多了一个===运算符

==&===
  • ==判断时如果不是同一类型,先转换为同一类型再对比值
  • ===先判断是否是同一类型,如果不是同一类型,直接输出false
其他类型转换为数字
  • String类型转换为数字时,如果字面是数字,则直接转换为数字;如果字面不是数字,则转换为NAN
  • boolean类型转换为数字时,true转换为1,false转换为0
其他类型转换为boolean类型
  • number:0和NAN转换为false,其余转化为true
  • String:空字符串转换成false,其余转换为true
  • undifined:转换为false
  • null:转换为false

流程控制语句和函数

js中流程控制语句和java一样,不赘述

函数

js中的函数不需要定义参数类型和返回值类型

  • 函数创建1 function functionName(a,b){}
  • 函数创建2 var functionName=function(a,b){}
  • js中的函数传参个数可以多于本身的个数

3、js对象

(1)数组

  • 数组定义:var ArrayName=new Array(1,2,3);var Array=[1,2,3]
  • js中的数组类似java集合,长度和类型都可以改变
  • 数组添加元素:arr.push()
  • 数组删除元素:arr.splice()

(2)String

  • 定义方法:var StringName=new String("abc");var StringName="abc"
  • trim():去除字符串前后空格
  • CharAt():获取对应位置字符
  • IndexOf():获取字符索引

(3)自定义对象

var Name={
	属性名称1:对应属性值
	属性名称2:对应属性值
	...
	函数名称:function("形参列表") {}
}

(4)BOM对象

Window
  • alert()
  • confirm():确认
  • setTimeout(function,毫秒值):在一定的时间间隔后执行一个function,只执行一次
  • setInterval(function,毫秒值):在一定的时间间隔后执行一个function,多次执行
  • 定时器案例
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<input type="button"   onclick="on()" value="小丑竟是我自己"></inputbutton>
<img id="myimage" border="0" src="1.PNG">
<input type="button"  onclick="off()" value="吃掉对象"></inputbutton>

</body>
</html>
<script>
    function on(){
        document.getElementById("myimage").src='2.PNG'
    }
    function off(){
        document.getElementById("myimage").src='1.PNG'
    }
    var num=0
    setInterval(function() {
        if(num%2==0){
            on()
        }
        else {
            off()
        }
        num++},1000
    )
</script>
History
  • back()加载History历史记录的前一个页面
  • forward()加载History历史记录的后一个页面
Location
  • href属性,网页地址
<script>
    document.write("3秒后跳转喽~")
    setTimeout(function (){
        location.href="https://www.baidu.com";
    },3000)
</script>

(5)DOM对象

  • 获取Element对象
  • 常见Html Element对象的使用(查阅文档)

(6)事件监听

事件绑定
  • 通过html中的事件标签属性进行绑定
<input type="button" onclick="onclick()">
function onclik(){
	alert("我被点了")
    }
  • 通过DOM元素属性进行绑定
<input type="button" id="btn">
 document.getElementById("btn").onclick=function (){
        alert("我被点了")
    }
常见事件
  • 查阅文档

4、正则表达式

  • 概念:正则表达式定义了字符串组成的规则
  • 定义
1、直接量,不要加引号
var reg=/^\w{6,12}$/
2、创建RegExp对象
var reg= new RegExp(/^\w{6,12}$/)
  • 方法
    • test(str)判断指定字符串是否符合规则
  • 语法
    • ^:表示开始
    • $:表示结束
    • []:代表某个范围内的单个字符,如[0-9]代表0-9中的某个数字
    • .:代表任意单个字符,除了换行符和结束符
    • \w:代表单词字符:字母,下划线,数字
    • \d:代表数字字符,相当于[0-9]
    • 量词:
    • +:至少一个
    • *:零个或多个
    • ?:零个或一个
    • {x}:x个
    • {m,}:至少m个
    • {m,n}:至少m个,最多n个
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

油光发亮的小猛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值