- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
四、Servlet程序开发实例(1) 付小龙fuxiaolong@ Servlet程序开发实例的主要内容 4.1 生成动态HTML 4.2 接收用户的输入 4.4 使用Eclipse开发Web应用 4.3 使用Web.xml配置应用 动态HTML的生成 Servlet只是封装了Web应用处理的外壳,负责接收用户请求,给用户反馈响应; 响应的结果以HTML的形式进行展现,HTML只是展响应结果的一个样式描述; 如何处理用户的请求,仍需要程序逻辑来实现,使用标准的Java程序完成相应的逻辑处理,完成用户的请求,按照用户的需求反馈正确的响应,这才是Web应用核心; 动态HTML的生成 动态HTML生成的实例-九九乘法表 核心业务逻辑是乘法表的计算 for (int i=1;i10;i++){ for (int j=1;ji+1;j++){ } } 将计算的结果通过以HTML的形式输出 out.println(HTML\n + HEADTITLE九九乘法表/TITLE/HEAD\n + BODY BGCOLOR=\#FDF5E6\\n ); for (int i=1;i10;i++){ for (int j=1;ji+1;j++){ out.println(i+*+j+=+i*j+ ); } out.println(BR); } out.println(/BODY/HTML); 动态HTML的生成 通过Servlet处理用户HTTP形式的请求和响应 public class DynamicServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding(GBK); response.setContentType(text/html; charset=GBK); PrintWriter out = response.getWriter(); out.println(HTML\n + HEADTITLE九九乘法表/TITLE/HEAD\n + BODY BGCOLOR=\#FDF5E6\\n ); for (int i=1;i10;i++){ for (int j=1;ji+1;j++){ out.println(i+*+j+=+i*j+ ); } out.println(BR); } out.println(/BODY/HTML); } } 动态HTML的生成 接收用户的输入 用户输入的处理由客户端和服务器端两部分完成 客户端通过表单等方式采集并提交用户的输入; 服务器端的Servlet对客户端提交的表单数据进行分析和封装; 业务逻辑通过Request对象的相应方法获得用户输入并进行处理; 采集用户输入的三种方式 固定参数输入 动态参数输入 URL参数输入 接收用户的输入 客户端通过表单采集用户输入 FORM表单 ACTION标明处理的程序 GET/POST标明传输的方式 INPUT/SELECT/CHECKBOX等输入方式 服务器端Servlet中读取表单数据 只要简单调用HttpServletRequest的getParameter方法,提供表单中的参数名做为参数即可获取用户相应的输入; Request.getParameter(String arg):String; 参数名区分大小写; 返回类型只能是String,其他类型需要转换; 固定参数传输 客户端表单 服务器端程序 FORM ACTION=/servlet/SingleParameter METHOD=GET 你的姓名: INPUT TYPE=TEXT NAME=userNameBR 你的年龄: INPUT TYPE=TEXT NAME=userAgeBR 你的性别: SELECT SELECT=1 NAME=userSex OPTION男/OPTION OPTION女/OPTION /SELECTBR CENTERINPUT TYPE=SUBMIT/CENTER /FORM out.println( BODY
文档评论(0)