《Java Web程序开发入门》知识总结(四)
2015-12-27 14:19
363 查看
前言:
JavaBean可以对数据和功能进行封装,做到“一次编译,到处运行”。JSP技术在Web应用程序的开发过程中运用十分广泛,它的功能强大,是当前流行的动态网页设计技术标准之一。使用JSP技术开发Web应用程序,有两种开发模型可供选择,通常称为JSP Model1和JSP Model2。第八章JavaBean组件
问题一:JavaBean的种类(非可视化JavaBean)
1)值JavaBean:封装数据2)工具JavaBean:封装业务逻辑
补充:什么是JavaBean
*JavaBean是Java开发语言中的一个可以重复使用的软件组件,它本质就是一个Java类。标准的JavaBean组件的编码规范:
1)它必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动产生的默认构造方法(set:方法修改器;get方法:访问器)。
2)它提供公共的setter方法和getter方法让外部程序设置和获取JavaBean的属性(必须有私有(private)属性和共有(public)方法)。
问题二:javaBean中属性与方法的访问类型
属性-私有、方法-共有问题三:JavaBean的scope作用域
page、request、session、application问题四:JSP标签
(1)<jsp:useBean>标签:
用于在某个指定的域范围中查找一个指定名称的JavaBean对象。语法格式:
<jsp:useBean id="beanInstanceName" [scope="{page|request|session|application}"]> { class="package.class"| type="package.class"| class="package.class" tyoe="package.class"|
beanName="{package.class|<%=expression%>}" type="package.class"}/>属性说明:
1)id:用于指定JavaBean实例对象的引用名称和其存储在域范围中的名称。
2)scope:用于指定JavaBean实例对象所存储的域范围,默认page。
3)type:用于指定JavaBean实例对象的引用变量类型,它必须是JavaBean对象的类名称、父类名称或JavaBean实现的接口名称。默认值为class属性的设置值。
4)class:用于指定JavaBean的完整类名(即必须带有包名)。
5)beanName:用于指定JavaBean的名称,它的形式也是a.b.c的形式。这既可以代表一个类的完整名称,也可以代表a/b/c.ser这样的资源文件。
(2)<jsp:setProperty>标签:
为JavaBean属性赋值(用于在JSP页面中设置一个JavaBean组件的属性)。语法格式:
<jsp:setProperty name=“JavaBean实例名” property=“属性名” value=“属性值” param=“请求参数”/>
属性说明:
1)Value属性值:可以是字符串也可以是表达式,为字符串时,该值会自动转化为JavaBean属性相应的类型,如果是一个表达式,那么表达式的计算结果必须与所要设置的JavaBean属性的类型一致。
2)Param:用于将JavaBean实例对象的某个属性值设置为一个请求参数值,该属性值同样会自动转换成要设置的JavaBean属性的类型。(缺省:用请求参数为JavaBean中的所有参数赋值。)
3)在单独使用porperty属性时,porperty的属性值可以设置为JavaBean的一个属性名,也可以设置为一个星号(*)通配符。
(3)<jsp:getProperty>
获取JavaBean的属性值并显示。语法格式:
<jsp:getProperty name=“JavaBean实例名” property=“属性名”/>
第九章JSP开发模型
问题一:JSP开发网站的两种模式
JSP Model1:JSP+JavaBeanJSP Model2:JSP+JavaBean+Servlet(MVC)
问题二:MVC设计模式
MVC模式将软件程序分为3个核心模块:模型(Model)、视图(View)和控制器(Controller)第十章连接数据库、操作数据库
Connection conn = null; Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/db_database09"; String username = "root"; String password = "root"; conn = DriverManager.getConnection(url,username,password); Connection conn = getConnection(); Statement stmt = conn.createStatement(); String sql = "select * from tb_book"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()){
BookBean book = new BookBean(); book.setId(rs.getInt("id")); book.setName(rs.getString("name")); book.setPrice(rs.getDouble("price")); book.setBookCount(rs.getInt("bookCount")); book.setAuthor(rs.getString("author")); list.add(book); } Connection conn = getConnection(); Statement stmt = conn.createStatement(); String sql = “insert into …….."; Int result = stmt.executeUpdate(sql);
相关文章推荐
- 二分查找java语言实现
- Struts回顾
- 常用java编译器总结
- java中的静态块
- 从零开始写javaweb框架笔记8-细节完善与代码优化
- 堆排序java代码实现
- java提高篇(二四)-----HashSet
- java提高篇(二三)-----HashMap
- Java实现冒泡排序算法
- java.lang.ExceptionInInitializerError BeanCreationException: Error creating bean with name 'TestServ
- Java 日期的各种操作
- 快速排序算法java实现
- 各种排序算法的分析及java实现
- Android EclipseIDE技巧
- Java多线程之信号量Semaphore
- Java IO系列6 字节流之PipedInputStream与PipedOutputStream
- 【译】Stackoverflow:Java Servlet 工作原理问答
- java读取properties文件的几种方法
- 浅析java中final,finally,finalize
- 【Java EE 学习 79 上】【mybatis 基本使用方法】