基于JSP_Servlet_JavaBean构建Web应用系统第十章 高级JDBC技术在新闻发布系统中的应用
- 格式:ppt
- 大小:2.26 MB
- 文档页数:10
《基于JSP、Servlet、JavaBean Web应用系统开发》课程标准一、课程基本信息二、课程性质和任务《基于JSP、Servlet、JavaBean的Web应用系统开发》是计算机软件技术专业(09级三年制)的一门专业课,是JavaEE核心技术之一。
该课程是学生掌握Java Web编程技术知识的重要的理论教学环节,开设一学期,总的课时时数为64学时,共4学分。
《基于JSP、Servlet、JavaBean的Web应用系统开发》的主要学习任务是学习Java Web 编程技术,使学生能够掌握并应用Servlet以及会话跟踪技术,JSP技术,JSTL标签、JavaBean、EL表达式,高级JDBC技术等来开发复杂应用程序。
三、课程教学目标整个课程采用案例贯穿教学的模式。
课程结束后,将完成一个基于JSP、Servlet、JavaBean 的Web应用系统,使高等职业技术学院计算机系软件技术专业的学生了解并掌握Java web 编程的相关基础知识与技能,能够熟练开发基于B/S结构的动态网站,培养学生实际的软件开发能力,为学生未来从事专业方面实际工作能力奠定基础。
(一)知识目标1)JavaEE平台2)Servlet基础、会话跟踪技术、MVC设计模式3)高级JDBC技术:数据库连接池4)JavaBean、EL、JSTL(二)能力目标1)能够运用Servlet进行MVC模式的Web应用的开发;2)能够运用JSP、Servlet、JavaBean结合EL表达式和JSTL标签库开发稍微复杂的B/S应用系统或动态网站。
(三)素质目标1)能够把理论知识与应用性较强实例有机结合起来,培养学生的专业实践能力以及分析、解决实际问题的能力。
同时使学生对专业知识、职业能力有深入的理解,尤其使学生对动态网站的开发的理念和实际技能有明显提高。
2)通过知识教学的过程培养学生爱岗敬业与团队合作的基本素质。
四、课程内容与要求五、教学基本条件为了保证理论与实际操作密切结合,本课程要求学生每人一台电脑,装有eclipse,myclipse,tomcat服务器,sql server数据库或者相应其他软件,以便于学生动手操作。
一、Web应用程序开发阶段1.利用Servlet阶段,使用request和response对象接收和反馈客户端的请求。
它是开发Web应用程序的基石,在Web应用程序中,Servlet是一个基本的Web组件,开发Web应用的许多技术,如JSP及一些Web层的框架都是建立在其基础之上。
Servlet 的缺点是在Java代码中兼有业务和逻辑,不利于程序设计和界面开发。
2.JSP技术阶段,JSP是在标记语言中以<%@…%>的形式嵌入Java代码,使得页面会话可以调用后台Bean来处理事件,但是仍然没有将表示层和业务层分割开来,往往是互相嵌套,这就要求美工人员要懂技术,技术人员要懂美工,不利于程序的维护。
随后JSP引入了标签库,来分离业务逻辑,经过SUN公司的标准化之后,就形成了JSTL(Java Standard TabLibrary)。
JSTL对于页面显示以及显示逻辑的弱耦合已经实现,方便了Web的开发。
但随着Web应用程序规模的不断扩大,如今现有的JSTL技术已越来越无法满足开发者的需求,复杂的业务流程和页面之间的交互都需要程序员自己编写代码实现,加大了开发难度。
3.框架开发阶段,所谓框架就是可重用的,半完成的应用程序,可以用来产生专门的定制程序。
为了适应新的开发环境,一个中间件厂商开发出了像Struts、Spring、Hibernate以及后来出现的JSF等框架。
这些框架为Web应用程序开发提供了模板,开发人员只要配置好相应的参数就可以完成对Web应用程序的开发。
更重要的是,这些框架在不长的时间内相互融合,现在的Web应用程序开发都用到了一种或多种框架。
基于JCP制定的Web应用框架标准而开发的JSF框架技术,采用了模型—视图—控制器(MVC)的设计模式,凭借良好定义的请求处理生命周期和丰富的组件层次结构,大大提高了基于Java的Web用户界面开发的简易性。
MVC框架模型如图1所示。
JSF技术提供了一个表现和行为彻底隔离的能力,使得先前只有在客户端UI体系(DOM)下完成的细粒度隔离移到了服务器端,客户端只需解释标准的HTML语法,从而达到了完全瘦客户端的目标。
学习使用JSP和Servlet进行JavaWeb开发JSP(JavaServer Pages)和Servlet是JavaWeb开发中的关键技术。
通过使用JSP和Servlet,开发人员能够构建功能强大且交互性强的Web应用程序。
本文将对学习使用JSP和Servlet进行JavaWeb开发进行详细介绍,并按以下几个章节进行划分:JSP入门、Servlet入门、JSP和Servlet的结合、JSP和Servlet的进阶应用和最佳实践。
第一章:JSP入门JSP是一种基于Java语言的服务器端技术,通过在HTML中嵌入Java代码,实现动态生成Web页面。
要使用JSP进行开发,首先需要了解JSP的基本语法和特性。
JSP页面的扩展名为.jsp,可以在其中嵌入Java代码。
JSP中的Java代码块用<% %>包裹,可以在其中编写Java逻辑。
同时,JSP还支持使用表达式<%= %>输出变量的值,以及使用JSP标签库实现更复杂的功能。
第二章:Servlet入门Servlet是服务器端的Java程序,用于处理客户端请求并生成响应。
要使用Servlet进行开发,需要了解Servlet生命周期、Servlet 配置和Servlet映射等基本概念。
Servlet生命周期包含初始化、服务和销毁三个阶段。
在初始化阶段,可以进行一些资源的初始化操作;在服务阶段,处理客户端请求并生成响应;在销毁阶段,释放资源。
第三章:JSP和Servlet的结合JSP和Servlet可以很好地结合起来,实现更灵活和强大的Web应用程序。
通过在JSP中嵌入Servlet,可以将复杂的业务逻辑封装在Servlet中,使得JSP页面更加简洁和易于维护。
在JSP页面中使用JSP动作指令和JSTL等技术,可以实现对Servlet的调用,并将处理结果展示在页面上。
同时,通过JSP的页面传值机制,可以将页面中的数据传递给Servlet进行处理。
登陆实例(JSP+Servlet+JavaBean)登陆实例(JSP+Servlet+JavaBean) 转登陆是我们在实际应⽤中经常⽤到的,我在这边举个简单的登陆例⼦,作为抛砖引⽟吧!程序结构如下:采⽤JSP+Servlet+JavaBean1.数据库结构(为简便这边采⽤access,实际应⽤中建议采⽤其他数据库如MySQL,MSSQL等) ==============================uname ⽤户名⽂本型pword 密码⽂本型初始数据uname :ceun pword :123==============================2.视图(JSP)<%...@page contentType="text/html"%><%...@page pageEncoding="UTF-8"%>3.Servletpackage com.ceun;import java.io.*;import /doc/7751f3262f60ddccda38a003.html .*;import javax.servlet.*;import javax.servlet.http.*;import /doc/7751f3262f60ddccda38a003.html erBean;/** *//**** @author ceun* @version*/public class CheckServlet extends HttpServlet ...{/** *//** Processes requests for both HTTP GET and POST methods.* @param request servlet request* @param response servlet response*/protected void processRequest(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ...{response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();String name=request.getParameter("uname");String pword=request.getParameter("pword");out.println("");try...{UserBean user=new UserBean();if(user.check(name,pword))out.println("登陆成功");elseout.println("登陆失败");}catch(Exception e)...{}out.println(" ");out.close();}///** *//** Handles the HTTP GET method.* @param request servlet request* @param responseservlet response*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException ...{processRequest(request, response);}/** *//** Handles the HTTP POST method.* @param request servlet request* @param response servlet response*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException ...{processRequest(request, response);}/** *//** Returns a short description of the servlet.*/public String getServletInfo() ...{return "Short description";}//}4.JavaBeanpackage com.ceun.bean;import java.sql.*;import com.ceun.util.DbUtil;/**//**** @author ceun*/public class UserBean ...{/**//** Creates a new instance of UserBean */public UserBean() ...{}public boolean check(String username,String password)throws Exception...{Connection con= DbUtil.connectToDb();Statement stmt=null;try...{String sql="SELECT * FROM loginInfo "+" WHERE uname='"+username+"' and pword='"+password+"'";stmt=con.createStatement();ResultSet rs=stmt.executeQuery(sql);if(rs.next()) return true;}catch(Exception ex)...{}finally...{try...{stmt.close();con.close();}catch(Exception e)...{e.printStackTrace();}}return false;}}5.实⽤类(⽤于连接数据库)package com.ceun.util;import java.io.*;import java.sql.*;/**//*** DbUtil is a utility class to create* a connection to our sample database.*/public class DbUtil ...{static String driverName="sun.jdbc.odbc.JdbcOdbcDriver";static String dbUrl="jdbc:odbc:";public DbUtil() ...{}public static java.sql.Connection connectToDb(String databaseName)throws Exception ...{Connection connection=null;String connName = dbUrl+databaseName;Class.forName(driverName).newInstance();connection = DriverManager.getConnection(connName);return connection;}public static java.sql.Connection connectToDb()throws Exception...{return (connectToDb("logInfo"));}}6.应⽤配置⽂件CheckServletcom.ceun.CheckServletCheckServlet/CheckServlet 30index.jsp。
第一章JavaEE概述1.使用JSP开发程序存在如下弊端。
由于大量的显示代码和业务逻辑混淆在一起,不利于程序的维护和扩展。
2.JavaEE的体系结构:表示层、中间层、数据层,三层结构的好处如下。
2.1 一个组件的更改不会影响其他两个组件。
2.2 由于表示层和数据库层相互独立,因而可以方便的扩充表示层,使系统具有的良好的可扩展性。
2.3 代码重复减少,在3个组件之间尽可能的共享代码。
2.4 良好的分工和协作。
这将使不同的小组能够独立地开发应用程序的不同部分,并充分发挥各自的长处和优势。
3.GET、POST请求的区别如下。
3.1 GET提交数据在地址栏内显示,不安全;而POST不显示,相对安全。
3.2 GET提交数据量有限制,而POST没有。
3.3 GET请求的页面可以设置为书签或使用邮件发送;而POST不可以。
4.HTTP协议是无状态协议,当浏览器向服务器发送一个请求后,服务器对该请求作出响应,当响应结束后,就断开连接,彼此不保存连接信息(一次请求有效)。
第二章Servlet基础1.什么是Servlet?编程角度:实现了Servlet接口的Java对象;功能角度:是在服务器上运行,以处理客户端请求,并作出响应的程序;2.Servlet的结构:Javax.servlet.* (跨协议的Servlet)Javax.servlet.http.* (HTTP协议)3.Servlet编程模式的步骤:a)获取请求参数b)处理业务逻辑c)根据处理结果,返回响应4.Servlet的生命周期a)加载和实例化:Servlet容器创建Servlet的实例b)初始化:该容器调用init()方法c)服务:如果请求Servlet,则容器调用service()方法d)销毁:销毁实例之前调用destory()方法5.Request的常用方法如下。
a)request.getParameter(“param”); 获取请求参数b)request.setCharacterEncoding(“GBK”); 设置请求参数的字符编码格式c)request.setArrtibute(“loginname”,user);在request作用域内保存数据的方法6.response的常用方法a)response.setContentType(“text/html;charset=GBK”). //设置响应的编码格式b)response.sendRedirect(“url”); //重定向7.实现页面的跳转有两种方式:转发和重定向。
基于JSP /Servlet的Web应用框架的设计与实现周云,余青松,敬宗儒(华东师范大学计算中心,上海200062)摘要:Web应用程序的开发过程中存在着Framework的应用。
这些Framework使开发过程十分规范。
它们自动地处理了部分非业务逻辑的过程.从而使得程序员的主要精力专注于业务逻辑的实现。
文中设计并且实现了一个简单的Framework模型,实现了部分的自动化处理。
该模型的构建,验证了采用最基本的Java语言工具以及设计方式实现Framework的可能性。
关键词:Web应用框架;MVC;设计和实现0 .引言在开发Web应用程序的过程中,特别是JSP应用程序,到处充斥着Framework 的应用。
这些Framework的技术相当成熟,规范十分完整。
它们对于程序员的编码规范以及后台Model实体的管理相当完善。
文中关注的重点是如何用最基本的Java语言工具和设计方式来设计和实现一个带有自动化操作功能的Framework,从而深人理解一些Framework内在处理机制。
1. Framework概述人们需要一个Framework来对软件开发提供支持,并且对程序员所书写的代码进行规范。
一些公共的非逻辑的处理过程应该做成共通模块,一些不好的编成习惯应该得到限制和纠正。
同时,与数据库打交道的数据Model也应该得到妥善管理。
另外,这些操作的共通特性都是高于模块级别但又属于代码级别的。
所以,应该设计出一个类似于规约性质同时又是以实际代码形式出现的管理体制。
于是,Framework便诞生了。
目前流行的Framework有很多,比如Struts,印ring,JS F等等[I]。
它们使JSP程序员从散兵游勇转化为了正规军。
它们的共同点都是拥有自动化操作“前端”以及资源管理的“后端”.笔者参照Struts的前端自动化操作过程设计并且实现了一个Framework模型,希望借此深入了解一些Framework的内部实现机制。
JSP/Servlet/JavaBean第一章.JavaEE的概述1.Java平台有三个版本:JavaME(Java Platform Micro Edition,Java微软版):适用于小型设备和智能卡;JavaSE(Java Platform Micro Edition,Java标准版):适用于桌面系统JavaEE(Java Platform Enterprice Edition,Java企业版):适用于企业级应用.2.框架框架:即Framework,可以理解为某种应用的半成品,框架就是一组组件,供用户选用,完成自己的系统。
1.JavaEE和框架的关系:JavaEE是基础,框架技术是在JavaEE的基础上形成的,而应用程序是在框架的基础上创建的。
JavaEE是一个开发分布式企业级应用的规范和标准。
框架大体可分为:SSH(Spring,struts,Hibernate)2.JavaEE的技术内容:JavaEE体系结构可分为:表示层、中间层、数据层;那么JavaEE技术也对应体系结构,可分为表示层技术、中间层技术、数据层技术。
(1).表示层技术;HTML、JavaScript、AjaxAjax技术并不是一种技术,而是几种技术的整合。
Ajax的主要功能是异步地向服务器端发送请求,处理数据或者根据返回的数据重新显示页面。
(2).中间层技术:JSP、Servlet、JSTL、JavaBean以及中间层的框架技术Struts框剪,Struts主要扩展了ServletJavaBean:JavaEE的模型组件,可以分为两种,分别为:封装业务逻辑的JavaBean和封装值的JavaBean。
(3).数据层技术:JDBC技术:JDBC(Java Database Connetivity),Java数据库连接数据层框架:Hibernate为我们提供了以对象的形式操作关系型数据库数据的功能。
系统集成技术:(Web Service)JAX-WS技术:JAX-WS(Java API for XML Web Service)是JavaEE平台的重要组成部分JAX-WS简化了使用Java技术开发Web服务的工作。
Tomcat下JSP、Servlet和JavaBean环境的配置和应用建立一、开发环境配置1、下载j2sdk 和tomcat到sun 官方站点(/javase/downloads/index_jdk5.jsp )下载j2sdk ,注意下载版本为Windows Offline Installation 的SDK ,同时最好下载JDK 5.0 Documentation ;到tomcat 官方站点(/dist/jakarta/tomcat-5/ )下载tomcat (下载最新 5.5.x 版本的tomcat )。
2、安装j2sdk 和tomcat执行j2sdk 和tomcat 的安装程序,然后按默认设置进行安装即可。
3、配置j2sdk 和tomcat3.1、设置j2sdk环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk 安装在C:\Program Files\Java\jdk1.5.0_09 ):JAVA_HOME=C:\Program Files\Java\jdk1.5.0_09 classpath=.;%JAVA_HOME%\lib\dt.jar;%JA VA_HOME%\lib\tools.jar (.;一定不能少,因为它代表当前路径)path=%JAV A_HOME%\bin可以写一个简单的java 程序来测试J2SDK 是否已安装成功:public class Test{public static void main(String args[]){System.out.println("This is a test program.");}} 将上面的这段程序保存为文件名为Test.java 的文件。
然后打开命令提示符窗口,cd 到你的Test.java 所在目录,然后键入下面的命令:javac Test.java java Test 此时如果看到打印出来This is a test program. 的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。