数据库操作示例 import java.sql.*; //导入java.sql包 public class JDBCDemo {

Slides:



Advertisements
Similar presentations
模块五 动态网页技术 任务五 查询记录 任务一 表单设计制作 任务二 简单动态的 ASP 页面制作任务三 页面与数据库的集成任务四 添加记录 任务六 电商系统融入网站.
Advertisements

LOGO 第 9 章 Java Servlet 和 JSP 编程 孙焘. 重点: servlet 编程原理 1 servlet 的基础类与编程实现 2 JSP 编程原理 3 JSP 的常用语法 4.
JDBC 基础知识 第 七 章.  Java 的高级组件 回顾 1 本章相关词汇 单 词说 明 driver 驱动,驱动程序 connection 连接 manager 管理器 statement 语句 prepared 预备的,预编译的 result 结果 create 创建,创造 execute.
JSP 与数据库 SQL 语言简介 SQL 语言简介 JDBC 简介 JDBC 简介 使用 JDBC 连接数据库 使用 JDBC 连接数据库 访问数据库 数据库访问应用举例.
第十章 Java 数据库编程. 内容提要 数据库有关概念; 介绍 JDBC 的结构; 重点介绍 JDBC 访问几种数据库的基本过程;
Java 技术与应用 数据库应用 ( 第 14 章 ) 西安交大 卫颜俊 2008 年 12 月 电子信箱: QQ: 网站 : /java.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
第 7 章 配合 例子源代码一起使用 Power point 制作:耿祥义 张跃平 普通高等教育 “ 十一五 ” 国家级规划教材 JSP 与 JavaBean.
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
动态Web开发技术--JSP.
第五章. 服务器端开发技术- Servlet 对外经济贸易大学信息学院.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
第一章 JSP概述.
第五章 JSP内置对象 第4章学习了页面组成元素和使用方法。本章学习JSP内置对象的使用。使用JSP内置对象,可以方便操作页面,访问页面环境,实现页面内、页面间、页面与环境之间的通讯。 学习目标 熟悉主要内置对象的概念 理解主要内置对象的作用域和生命期 理解主要内置对象的作用和关系 熟悉主要内置对象的使用方法.
第14章 JDBC技术和数据库开发应用.
Java程序设计教程 第一讲 Java概述.
四資二甲 第三週作業 物件導向程式設計.
配合< JSP程序设计>例子源代码一起使用
《Java程序设计之网络编程》 教学课件 重庆大学计算机学院
MVC Servlet与MVC设计模式.
第12章 JDBC数据库应用程序设计.
第十一讲 JDBC JDBC基础 JDBC驱动程序 JDBC编程 示例.
第二章 JAVA语言基础.
第15章 Java数据库连接(JDBC) 15.1 创建数据源 15.2 JDBC-ODBC桥接器 15.3 顺序查询
JAVA 程式設計與資料結構 第十一章 JDBC.
11-1 JDBC的基礎-說明 昇陽公司提出的資料庫中介軟體(Middleware)稱為「JDBC」(Java Database Connectivity),這是一種開放標準的Java程式介面,可以讓Java程式連接資料庫管理系統, 以Java技術來說,就是實作JDBC驅動程式介面(JDBC Driver.
Hello World 體驗實作第一個JSP程式.
第9章 过滤器和监听器技术 过滤器(Filter)和监听器(Listener)是两种特殊的Servlet技术。过滤器可以对用户的请求信息和响应信息进行过滤,常被用于权限检查和参数编码统一设置等。监听器可以用来对Web应用进行监听和控制的,增强Web应用的事件处理能力。 本章主要介绍过滤器和监听器的编程接口、基本结构、信息配置、部署和运行,最后通过案例说明过滤器和监听器的典型应用。
JSP程式設計 基本概論 歐陽芳泉 Fang-Chuan Ou Yang
2.1 基本資料型別 2.2 變數 2.3 運算式與運算子 2.4 輸出與輸入資料 2.5 資料型別轉換 2.6 實例
软件设计模式与体系结构课程设计 周 宇 College of Information Science and Technology
JDBC 数据库系统与应用 2014年.
AJAX基础.
2018/11/15 面向对象与多线程综合实验-数据库操作 教师:段鹏飞.
专题4:JSP脚本和指令.
专题一 Servlet技术 案例一简单计数器.
JAVA vs. SQL Server 建國科技大學 資管系 饒瑞佶 2013/4 V1.
Java基础 JavaSE异常.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
胡鹏 王慧锋 TEL: 数据库系统原理课程设计 实验环节1 胡鹏 王慧锋 TEL:
崑山科技大學資訊管理系 伺服網頁程式設計 系統開發細部流程 教師:游峰碩.
電子商務網站建制技術與實習(II) 助教:江宜政 吳昇洋.
2018/11/23 面向对象与多线程综合实验-数据库操作 教师:段鹏飞.
第一章: Java Web 开发技术概述.
程式設計實作.
Java语言程序设计 第五部分 Java异常处理.
Java语言程序设计 第八部分 Applet小程序.
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
异常及处理.
4、按钮事件.
第11章 Android客户端与服务器交互.
第一章 JSP概述 study-thinking-action.
第 7 章 JDBC数据库访问.
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
CS, ZJU 4/18/2019 Chapter 7 数据库.
JSP程序设计 第9章 Servlet简介.
第十二章 过滤器.
12-0.開發步驟檢查 游峰碩.
第十二章 学习使用Ant Apache Ant是一个基于Java的构建工具,它可以 会构建多种项目,但是目前主要被用于Java项目 的构建, Ant是用Java语言编写,可以在多个操 作系统中运行,目前在绝大部分的Java开源项目 中,都选择使用Ant作为构建项目的工具,Ant已 经成为Java开源项目构建的事实标准,而且越来.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
主编:钟元生 赵圣鲁.
2019/5/3 JAVA Socket(UDP).
第二章 Java语法基础.
第二章 Java基本语法 讲师:复凡.
助教:廖啟盛 JAVA Socket(UDP) 助教:廖啟盛
JAVA 程式設計與資料結構 第三章 物件的設計.
判斷(選擇性敘述) if if else else if 條件運算子.
第二章 Java基础语法 北京传智播客教育
第二章 Java基本语法 讲师:复凡.
数据库应用技术 天津电大 翟迎建.
Presentation transcript:

数据库操作示例 import java.sql.*; //导入java.sql包 public class JDBCDemo { public static void main(String[] args) { String strCon = "jdbc:mysql://127.0.0.1:3306/test"; //连接字符串 String strUser = "root"; //数据库用户名 String strPwd = "root"; //口令 System.out.println("正在连接数据库..."); try { //监控异常 Class.forName("com.mysql.jdbc.Driver"); //加载驱动程序 Connection con; //获得连接对象 con = DriverManager.getConnection(strCon, strUser, strPwd); System.out.println("成功连接到数据库。"); Statement sta = con.createStatement(); //创建语句对象 //执行SQL语句 String strSql = "DELETE FROM Friends WHERE [Name] = '郑六'"; int count = sta.executeUpdate(strSql); System.out.println("成功删除" + count + "行数据。"); sta.close(); con.close(); //关闭所有已经打开的资源 } catch (ClassNotFoundException cnfe) { cnfe.printStackTrace(); } catch (SQLException sqle) { sqle.printStackTrace(); } } }

操作结果集 使用Statement对象的executeQuery方法成功执行SELECT语句后,将返回一个包含有结果数据的ResultSet对象,要从该对象中获取数据,将使用到如下方法: 方 法 原 型 说 明 boolean next() throws SQLException 将结果集游标往下移动一行,如果已经到达结果集最后,将会返回false,有可能抛异常,必须捕捉 X getX(String columnName) 获得某个字段的值,X是指具体的数据类型,视数据库表中字段的具体情况而定,该方法有一组,并且每个都有两种重载方法,一种是以字段名称为参数,另一种是以字段索引为参数(字段索引从1开始),有可能抛异常,必须捕捉 X getX(int columnIndex)

操作结果集示例 try { String strCon = "jdbc:odbc:MyODBC"; System.out.println("正在连接数据库..."); Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con; con = DriverManager.getConnection(strCon, "sa", ""); System.out.println("成功连接到数据库。"); Statement sta = con.createStatement(); ResultSet rs = sta.executeQuery("SELECT * FROM Friends"); System.out.println("查询到数据如下:"); while (rs.next()) { //循环将结果集游标往下移动,到达末尾返回false //根据字段名称获得各个字段的值 System.out.print(rs.getString("Name") + "\t"); //获得字符串 System.out.print(rs.getString("Address") + "\t"); //获得字符串 System.out.print(rs.getInt("Telephone") + "\t"); //获得整数 System.out.print(rs.getDate("HireDate") + "\t"); //获得日期型数据 System.out.println(rs.getFloat("Salary")); //获得浮点型数据 } rs.close(); sta.close(); con.close(); } catch (ClassNotFoundException cnfe) { cnfe.printStackTrace(); } catch (SQLException sqle) { sqle.printStackTrace(); }

Sql语句 select * from [table] where id=3; insert into [table] (id, uname, psw) values (1, 'abc', '123'); update [table] set uname='abc'; delete from [table] where id=3;

总结 JDBC是使用Java程序操作数据库的技术; 使用 Class类的forName 方法可以将驱动程序加载到 Java 解释器中; 使用DriverManager类的getConnection方法获得Connection对象,从而建立与数据库的连接; 使用Connection对象的createStatement方法创建语句对象,以便执行SQL语句; 使用Statement对象的executeQuery或executeUpdate方法执行SQL语句,并使用ResultSet对象来操作结果数据; PreparedStatement接口允许创建预编译的SQL语句,并使得在后续阶段可以指定语句的参数。

2018/11/15 Java语言程序设计-Web应用开发程 教师:段鹏飞

学完本门课程,能够: 课程目标 理解JavaWeb应用概念 使用Servlet完成客户端请求与转发控制 使用JSP编写动态服务端端页面 掌握经典MVC(Model-View-Control)三层架构应用开发 教员要强调学员多上机练习

编写第一个Servlet程序:HelloServlet 本课案例 编写第一个Servlet程序:HelloServlet 教员演示本章的三个案例

Tomcat服务器与Eclipse的集成与测试 课程内容 理解JavaWeb的常规应用领域 掌握应用服务器Tomcat的安装 熟悉Web工程目录结构及其作用 Web工程项目的部署与服务器的启动 Tomcat服务器与Eclipse的集成与测试

静态网页 vs 动态网页 生活中的动态网页 服务端同一个页面可以根据不同的输入返回不同的网页,这就是动态网页

B/S架构 vs C/S架构 B/S带给我们的全新体验 C/S的局限性 Internet 全球用户群中资源共享 公司局域网 特定用户群中资源共享 客户机1 中国用户 数据库服务器 百度服务器 数据库服务器 客户机2 无需安装客户端软件 必须安装客户端软件 美国用户 客户机N

B/S中浏览器端与服务器端采用请求/响应模式进行交互 B/S架构 vs C/S架构 B/S是浏览器/服务器端,程序完全放在服务器上,不用在客户端安装任何软件,客户端只需一个浏览器即可访问应用程序,它是基于Internet的产物 B/S中浏览器端与服务器端采用请求/响应模式进行交互 在应用服务器中布署运行程序 IE 应用 服务器 数据库 服务器

B/S体系的发展 2000年以前:C/S结构程序占主导地位,热门的开发工具包括C++、Delphi、Java等。 2000年以后:B/S结构应用成为主流方向,热门的开发技术包括ASP、PHP、JSP、J2EE、ASP.NET等。 软件体系结构:从2层体系向3层体系以及n层体系发展

Web服务器能做些什么 2 1 3 4 运行JSP/Servlet/JavaBean技术编写的Web应用 解释执行 HTML文件 客户端的请求信息 发送请求 IE 访问数据库 1 3 用户输入 返回结果 Web应用服务器 数据库服务器 返回响应 从服务器端检索到的信息 4 Web服务器接收客户通过浏览器发送请求到服务端,然后服务端以网页的形式向客户端返回用户请求的资源。

HTTP协议 Http1.0中浏览器访问网页的过程: 网页文档 图片1 图片2 图片3 WEB服务器 浏览器 ② ① ③ ④

HTTP协议 两种请求方式: 两种方式的特点: Get方式:用户数据作为 URL 中的查询字符串传递给服务器,而body中的数据为空 Post方式:用户数据打包在body中传输给服务器,不在URL中显露 两种方式的特点: Get方法所传输的数据在url中可见,post则不可见 Get方法所传输的数据量有限制(一般在1KB以内),Post方法则要大得多(默认为2MB,还可以设置的更大)。

HTTP协议 请求消息示例:

网址: http://tomcat.apache.org Tomcat服务器安装 网址: http://tomcat.apache.org

Tomcat安装好之后在安装目录下的bin目录中双击一个称为 startup.bat 的文件启动Tomcat服务器 双击桌面上的IE图标打开IE浏览器并在地址栏中输入: http://localhost:8080/ 如果显示如下界面代表安装成功: 注意:localhost可以使用回环地址127.0.0.1代替,该地址永远代表本机IP地址

Tomcat目录层次结构 存放启动和关闭 Tomcat 的脚本文件 存放 Tomcat 服务器的各种配置文件 web应用所在目录,即供外界访问的web 资源的存放目录 Tomcat 的工作目录

使用JavaWeb开发动态网站的步骤 1、创建一个Web项目 2、设计Web项目的目录结构 3、编写Web项目的代码 4、部署Web项目 5、运行Web项目

创建一个Web项目 在菜单栏选择:文件  新建  项目 1 在弹出的窗口中选择:eclipse  Dynamic Web Project 2 输入Web项目名称(设置为news),以及其余相关信息之后点击确认创建好WEB工程 3

设计Web项目的目录结构 src文件夹:存放Java源文件 WebRoot:Web应用的根目录,这个目录是打包目录 META-INF:系统自动生成,存放系统描述信息 WEB-INF:该目录中内容不能对外发布 lib文件夹:存放以jar/zip形式表现的库文件 web.xml:Web应用的初始化配置文件 静态文件(包括图片、样式表、HTML等)存放在Web应用的根目录下,一般按功能以文件夹形式分类

编写 Web 项目的代码 1 右键点击WebRoot  新建  HTML : 创建一个新的HTML文件 2 在弹出的窗口中,选择文件路径、输入文件名称 3 填充HTML文件内容

PrintWriter out = response.getWriter(); // 使用 "out"把应答内容发送到浏览器 Servlet基本结构 public class SomeServlet extends HttpServlet { // 必须继承自HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException { // 使用“request”读取和请求有关的信息(比如Cookies)和表单数据 // 使用“response”指定HTTP应答状态代码和应答头(比如指定内容类型,设置 Cookie) PrintWriter out = response.getWriter(); // 使用 "out"把应答内容发送到浏览器 } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { …… }

Servlet生命周期

Servlet工作原理 响应 响应 客户机 HTTP GET请求 doGet()方法 HTTP POST请求 doPost()方法 Web服务器

第一个Servlet程序 第二步:创建一个HelloServlet的类

第一个Servlet程序 第三步:重写HttpServlet类中的doGet和doPost以及GenericServlet类中的init和destory方法(注:HttpServlet抽象类继承于GenericServlet抽象类) package com.scxh.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class HelloServlet extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException { doPost(req,resp); } protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException { PrintWriter pw=resp.getWriter(); pw.write("Hello Word!"); public void destroy() {super.destroy();} public void init() throws ServletException {super.init();}

第一个Servlet程序 第四步:在WEB-INF文件夹下的web.xml文件中配置Servlet类

第一个Servlet程序 第五步:部署Web工程,启动Tomcat服务器并使用浏览器访问服务器以测试编写的Servlet类

JSP简介 JSP本质上就是把Java代码嵌套到HTML中,然后经过JSP容器的编译执行,可以根据这些动态代码的运行结果生成对应的HTML代码,从而可以在客户端的浏览器中正常显示。在这个小节中将介绍JSP的运行原理、JSP的优点和其运行环境的搭建。

JSP执行过程 servlet servlet分析器 jsp parser JSDK *.jsp *.java *.class request 执行 response

JSP执行过程 查找对应的JSP文件 Y N 是否存在 Y N 是否是修改或创建 后第一次调用 Y 调用Jsp Parser将其 编译成Servlet程序 Client 调用JSDK将对应的Servlet 程序编译成Servlet字节码 Server 执行(若未载入则先载入) 已有的对应的Java字节码

选择JSP的原因 (1)可以直接把JAVA 代码嵌入到HTML中,充分利用JAVA语言的语法和类库。 (2)具有跨平台的优势 (3)JSP中可以使用JavaBean进行逻辑封装,实现逻辑功能代码的重用,提高系统的可重用性。 (4)JSP程序容易上手。 (5)在JAVA领域,有许多开源项目,能够提供丰富的JAVA类、组件,提高开发效率以及系统健壮性。

JSP文件结构 <%@ page contentType="text/html;charset=gb2312" %> <%@ page import="java.util.*“ %> ... <HTML> <BODY> 其他 HTML 语言 <% 符合JAVA 语法的 JAVA 语句 %> </BODY> </HTML>

JSP语法概述 JSP原始代码中包含了JSP元素和Template data两类 Template data指的是JSP引擎不处理的部分,即标记<%……%>以外的部分,例如代码中的HTML的内容等 ,这些数据会直接传送到客户端的浏览器。 JSP元素则是指将由JSP引擎直接处理的部分,这一部分必须符合JSP语法,否则会导致编译错误。

JSP语法概述 脚本元素(Scripting Element) 脚本元素用来在JSP中嵌入Java代码,它允许声明变量和方法,包含任意脚本代码和对表达式求值。这些Java代码将成为转换得到的Servlet的一部分。 指令(Directive) JSP指令是用作从JSP发送到JSP引擎上的一个信息。它们不向客户端产生任何输出,只是指示JSP引擎需要做什么,所有的指令都在整个JSP文件内有效。也就是说,一个指令影响整个JSP文件,并且只影响这个JSP文件。在标签中指令由<%@ %>标记。 动作(Action) 动作用来引入现有的组件或者控制JSP引擎的行为。

声明 JSP基础——声明 语法:<%! declaration; [ declaration; ] ... %> 样例: <%@ page language=”java” import=”java.util.*” %> <html> <head> <title>berhely</title> </head> <body> <%! int i = 0; %> <%! int a, b, c; %> <%! Date date; %> <%! int doSomething() …… } %> </body> </html>

语法:<%= expression %> JSP基础——表达式 表达式 语法:<%= expression %> 样例: <%@ page language=”java” import=”java.util.*” %> <html> <head> <title>berhely</title> </head> <body> <%! Date date=new Date(); %> <%! int a, b, c; %> <% a=12;b=a; c=a+b;%> <%=date.toString()%> <b>a=<%= a %></b><br> <b>b=<%= b %></b><br> <b>c=<%= c %></b><br> </body> </html>

脚本段 语法:<% code %> JSP基础——脚本段 样例: <%@ page language=”java” import=”java.util.*” %> <html> <head> <title>berhely</title> </head> <body> <% for(int i = 0; i < 10; i++) {out.println(“berheley”);} %> </body> </html>

总 结 JavaWeb学科是Java在B/S结构领域内的应用,B/S架构相对于C/S架构而言的优点在于使用维护方便 总 结 JavaWeb学科是Java在B/S结构领域内的应用,B/S架构相对于C/S架构而言的优点在于使用维护方便 中小型企业常用的Web应用服务器是Tomcat,Tomcat服务器的默认端口是8080,安装后bin目录提供Tomcat的启动与停止等脚本文件,conf目录提供Tomcat的常用配置,webapps目录提供给用户部署工程项目 在IDE环境中,一个JavaWeb应用程序的目录分为两个部分,src源文件夹和WebRoot文件夹,前者用于保存程序员开发的源程序,后者用于发布到服务器进行工程部署,其中WebRoot文件夹下的文件提供给外界客户端直接访问,WEB-INF文件夹下的文件则提供给服务器自己调用 一个WEB工程的部署有多种形式,包括和IDE继承开发环境的调试部署方式,这需要将Tomcat集成到MyEclipse中去 编写Servlet程序时不再需要main方法,main方法放置于Tomcat服务器内部,Servlet程序提供了Servlet接口供程序员去编写实现,最后由服务器来完成调用

2018/11/15 谢谢