第四章JavaBean技术与Web数据库操作课件.ppt
《第四章JavaBean技术与Web数据库操作课件.ppt》由会员分享,可在线阅读,更多相关《第四章JavaBean技术与Web数据库操作课件.ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java Web 网络软件开发安徽工程大学 计算机与信息学院安徽工程大学 计算机与信息学院第四章 JavaBean技术与Web数据库操作 主要内容主要内容一、一、JavaBeanJavaBean组件技术组件技术二、二、JSPJSP内置标记内置标记三、三、JSPJSP自定义标记自定义标记四、四、Java Web Java Web 数据库操作数据库操作五、五、JSP+JavaBeanJSP+JavaBean项目项目新闻发布系统新闻发布系统一、一、JavaBeanJavaBean组件技术组件技术JSPJSP页面中,页面中,JavaJava语言与各种脚本语言参杂在一起。语言与各种脚本语言参杂在一起。F
2、FJavaJava语言用来实现逻辑语言用来实现逻辑FF其它脚本语言用来展现内容其它脚本语言用来展现内容不适合在不适合在JSPJSP页面中实现复杂逻辑!页面中实现复杂逻辑!一般的做法是在一般的做法是在JSPJSP页面中展现内容,而把逻辑实现的部分做为一页面中展现内容,而把逻辑实现的部分做为一个单独的个单独的JavaJava类,在类,在JSPJSP页面中使用页面中使用JavaJava类的功能。类的功能。1.JSP1.JSP中调用类中调用类 (1 1)JSPJSP调用内部类调用内部类通过通过 定义内部类(定义内部类(什么是内部类?什么是内部类?)FF程序程序10-110-1:classinjsp.j
3、spclassinjsp.jspJSPJSP调用内部类很不常用。调用内部类很不常用。(2 2)JSPJSP调用外部类调用外部类普通的普通的JavaJava类(外部类)可以被类(外部类)可以被JSPJSP页面自由使用!页面自由使用!外部类可以被外部类可以被JSPJSP使用,也可以被其它使用,也可以被其它JavaJava系统使用系统使用FF重用性好、扩展性好、便于调试。重用性好、扩展性好、便于调试。FF程序程序10-210-2、10-310-3:Student.javaStudent.java、useClass.jspuseClass.jsp实际应用中,实际应用中,JavaBeanJavaBean
4、组件做为具有特定设计规范的外部类得到非组件做为具有特定设计规范的外部类得到非常广泛的使用。常广泛的使用。2.JavaBean2.JavaBean组件组件 (1 1)什么是)什么是JavaBeanJavaBeanJavaBeanJavaBean是满足是满足BeanBean设计规范的普通设计规范的普通JavaJava类类FFJavaBeanJavaBean类必须有一个不带任何参数的类必须有一个不带任何参数的publicpublic型构造函数型构造函数FF私有成员变量和对应的私有成员变量和对应的setXxx()setXxx()方法和方法和getXxx()getXxx()方法方法其中其中xxxxxx是
5、属性名(与私有成员变量名没有必然联系,但建议把是属性名(与私有成员变量名没有必然联系,但建议把xxxxxx作为变量名)。作为变量名)。getXxx()getXxx()方法是方法是publicpublic类型的类型的FF对于布尔型属性,可以采用对于布尔型属性,可以采用is is代替代替getgetJavaBeanJavaBean组件在组件在JSPJSP中可以通过标签来操作。中可以通过标签来操作。BeanBean设计规范是为设计规范是为了满足标签操作需要!了满足标签操作需要!(2 2)JavaBeanJavaBean标签标签jsp:useBean ”/FFFFFF使用标记操作使用标记操作JavaB
6、eanJavaBean组件语法更简单,功能更强大!组件语法更简单,功能更强大!FF举例:通过举例:通过JavaBeanJavaBean组件设置和访问组件设置和访问PersonPerson对象的姓名对象的姓名指定或新建一个bean实例obj(3 3)FormForm和和 JavaBean JavaBean组件的交互组件的交互表单信息的提交是非常基本的应用,利用表单信息的提交是非常基本的应用,利用JavaBeanJavaBean组件接收组件接收formform提提交的数据语法比较简洁。交的数据语法比较简洁。核心思想:将核心思想:将formform映射为一个映射为一个JavaBeanJavaBean
7、组件,组件,formform中的各个控件中的各个控件按按照名称自动关联照名称自动关联到到JavaBeanJavaBean中的各个属性!中的各个属性!jsp:setProperty name=/举例:举例:FF登录页面登录页面 login.jsp login.jsp 文本框控件文本框控件name=“username”name=“username”、密码框控件、密码框控件name=“password”name=“password”FFJavaBeanJavaBean类类 login.java login.javaFF登录处理页面登录处理页面 success.jsp success.jsp,显示用户
8、名密码。,显示用户名密码。(4 4)JavaBeanJavaBean组件的生命周期组件的生命周期声明引用型变量obj指定范围内查找key为“obj”的Bean对象新建Bean对象objBean对象赋值于objobj对象超过使用范围则被删除找到未找到JavaBeanJavaBean四种不同范围的生命周期四种不同范围的生命周期pagepagerequestrequestsessionsessionapplicationapplication举例:举例:10-910-9、10-1010-10FFCounter.javaCounter.javaFFpageDemo.jsppageDemo.jsp二、二
9、、JSPJSP内置标记内置标记 标记名称标记名称标记作用标记作用指定范围获取指定范围获取BeanBean组件,没有就创建组件,没有就创建设置设置BeanBean组件的属性值组件的属性值获取获取BeanBean组件的属性值组件的属性值动态页面包含动态页面包含页面跳转,页面跳转,requestrequest和和responseresponse保持不变保持不变嵌入组件,用于在浏览器中显示一个对象嵌入组件,用于在浏览器中显示一个对象三、三、JSPJSP自定义标记自定义标记JSPJSP内置标记语法简单、功能强大,但是数量有限内置标记语法简单、功能强大,但是数量有限自定义标记提供了扩展新标记的机制自定义标
10、记提供了扩展新标记的机制FF创建自定义标签类,实现标签功能创建自定义标签类,实现标签功能FF配置标记库描述文件配置标记库描述文件(*.tld)(*.tld),描述标签名及其对应的自定义标签类,描述标签名及其对应的自定义标签类FF把标签库描述文件注册到把标签库描述文件注册到 web.xml web.xml一个简单的例子一个简单的例子font span Welcome to AHPU!Welcome to AHPU! 标签库的简单部署标签库的简单部署将将classclass文件按包结构打包成文件按包结构打包成jarjar文件(文件(zipzip压缩文件改
11、扩展名为压缩文件改扩展名为jarjar),),jarjar文件复制到文件复制到 WEB-INF/lib WEB-INF/lib 中。中。不配置不配置web-xml,web-xml,使用的使用写相对路径就行了使用的使用写相对路径就行了 四、四、Java Web Java Web 数据库操作数据库操作一、一、MySQLMySQL数据库基础数据库基础二、二、JDBCJDBC操作数据库操作数据库三、三、JDBCJDBC连接池连接池(一)(一)MySQLMySQL数据库基础数据库基础 1 1、概述、概述MySQLMySQL是瑞典的是瑞典的MySQL ABMySQL AB公司开发的一个小型关系型数据库管理
12、公司开发的一个小型关系型数据库管理系统,(系统,(MySQL ABMySQL AB公司公司20082008年年1 1月月1616号被号被SunSun公司收购公司收购 )MySQLMySQL优点优点FF体积小、速度快、开放源代码、免费体积小、速度快、开放源代码、免费FF使用使用C/C+C/C+编写,保证源代码的可移植性编写,保证源代码的可移植性FF可以处理拥有上千万条记录的大型数据库可以处理拥有上千万条记录的大型数据库2 MySQL2 MySQL的使用的使用使用使用 MySQL6.0 MySQL6.0绿色版绿色版+navicat 8.0+navicat 8.0设计数据库设计数据库newsdbne
13、wsdb,有一张表,有一张表newsnewsFFid id 自动编号?数字?字符串?自动编号?数字?字符串?FFtitle title 字符串?字符串?FFkeyword keyword 字符串?字符串?FFauthor author 字符串?字符串?FFtime time 日期时间日期时间FFcontent content 文本类型(或者备注类型?文本类型(或者备注类型?1000010000字以内?)字以内?)(二)(二)JDBCJDBC操作数据库操作数据库 JDBCJDBC(Java DataBase ConnectivityJava DataBase Connectivity)FFJDB
14、CJDBC接口规范(即应用程序员需要熟练掌握的接口规范(即应用程序员需要熟练掌握的JDBC APIJDBC API)FF符合符合JDBCJDBC接口规范的接口规范的JDBCJDBC驱动程序驱动程序(*.jar(*.jar文件文件)JDBCJDBC操作数据库的一般过程操作数据库的一般过程1 1、把、把JDBCJDBC驱动添加到驱动添加到webweb应用程序中应用程序中把驱动程序(把驱动程序(*.jar*.jar文件)添加到文件)添加到WEBWEB-INFINF文件夹的文件夹的liblib子文件夹中子文件夹中2 2、指定、指定JDBCJDBC驱动名驱动名Class.forName(“com.mys
15、ql.jdbc.Driver”)Class.forName(“com.mysql.jdbc.Driver”)3 3、根据数据库、根据数据库urlurl、用户名、密码建立数据库连接对象、用户名、密码建立数据库连接对象String url=String url=“jdbc:mysql:/“jdbc:mysql:/localhostlocalhost:3306/:3306/newsdbnewsdb?useUnicode=true&char?useUnicode=true&characterEncoding=GBK”;acterEncoding=GBK”;Connection conn
16、ect=Connection connect=DriverManager.DriverManager.getConnectiongetConnection(url,username,password);(url,username,password);JDBCJDBC操作数据库的一般过程操作数据库的一般过程4 4、基于数据库连接对象创建数据库操作对象(、基于数据库连接对象创建数据库操作对象(StatementStatement对象、对象、PreparedStatementPreparedStatement对象)对象)Statement stmt=connect.createStatement()
17、Statement stmt=connect.createStatement()5 5、利用、利用statementstatement对象操作数据库对象操作数据库FFexecuteQuery(sql)executeQuery(sql)查询性的数据库操作查询性的数据库操作FFexecuteUpdate(sql)executeUpdate(sql)更新性的数据库操作更新性的数据库操作JDBCJDBC操作数据库的一般过程操作数据库的一般过程Class.forName(Class.forName(driverdriver););Connection connect=Connection connect
18、=DriverManager.getConnection(DriverManager.getConnection(urlurl,usernameusername,passwordpassword););Statement stmt=connect.createStatement();Statement stmt=connect.createStatement();ResultSet rs=stmt.executeQuery(sql);ResultSet rs=stmt.executeQuery(sql);/sql/sql为数据库查询语句为数据库查询语句(三)(三)JDBCJDBC操作操作MyS
19、QLMySQL数据库数据库(四)(四)JDBCJDBC访问访问accessaccess数据库数据库1 1、把、把accessaccess文件设置为文件设置为ODBCODBC(Open Database ConnectivityOpen Database Connectivity)数据源,通过数据源,通过JDBC-ODBCJDBC-ODBC桥访问桥访问ODBCODBC数据源,很少用。数据源,很少用。2 2、通过、通过JDBC-ODBCJDBC-ODBC驱动直接访问驱动直接访问accessaccess文件,因为比较方便,文件,因为比较方便,所以在小型系统中很常用。所以在小型系统中很常用。drive
20、r=“sun.jdbc.odbc.JdbcOdbcDriver”driver=“sun.jdbc.odbc.JdbcOdbcDriver”url=“jdbc:odbc:DRIVER=Microsoft Access Driver(*.mdb);DBQ=c:mydata.mdb”url=“jdbc:odbc:DRIVER=Microsoft Access Driver(*.mdb);DBQ=c:mydata.mdb”绝对路径很不方便!绝对路径很不方便!JDBCJDBC通过相对路径访问通过相对路径访问accessaccess数据库数据库driverdriver=sun.jdbc.odbc.Jdbc
21、OdbcDriver;=sun.jdbc.odbc.JdbcOdbcDriver;dbnamedbname=“databasenews.mdb”=“databasenews.mdb”filepathfilepath=application.getRealPath(=application.getRealPath(dbnamedbname););/得到绝对路径得到绝对路径filepathfilepath=filepathfilepath.replaceAll(“”,“”);.replaceAll(“”,“”);/java/java中用中用“”“”表示表示“”“”urlurl=jdbc:odbc:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 JavaBean 技术 Web 数据库 操作 课件
限制150内