欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
  一、JDBC简介
 
  概念:Java DataBase Connectivity,Java数据库连接,Java语言操作数据库.
 
  JDBC本质:其实是Sun公司提供的一套操作所有关系型数据库的规则,即接口.各个数据库厂商去实现这套接口,提供数据库驱动jar包.我们可以使用这套接口实现JDBC编程,操作数据库.
 
  JDBC操作数据库步骤:
 
  *导入jar包
 
  *注册驱动
 
  *建立连接
 
  *书写sql语句
 
  *创建执行sql语句的对象(Statement/prepareStatement)
 
  *执行sql语句
 
  *处理返回结果
 
  *释放资源
 
  注意:由于后期使用单纯JDBC比较少,因此这里就不在赘述其具体代码和工具类的编写了。后面会介绍一些新的技术。
 
  二、JDBC控制事务
 
  1.事务:一个包含多个步骤的业务操作。如果这个业务操作被事务管理,则这多个步骤要么同时成功,要么同时失败。
 
  2.操作:
 
  1.开启事务
 
  2.提交事务
 
  3.回滚事务
 
  3.使用Connection对象来管理事务
 
  *开启事务:setAutoCommit(boolean autoCommit):调用该方法设置参数为false,即开启事务
 
  *在执行sql之前开启事务
 
  *提交事务:commit()
 
  *当所有sql都执行完提交事务
 
  *回滚事务:rollback()
 
  *在catch中回滚事务
 
  三、数据库连接池
 
  概念:是一个容器(集合),存放数据库连接的容器。
 
  当系统初始化后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。
 
  好处:
 
  1.节约资源
 
  2.用户访问高效
 
  实现:
 
  1.标准接口:DataSource,java.sql包下的
 
  1.方法:
 
  *获取连接:getConnection()
 
  *归还连接:Connection.close()。如果连接对象Connection是从连接池中获取的,那么调用Connection.close()方法,则不会再关闭连接了。而 是归还连接
 
  2.一般我们不去实现它,有数据库厂商来实现
 
  1.C3P0:数据库连接池技术
 
  2.Druid:数据库连接池实现技术,由阿里巴巴提供的
 
  这里重点介绍下Druid。
 
  四、Druid:数据库连接池实现技术
 
  1.步骤:
 
  1.导入jar包druid-1.0.9.jar
 
  2.定义配置文件:
 
  *是properties形式的
 
  *可以叫任意名称,可以放在任意目录下
 
  3.加载配置文件。Properties
 
  4.获取数据库连接池对象:通过工厂来来获取 DruidDataSourceFactory
 
  5.获取连接:getConnection
 
  五、Spring JDBC
 
  1. 概念: Spring框架对JDBC的简单封装,提供了一个JDBCTemplate对象简化JDBC的开发。
 
  步骤:
 
  1.导入jar包
 
  2.创建JdbcTemplate对象,依赖于数据源DataSource
 
  3.调用JdbcTemplate的方法来完成CRUD的操作
 
  update():执行DML的增删改操作
 
  queryForMap(): 将查询的结果集封装为Map双列集合对象,每次只能查询出一条记录
 
  queryForList():将查询的结果集封装为List单列集合对象
 
  注意:将每一条记录封装为map集合,将map集合封装为list集合
 
  query():将查询结果封装为JavaBean对象 (实体类对象)
 
  query的参数:RowMapper
 
  一般我们使用BeanPropertyRowMapper实现类。可以完成数据到JavaBean的自动封装
 
  new BeanPropertyRowMapper<类型>(类型.class)
 
  queryForObject():将查询结果封装为Object对象
 
  一般用于聚合函数的查询
 
  六、HTML(简单介绍)
 
  1.基本的一些标签
 
  1)介绍HTML之前,先介绍下JavaWeb技术:
 
  概念:用于java语言开发基于互联网的项目.
 
  软件架构:
 
  C/S:Client/Server 客户端/服务器端
 
  如:QQ/迅雷等
 
  优点:用户体验好
 
  缺点:开发/安装/部署/维护,麻烦
 
  B/S:Browser/Server 浏览器/服务器端
 
  通过网址,访问不同的程序
 
  优点::开发/安装/部署/维护 比较简单
 
  缺点:大型应用,用户体验较差,因为传输比较慢,硬件要求过高
 
  B/S架构详解:
 
  资源分类:
 
  静态资源:基于HTML/JS/CSS等技术,使用静态网页开发技术发布的资源.
 
  Html超文本标记语言:Hyper text  Markiplanguage简称
 
  特点:
 
  所有用户访问,得到的结果是一样的。
 
  如:文本,图片,音频、视频,HTML,CSS,JavaScript
 
  如果用户请求的是静态资源,那么服务器会直接将静态资源发送给浏览器。浏览器中内置了静态资源的解析引擎,
 
  可以展示静态资源
 
  动态资源:基于Servlet/JSP等技术,使用动态网页及时发布的资源.
 
  特点:
 
  所有用户访问,得到的结果可能不一样。
 
  如:jsp/servlet,php,asp...
 
  *如果用户请求的是动态资源,那么服务器会执行动态资源,转换为静态资源,再发送给浏览器
 
  注意: 我们要学习动态资源,必须先学习静态资源!
 
  静态资源:
 
  HTML:用于搭建基础网页,展示页面的内容
 
  CSS:用于美化页面,布局页面
 
  JavaScript:控制页面的元素,让页面有一些动态的效果
 
  2)HTML和其基本标签
 
  1.概念:是最基础的网页开发语言
 
  Hyper Text Markup Language超文本标记语言
 
  超文本:
 
  超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本.
 
  标记语言:
 
  由标签构成的语言。<标签名称> 如html,xml
 
  标记语言不是编程语言
 
  2.快速入门:
 
  语法:
 
  1.html文档后缀名 .html 或者.htm
 
  2.标签分为
 
  1.围堵标签:有开始标签和结束标签。如 <html></html>
 
  2.自闭和标签:开始标签和结束标签在一起。如 <br/>
 
  3.标签可以嵌套:
 
  需要正确嵌套,不能你中有我,我中有你
 
  错误:<a><b></a></b>
 
  正确:<a><b></b></a>
 
  4. 在开始标签中可以定义属性。属性是由键值对构成,值需要用引号(单双都可)引起来
 
  5. html的标签不区分大小写,但是建议使用小写。
 
  HTML标签:表单标签
 
  *表单:
 
  *概念:用于采集
 
  *form标签:用于定义表单的.可以定义一个范围,范围代表采集用户数据的范围.
 
  *属性:
 
  *action:指定提交数据的URL
 
  *method:指定提交方式
 
  *分类:一共7种,常用2种:
 
  get:
 
  请求参数会在地址栏中显示,会封装到请求行中
 
  请求参数大小有限制的
 
  不太安全
 
  post:
 
  请求参数不会在地址栏中显示
 
  请求参数大小没有限制的
 
  较为安全
 
  表单项中的数据要想被提交:必须指定其name属性.
 
  表单项标签:
 
  *input:可以通过type属性值,改变元素展示样式
 
  *type属性:
 
  text:文本输入框,默认值
 
  placehoder:指定输入框的提示信息,当输入的内容发生变化,会
 
  password:密码输入框,
 
  radio:单选框
 
  *注意:
 
  1.要想让多个单选框实现单选的效果,则多个单选框的name属性值必须一样。
 
  2.一般会给每一个单选框提供value属性,指定其被选中后提交的值
 
  3.checked属性,可以指定默认值
 
  checkbox:复选框
 
  *注意:
 
  1.一般会给每一个单选框提供value属性,指定其被选中后提交的值
 
  2.checked属性,可以指定默认值
 
  file: 文件选择框(文件上传)
 
  hidden:隐藏域,用于提交一些信息
 
  submit:提交按钮,可以提交表单
 
  button:普通按钮
 
  image:图片提交按钮
 
  *src属性指定图片的路径
 
  color:取色器
 
  date:年月日的日历
 
  datetime-local:年月日时分秒
 
  email:邮箱
 
  number:数字,如年龄等
 
  *label:指定输入项的文字描述信息
 
  *注意:
 
  * label的for属性一般会和 input 的 id属性值 对应。如果对应了,则点击label区域,会让input输入框获取焦点。
 
  * select属性 :下拉列表,设置name属性
 
  <option></option>指定列表项
 
  *  textarea属性:文本域.
 
  *cols:指定列数,每一行有多少个字符
 
  *rows:默认多少行
 
  CSS:页面美化布局控制
 
  1. 概念:Cascading Style Sheets层叠样式表
 
  *层叠:多个样式可以作用在同一个html的元素上,同时生效
 
  2.好处:
 
  1.功能强大
 
  2.将内容展示和样式控制分离
 
  *降低耦合度。解耦
 
  *让分工协作更容易
 
  *提高开发效率
 
  3.CSS的使用:CSS与html结合方式
 
  1.内联样式
 
  *在标签内使用style属性指定css代码
 
  * 如:<div style="color:red;">hello css</div>
 
  2.内部样式
 
  *在head标签内,定义style标签,style标签的标签体内容就是css代码
 
  *如:
 
  <style>
 
  div{
 
  color:blue;
 
  }
 
  </style>
 
  <div>hellocss</div>
 
  3.外部样式
 
  1.定义css资源文件。
 
  2.在head标签内,定义link标签,引入外部的资源文件
 
  *如:
 
  *a.css文件:
 
  div{
 
  color:green;
 
  }
 
  <linkrel="stylesheet" href="css/a.css">
 
  <div>hellocss</div>
 
  <div>hellocss</div>
 
  *注意:
 
  *1,2,3种方式css作用范围越来越大
 
  *1方式不常用,后期常用2,3
 
  *3种格式可以写为:
 
  <style>
 
  @import"css/a.css";
 
  </style>
 
  总结:
 
  html中三种写css的方式:
 
  1.直接在标签上写style属性
 
  2.在head标签中直接写<style>....</style>
 
  3.在外部定义.css文件,通过<link rel=  />引入外部样式
 
  优先级就近原则,即1>2>3
 
  css语法:
 
  格式:
 
  选择器{
 
  属性名1:值;
 
  属性名2:值;
 
  ......
 
  }
 
  *选择器:筛选具有相似特征的元素
 
  *注意:
 
  *每一对属性需要使用;隔开,最后一对属性可以不加;
 
  分类:
 
  基础选择器:
 
  1.id选择器:选择具体的id属性值元素
 
  *语法:#id属性值{}
 
  2.元素选择器:选择具有相同标签名称的元素
 
  *语法:标签名称{}
 
  *注意:id选择器优先级高于元素选择器
 
  3.类选择器:选择具有相同的class属性值的元素
 
  *语法:.class属性值{}
 
  *注意:类选择器优先级高于元素选择器
 
  *class=class属性值1  class属性值2   class属性值3...也是可以的,只是相同设置只有一个起作用
 
  扩展选择器:
 
  1.选择所有元素:
 
  *语法:  *{    }
 
  2.并集选择器:
 
  *语法:选择器1,选择器2{  }
 
  3.后代选择器:筛选选择器1下的是所有后代选择器2,哪怕是孙子级,只要有选择器2即可
 
  *语法: 选择器1  选择器2{  },用空格隔开的
 
  4.子元素选择器:
 
  *语法: 选择器1 >选择器2{ }
 
  5.属性选择器:
 
  *语法:元素名称[属性名="属性值"]{  }
 
  6.伪类选择器:
 
  * 语法:元素:状态{}
 
  *如:<a>
 
  *状态:
 
  *link:初始化的状态
 
  *visited:被访问过的状态
 
  *active:正在访问状态
 
  *hover:鼠标悬浮状态
 
  属性
 
  1.字体、文本
 
  *font-size:字体大小
 
  *color:文本颜色
 
  *text-align:对其方式
 
  *line-height:行高
 
  2.背景
 
  *background:
 
  3.边框
 
  *border:设置边框,符合属性
 
  4.尺寸
 
  *width:宽度
 
  *height:高度
 
  5.盒子模型:控制布局
 
  *margin:外边距
 
  *padding:内边距
 
  *默认情况下内边距会影响整个盒子的大小
 
  *box-sizing: border-box; 设置盒子的属性,让width和height就是最终盒子的大小
 
  *float:浮动
 
  *left
 
  *right

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h60300.shtml