收藏 分销(赏)

JSP动态Web技术整本书课件电子教案.ppt

上传人:w****g 文档编号:8801102 上传时间:2025-03-02 格式:PPT 页数:151 大小:8.96MB 下载积分:20 金币
下载 相关 举报
JSP动态Web技术整本书课件电子教案.ppt_第1页
第1页 / 共151页
JSP动态Web技术整本书课件电子教案.ppt_第2页
第2页 / 共151页


点击查看更多>>
资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,JSP,动态,Web,技术,深圳职业技术学院软件技术专业,JSP,概述,内容提要,4,教学目标,1,2,3,5,认识,JSP,安装配置,JSP,运行环境,开发,JSP,总结与提高,基本教学要求,职业素质要求:,守时、保质、保量、沟通、协作;,课堂要求:,按时出勤,有事请假、和教师配合、有礼貌、师生相互尊重、上课关手机;,上课最基本的要求:,必须带教材、课堂笔记、笔,作业要求:,按时交作业、规范、保质,课程考核,本课程考察的重点:,Web,编程能力,学期成绩,平时成绩单元项目成绩综合项目成绩课程设计成绩,平时成绩:,20,单元项目成绩:,30,综合项目成绩:,10,课程设计成绩:,40,教学方法,项目引入,预备知识,项目实现,知识拓展,项目牵引,讲、学、做结合,实战演习,灵活运用,知识点整合,知识点储备(必须掌握),了解课程,本门课程目标:,掌握利用,JSP,的,Web,开发技术;,学会开发一般,B/S,模式的项目;,Java,Jbuilder/Eclipse,JSP,Struts,框架技术,Spring/Hibernate,等技术,教学项目,动态班级网站;,学生信息管理系统(,B/S,)版;,新闻发布系统;,网上购物系统;,在线投票系统,留言板,教学目标,了解,JSP,技术的特点以及,JSP,程序的结构及运行原理,;,掌握,JSP,网站运行环境的配置,;,掌握在,Eclipse,环境中开发,JSP,程序的方法。,JSP,概述,概念和意义,操 作,使 用,动态,Web,技术工作原理,JSP,技术的特点,JSP,运行环境的设置,JSP,开发环境配置,JSP,工程的创建,JSP,程序运行与调试,静态,VS,动态,网页,静态网页,HTML,格式的网页通常被称为“静态网页”,早期的网站一般都是由静态网页制作的。没有后台数据库、不含程序和不可交互的网页。你编的是什么它显示的就是什么、不会有任何改变。静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。,动态网页,我的博客:,Server Page,,,JSP),以扩展名,.jsp,保存,有效地控制动态内容生成,在,Java Server Page,里面使用,Java,编程语言和类库,HTML,用于表示页面,而,Java,代码用于访问动态内容,JSP,使用,Java,访问动态内容,JSP,页面,Java,服务器,搭建,JSP,运行环境,所必需软件:,JDK+,服务器,+,编辑工具,JDK:,不同版本,如,JDK1.4,服务器:,Tomcat,、,WebLogic,、,Websphere,、,Apusic Application Server,等,编辑工具:,记事本、,Dreamweaver,、,Editplus,等,集成开发环境:,Jbuilder,、,Eclipse,等,开发,JSP,程序,显示当前时间,现在时间是,演示示例,程序改写,Jbuilder,新建,JSP,文件:,first.jsp,Dreaweaver,设计页面,编写代码,运行,改写:,%int i,sum=0;,for(i=1;i,认识,JSP,页面元素,JSP,页面的元素,静态内容,指 令,表达式,Scriptlet,JSP,页面,HTML,静态文本,以“,”,结束。比如:,声 明,动作,以“,jsp:,动作名”开始,以“,”,结束,比如:,注释,动手开发,DIY,你好,,,欢迎光临我的网站。,你刚才输入的密码是,演示示例,JSP,执行过程,客户端,JSP,页面,3,执行,2,转译,编译,1,Servlet,请求,响应,JSP,执行过程,JSP,的优点,强调可重用组件,JSP,页面,1,静态内容,动态内容,JSP,页面,2,静态内容,动态内容,JSP,页面,3,静态内容,动态内容,JavaBean,多个,JSP,页面使用相同的,JavaBean,JSP,的优点,简化页面开发,Web,设计人员和,Web,程序员使用,Web,开发工具开发,JSP,页面,JSP,页面,静态内容,动态内容,Web,开发工具,Macromedia,Dreamweaver,Eclipse/JBuilder,.,页面设计人员,JSP,程序员,总 结,JSP,页面使用,HTML,显示静态内容,并使用,Java,代码生成动态内容,JSP,页面的元素为静态内容、,JSP,指令、,JSP,表达式、,JSP Scriptlet,和注释,可以使用标准开发工具创建,JSP,页面,JSP,使用可重用的跨平台组件(如,JavaBean,),JSP,允许创建自定义标签,使,JSP,开发更容易,JSP,执行过程的各个阶段为转译、编译和执行,JSP,动态,Web,技术,深圳职业技术学院软件技术专业,JSP,语法与内置对象,内容提要,4,JSP,语法,1,2,3,5,主题网站,网上调查,内置对象,总结与提高,学习目标,掌握,JSP,的基本语法,熟练使用,JSP,内置对象,掌握,JSP,开发环境,JSP,内置对象,概念和意义,操 作,使 用,JSP,基本语法,JSP,内置对象,JSP,的语法规范,常用内置对象应用,主题网站设计,网上调查,智力测验,称苹果,有十筐苹果,每筐里有十个,共,100,个,其中有九筐每个苹果的重量都是,1,斤,另一筐中每个苹果的重量都是,0.9,斤,但是外表完全一样,用眼看或用手摸无法分辨。现在要你用一台普通的大秤一次把这筐重量轻的找出来。,项目引入:主题网站,预备知识,page,指令,实例:,作用:指定,JSP,页面的格式和文字编码(,JSP,程序必需);,实例:,作用:为,JSP,页面引入,java,核心包中的类,可指定多个值。,总结:,page,指令用来定义整个,JSP,页面的一些属性和这些属性的值。,预备知识,静态,include,指令,格式:,说明:文件可以是下列格式:,HTML,文件;,JSP,文件;,文本文件;,Java,文件,分析:,被插入的文件是彼此独立完整的文件吗?,总结:把一个文件插入到当前,JSP,页面,合并成一个新的,JSP,页面,知识储备,JSP,注释,JSP,程序注释,格式:,注意:在注释内容中,可以出现除,-%,之外的任何内容,若需使用,必须使用转义字符“,-%”,表示,客户端注释,格式:,客户端动态注释:,格式:,!-,静态注释内容,静态注释内容,-,客户端注释嵌入动态数据,动态数据通过表达式来表示,客户端注释是指在客户端,HTML,源码中显示的注释,,JSP,引擎不做,任何解释,直接输出到客户端,HTML,源码,JSP,程序注释是对,JSP,程序进行的注释,服务器不会将其发送到客 户端,JSP,表达式示例,JSP,表达式,PI,的值:,100,99,中最大的值,:,100,99,中最小的值,:,3+2-5,的值,:,(3+2)=5,的值,:,(3+2)!=5,的值,:,表达式,演示:,java,表达式,使用,JSP,表达式进行,JSP,编程,JSP,页面元素 示例,JSP,声明,Java,程序片,JSP,指令,JSP,页面元素,JSP,页面的元素,静态内容,指 令,表达式,Java,程序,JSP,页面,HTML,静态文本,以“,”,结束。比如:,声 明,动作,以“,jsp:,动作名”开始,以“,”,结束,比如:,注释,实例分析,分析程序:,count.jsp:,计数器 变量声明程序,max.jsp,:比较大小 局部变量声明 表达式,circle_cal.jsp,:计算圆周长、面积 定义类、方法的程序,time.jsp:,显示当前日期,以中文方式显示 类的使用,总结:变量声明(局部、全局)、方法声明、声明类,拓展提高:编写程序,计算,1-10,的和,项目实现,新建工程,新建,Web Application,html,文件:,head.html,、,welcome.html,、,special.htm,、,connectus.htm,运用,“,include”,指令,组合页面:,JSP,文件:,welcome.jsp,、,special.jsp,、,connectus.jsp,调试、运行,项目功能改进,请大家完成练习,思路:,减少,JSP,文件个数;,超级链接的附带参数;,实现方法:,链接方式:修改,head.htm,文件:,专业首页,获取链接地址:修改,index.jsp,文件:,request.getParameter(choice);,Include,指令加载文件,功能实现:,Form,表单,参数如下:,ACTION,:,表单处理方式,指定数据传送,“目的地”,METHOD,:,数据传输方式,如,post,或,get,方法;,ENCTYPE,:,传送表单数据的编码方式,Form,标记,分析:传递数据吗?,内置对象,JSP,页面,隐式对象,客户端,响应,请求,响应,请求,服务器,request,内置对象,方法:,getParameter(String s),作用:获取客户提交的信息;,使用:,reques.getParameter(String s);,分析:“,s”,是表单控件的名称;,实例练习:获取用户提交数据的程序:,request.jsp,分析:如果输入中文,出现什么情况,JSP,页面,request,对象,客户端,请求信息,表示并存储客户端的请求,请求,服务器,中文乱码处理,处理思想:首先,将获取的字符串用,ISO-8859-1,进行编码,并 将编码存放到一个字节数组中,String str=request.getParameter(“s”);,byte b=str.getBytes(“ISO-8859-1”);,Str=new String(b);,简写为:,String str=new String(request.getParameter(“s”).,getBytes(“ISO-8859-1”);,使用,request,对象的其他问题,实例:文本框中输入一个数字,计算其平方根,代码,1,:,的平方根是:,代码,2,:,的平方根是:,代码,3,:,=0),result=Math.sqrt(data3);%,的平方根是:,请输入一个整数,代码,4,(最终版):,=0),result=Math.sqrt(data3);,%,的平方根是:,请输入一个正数,请输入数字字符,forward,动作标签,格式:,作用,:,从该指令处停止当前页面的继续执行,而转向其他,JSP,页面。,程序分析,:,forward.jsp,0.5),%,param,动作标签,格式:,作用:,该标签可以与,jsp:forward,或者,jsp:include,标签一起使用,可以将,param,标签中的值传递到,include,指定或者,forward,指令要加载,/,转向的页面中。,您传过来的数值是,:,项目引入,网上调查,新建工程,页面设计:,index.htm,、,newsselect.jsp,、,newsok.jsp,预备知识,session,内置对象,Cookie,:,是一条极为短小的信息,能够被网站自动地放置在一台电脑的,硬盘,中。通过,Cookie,,网站可以识别你是第一次访问,或是又一次访问它。,会话:,从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开服务器结束,成为一个;,Session,用来保存客户端状态信息,;,客户端的每次访问都把上次的,session,记录传递给,Web Server,;,Web Server,读取客户端提交的,session,来获取客户端的状态信息;,session,常用方法,public void setAttribute(,String key,Object obj);,将,Object,指定的对象,obj,添加到,session,对象中,并为添加的对象指定一个索引关键字;,public Object getAttribute(,String key,);,获取,session,对象中含有关键字是,key,的对象,由于任何对象都可以添加到,session,对象中,取回对象时,应强制转化为原来类型。,session.getId();,获取,session,对象的编号,类似方法,:,session.putValue(namesex,name+sex);,String namesex=(String)session.getValue(namesex);,课堂练习:购物车程序,session_shop01.jsp,:,输入姓名,session_shop02.jsp,:,获取姓名,输入商品,session_shop03.jsp,:,显示姓名、商品,application,对象,生命周期:,服务器启动,服务器关闭,所有客户的,application,对象都是同一个。,例如:,聊天室程序、计数器程序、留言板程序,。,所有客户共享一个,application,对象,常用方法:,getAttribute(String name),setAttibute(String name,Object value),拓展提高:留言板程序,用表单,制作的,留言板,第一个页面,申明一个,Application,对象存储客户,的留言。,第二个页面,取出并显示,Application,中,的信息。,第三个页面,application_submit.jsp:,留言板页面,application_messagePane.jsp,:获取留言,application_showMessage.jsp,:显示留言,out,对象,表示输出流,javax.servlet.jsp.JspWriter,类的实例,使用,write(),、,print(),和,println(),方法,JSP,页面,out,对象,客户端,创建输出流,创建输出流以显示信息,请求,输出流,在网页上显示输出流,服务器,out,对象示例,演示:示例,使用,out,对象输出,使用,out,对象进行,JSP,编程,课堂练习,:,完成一个用户注册个人资料的页面,作业,:,完成用户登录、留言程序,实现下面功能:,login.jsp,:,用户登录页面;,message.jsp,:,验证登录用户名和密码,如果用户名是:“张三”,密码是:“,123456”,,则显示留言页面,否则,返回登录页面。,view.jsp,:,显示留言内容,包括:主题,日期,内容等。,总结,JSP,表达式包括在,内;,java,程序包含在,内;声明包含在,内,JSP,指令共有三种类型,即,page,、,include,和,taglib,。,JSP,指令包括在,内,page,指令用于设置,JSP,页面的属性;,include,指令用于在,JSP,页面嵌入其他文件;,forward,动作标签用于页面跳转。,JSP,中的内置对象:,request,、,response,、,out,、,session,、,application,总结,JSP,隐式对象一般分为输入,/,输出对象、,作用域通信对象、,Servlet,对象 和,错误对象四类,JSP,中的隐式对象包括,page,、,config,、,request,、,response,、,out,、,session,、,application,、,pageContext,和,exception,JSP,定义的作用域包括,page,、,request,、,session,和,application,JSP,动态,Web,技术,深圳职业技术学院软件技术专业,JSP,文件操作,内容提要,4,学习目标,1,2,3,5,文件管理器,网络日记本,文件上传,在线测试系统,学习目标,掌握,File,类及其常用方法;,使用文件流进行文件的在线读写;,掌握文件上传下载的应用开发技术。,JSP,文件操作,概念和意义,操 作,使 用,File,类及常用方法,字符流及常用方法,文件和目录操作,文件读写,文件管理器,网络日记本,字符过滤流,文件上传下载,文件上传,在线测试,File,类,什么是文件?,文件可认为是相关记录或放在一起的数据的集合,File,类涉及文件的创建、删除、获取属性等操作,不涉及对文件进行读写操作,File,(,String path,),File(String,path,,,String name),File(File dir,,,String name,),File,类,构造方法,File,类应用编程,File,类,物理文件或目录,构造文件对象,操作文件或目录的属性,(路径、权限、日期和时间等,),文件管理器,项目分析,获取输入,创建,File,对象,request,对象的,getParameter(),方法,创建目录,mkdir(),,创建文件,createNewFile(),,删除目录和文件,delete(),;,判断是否创建,/,删除成功,exists(),方法,项目实训,要求,输入文件或目录路径;,选择操作类型,选择文件类型,输入文件或目录名称,操作,网络日记本,预备知识,字符流类,Reader,类,Writer,类,BufferedReader,和,BufferedWiter,类,字符过滤流,对字符流重新“组装”,数据以块为单位,提高效率;,用,BufferedReader,读文本文件,构造一个,BufferedReader,对象,FileReader fr=new FileReader(mytest.txt);,BufferedReader br=new BufferedReader(fr);,利用,BufferedReader,的方法读取文本文件的数据,br.readLine();/,读取一行数据,返回字符串,关闭相关的流对象,br.close();,fr.close();,用,BufferedWriter,写文本文件,构造一个,BufferedWriter,对象,FileWriter fw=new FileWriter(mytest.txt);,BufferedWriter bw=new BufferedWriter(fw);,利用,BufferedWriter,的方法写文本文件,bw.write(“hello”);,相关流对象的清空和关闭,bw.flush();,fw.close();,演示:示例,项目分析,获取系统时间,Date,类的,toLocaleString(),方法,获取目录绝对路径,getServletContext().getRealPath(“/”),读取,/,写入数据,FileReader,、,FileWriter,文件字符流,追加写入内容,FileWriter(String name,Boolean append),课堂实训,输入,5,名学生信息,写入文件,读取信息,文件上传,预备知识,表单的,ENCTYPE,属性,文件上传原理,request,调用,getInputStream(),获得一个输入流,;,处理数据流,读入客户上传的全部信息;,分析参数和数据,将文件数据进行存储。,File,类型表单,文件域,项目实现,上传页面设计,上传实现,项目功能改进,选择图片,图片上传,显示图片,注意:在一个表单中如果有,ENCTYPE=“multipart/form-data”,属性,,则不能接收除,type=File,外的其他表单元素类型,使用,jspSmartUpload,上传下载,一个可免费使用的全功能文件上传下载组件,安装组件,表单要求,上传页面设计,上传处理页面,下载链接页面,下载处理,综合实例,在线测试系统,试题使用记事本存储,每道试题用,“,#,”,开始,总结与提高,File,类用于访问文件系统,流是指一连串流动的字符,是,以先进先出方式发送信息的通道,流可以分为输入输出流,也可以分为字节流和字符流,运用,BufferedReader,和,BufferedWriter,也可以读写文本文件,且性能较高,文件上传和下载,JSP,动态,Web,技术,深圳职业技术学院软件技术专业,JSP,数据库访问技术,内容提要,4,学习目标,1,2,3,5,登录注册模块,信息浏览模块,后台管理模块,在线投票系统,学习目标,掌握,JDBC,连接数据库技术,掌握在,Web,页面实现数据查询、修改、增加、删除技术,掌握数据分页显示,了解网站后台的开发和管理,JSP,数据库访问,概念和意义,操 作,使 用,JDBC-ODBC,桥,数据库操作知识,数据库连接,数据库操作,学生信息系统,在线投票系统,数据分页显示原理,分页显示,学生信息系统登录注册模块,登录注册模块分析,预备知识,JDBC,JDBC(Java DataBase Connectivity):,JDBC,是执行,SQL,语句的,API,:是第一个标准化地把关系数据库和,Java,程序集成到一起的尝试,;,与一个数据库建立连接;,向数据库发送,SQL,语句;,处理数据库返回的结果。,客户,机,Java applet,或,java,应用,中间件,业务规定,客户机库,SQL,请求,请求结果,存储器,数据库,服务器,存储器,加载桥接器驱动程序,Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);,Class,是包,java.lang,中的一个类,该类调用静态方法,forName,就可以建立桥接器。,注意:处理异常。,try,Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);,catch(ClassNotFoundException e),连接到数据库,使用,java.sql,包中的,Connection,类声明一个对象;,使用,DriverManager,类调用静态方法,getConnection,创建这个连接对象,Connection con=DriverManager.getConnection(“jdbc:odbc:,数据源名字”,”login name”,”password”);,假设数据库,students,的数据源的名称为,sun,建立的方法为:,try,Connection con=DriverManager.getConnection(jdbc:odbc:banji);catch(SQLException e),连接到数据库,向数据库发送,SQL,语句,用,Statement,声明一个,SQL,语句对象;,调用连接数据库的对象,con,调用方法,createStartment(),创建,SQL,对象;,try,Statement sql=con.createStatement();,Catch(SQLException e),处理查询结果,查询对象:,ResultSet,类声明的对象;,SQL,语句对象:调用方法对表查询和修改,;,ResultSet rs=sql.executeQuery(“select*from,表名”,);,多行数据显示方法:,ResultSet,对象一次只能看到一个数据行,使用,next(),方法移到下一数据行,:rs.next(),数据库连接过程,建立数据库,stuinfo,,建立数据表,user_info,建立数据源:,banji,步骤:控制面板,ODBC,数据源,系统(用户),DSN,添加,不同数据库驱动程序,完成,数据源名,选择数据库,装载驱动程序;,连接数据库;,创建,Statement,接口对象;,处理结果集,模块实现,设计首页:,index.jsp,注意:,form,的,action,属性“,login_check.jsp”;,用户名文本框:,name,属性“,name”,密码文本框:,name,属性“,password”,验证登录:“,login_check.jsp”,用户注册页面:,register.jsp,模块分析,插入文件,项目分析,保存用户名,session,对象调用,setAttribute(String key,Object value),方法,重定向,response,对象的,sendRedirect(,“,index.jsp,”,),,实现从当前页面引导到另一个页面。,课堂实训,用户登录后,点击,“,个人信息管理,”,,如图,4,所示,,该页面可对用户的密码、真实姓名进行修改,请,完成该页面设计及功能实现编码。,学生信息浏览模块,学生信息查询,分页显示,问题分析,限制非法用户登录,“login_name”,是存储在,session,中对应的保存成功登录者的帐号,如果没有在会话期内获取,session,中存储的用户名,则说明没有正确登录,登录失败,使用,response,对象的,sendRedirect(URL url),重定向到,index.jsp,页面,信息查询实现,数据库设计,功能实现,“main.jsp“,设计查询页面,编程,程序分析,模糊查询用,用,SQL,语句操作符,like,进行模式般配,使用“,%”,代替一个或多个字符,用一个下划线“,_”,代替一个字符,当查询值为字符类型时,需要加“,”,结果集,Result,的,next(),方法可以顺序查询,最初游标定位在第一行之前,当游标移动到最后一行后返回,false,获取记录集,使用,ResultSet,对象的,rs.getXxx(),方法获取对应字段的数据,分页显示算法思想,原理解析:,假设总记录为,m,,每页显示数量是,n,那么总页数的计算公式是:,如果,m,除以,n,的余数是,n,,总页数等于,m,除以,n,的商加,1,;,如果,m,除以,n,的余数等于,0,,总页数等于,m,除以,n,的商。,即:总的页数,=(m%n)=0?(m/n)(m/n+1),;,如果准备显示第,p,页的内容,应当把游标移动到第,(p-1)*n+1,条记录处。,预备知识,游动查询,Statement statement=con.createStatement(int type,int concurrency);,type,的取值决定滚动方式,取值还可以是:,TYPE_SCROLL_SENSITIVE,指针能够向前或向后自由移动,其他,ResultSet,对象变动指针时,会影响指针的位置;,TYPE_SCROLL_INSENSITIVE,指针能够向前或向后自由移动,其他,ResultSet,对象变动指针时,不会影响指针的位置。,Concurrency,取值决定是否可以用数据集更新数据库,CONCUR_READ_ONLY:,不能用结果集更新数据库中的表,;,CONCUR_UPDATEABLE:ResultSet,对象中的数据可以读也可以修改,不能用结果集更新数据库中的表,;,程序分析,清除空格,trim(String),方法,if(showPage1)%,&select=&query=,地址链接参数传递,课堂实训,完成密码重设功能,后台管理模块,数据维护,程序分析,信息添加,String condition=insert into Student values(+number+,+name+,+sex+,+age+,+classes+);,sql.executeUpdate(condition);,信息删除,String condition=delete from Student where id=+id;,sql.executeUpdate(condition);,信息修改,String,condition=update student set number=+number+,+name=+name+,+sex=+sex+,+age=+age+,class=+classes+where id=+id;,sql.executeUpdate(condition);,课堂实训,新闻浏览,新闻分类,栏目管理,系统验证,新闻管理,综合实例,在线投票系统,投票模块,survey.jsp,计数模块,vote.jsp,显示模块,view.jsp,程序分析,投票率:,%,得:,票 共:,票,ResultSet rs=sql.executeQuery(select*from vote);,String rb=request.getParameter(type);,String condition=Update vote Set numb=numb+1 where id=+rb;,sql.executeUpdate(condition);,投票内容显示,投票信息更新,投票率用百分比和条形图显示,Math.floor(),:返回不大于参数的最大整数,课堂实训,管理员身份登录验证,管理页面,新增投票项目模块,删除投票项目模块,修改投票项目模块,总结与提高,数据库连接对动态网站来说是最为重要的部分,,java,连接数据库的技术是,JDBC,java,可以通过,JDBC,和,JDBC-ODBC,桥访问关系型数据库。,JDBC,是一种可用于,SQL,语句的,java API,,它由一些,java,语言编写的类和界面组成,很多数据库系统带有,JDBC,驱动程序,,java,程序就通过,JDBC,驱动程序与数据库相连,执行查询、提取数据等,而这些具体操作必须由,SQL,命令来完成。,JSP,动态,Web,技术,深圳职业技术学院软件技术专业,JSP,与,JavaBean,内容提要,4,学习目标,1,2,3,5,猜数游戏,班级新闻网,班级相册,总结提高,学习目标,了解,JavaBean,的基本组成与工作原理,掌握,JavaBean,的程序抽象、编写,掌握,JSP,中调用,JavaBean,的方法,JavaBean,技术,设 计,调 用,使 用,JavaBean,的结构,JavaBean,的属性,使用,JavaBean,获取,JavaBean,的属性值,猜数游戏,班级新闻网,JavaBean,的方法,修改,JavaBean,的属性值,班级相册,猜数游戏,游戏开始,产生随机数,填写数字,一次次与随机数比较,验证逻辑交给,JavaBean,处理,组件,思索:,之前的,jsp,程序的编写中,html,与,java,代码之间的关系是什么?,程序设计技术以及工具产生的原因?,如何让,HTML,代码与,java,代码进一步分离,?,软件组件,指一个个具有一定功能的,且被封装好的软件模块,形象地称为软件黑匣子。,组件保存的状态,也成为属性,一定条件下,组件还可以触发一些事件,外部调用组件的方法完成一定任务,JavaBean,技术,JAVABEAN,是一种基于,JAVA,的软件组件,;,类似于,Microsoft,的,COM,组件的概念,!,JavaBeans,特点:,可以实现代码的重复利用;,易编写、易维护、易使用;,跨平台,JAVABEAN,的模型,package 包名;,public class 类名,构造方法();,属性(Property);,方法(Method);,分析:编写JavaBeans就是编写一个Java的类,这个类创建的一个对象称作一个beans。,JavaBean,文件编写要点,类名称与保存的文件名称必须是一致的,同时,类必须声明为公有类,类中方法的访问属性都必须是,public,;,构造函数的名称必须与类的名称一致,主要用来初始化,无参数输入;,Javabean,类中的方法,:,类的成员名字是,xxx,获取和更改,xxx,形式如下,:,getXxx(),:获取属性,xxx;,setXxx(),:修改属性,xxx;,boolean,型属性,允许用,is,代替,get,和,set,类中方法的访问属性必须是,public,类中构造方法必须是,public,并且是无参数,;,属性值设定,/,读取方法,public void,set,设定方法名称,(数据类型,参数,),this.,变量,=,参数;,例如:,public void setSQL(String SQL),this.JavaSQL=SQL;,语法结构:,public void get,读取方法名称(),return this.,变量,=,参数;,例如:,public void getSQL(String SQL),return this.JavaSQL;,注意:,属性值的读取方法名称一般以,get,开头,加上方法名称,设 定,读 取,JSP,中使用,JavaBean,语法格式,:,jsp:useBean id=“,给,bean,起的名字”,scope=“bean,有效范围”,class=“,创建,beans,的类”,“|”,表示可选部分,;,例如,:,设置属性值,:girl.setRadius(100);,获取属性值,:,项目实现,新建工程;,新建,Web,应用;,创建,JavaBean:GuessNumber.java,;,设置属性:,answer,(实际答案)、,guessNumber(,用户猜测数,),、,guessCount(,猜数次数,),setGuessNumber,方法(业务逻辑),getGuessNumber,方法,getGuessCount,方法,getResult,方法,setAnswer,方法,getAnswer,方法,编写,Jsp,文件(使用,JavaBean,),index.jsp,Guess.jsp,程序解析,定义一个,JavaBean,的实例,setProperty,动作标签,设置,beans,属性的值,jsp:setProperty name=beans,的名字,property=beans,的属性,value=,字符串,getProperty,动作标签,获得,beans,的属性值,JavaBean,生命周期,Scope,的取值:,Page,:,该,beans,的有效范围是当前页面,离开这个页面时,,JSP,引擎取消分配给该客户的,beans,。,Session:,该,beans,的有效范围是客户的会话期间。,Request:,该,beans,的有效范围是,request,期间,Forward,跳转的页面之间共享该,bean;sendRedirect(),重定向不行,;,Application:,beans,的生命周期最长,可以和,jsp,引擎相当,所有客户共享,只有当重新启动,Tomcat,时,该,Tomcat,下的所有,jsp,程序共享该范围的,bean;,班级新闻网,新闻栏目,新闻列表,新闻内容,后台管理,管理员登录,新闻添加,新闻修改、删除,JavaBean,把常用的数据库功能都封装起来,例如打开数据库、关闭数据库、执行查询、插入数据,项目实现,前台,设计数据库,数据表,mynews,(,p150,),设计,JSPnews.jsp,、,v
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服