java ee ; j2ee视频教程 - jsp第1讲
作者: 韩顺平 (一)jsp第1讲 1 java EE核心十三种技术介绍 2 java EE程序员修炼成精的法门(卖油翁的故事) 3 jsp版本的用户管理系统演示 4 jsp的概述(基本语法) 5 jsp的运行原理(还是hello.jsp) 6 jsp版的计算器 6.1 jsp中如何使用js(javascript)和css技术.. (二)java EE核心十三种技术介绍 Java ee是一个开发的平台,它包括的技术很多,主要包括十三种技术. 在开发时选择地进行使用,并不是要把所有的技术就去工作。只会几种技术就可以从事javaee的开发,正好比如说中国的十八般武艺,最好是什么都会~ 基础是java servlet jsp !!! 基础要像大象一样扎实!不要想水中芦苇,没有跟! (三)java EE程序员修炼成精 十三种技术规范: 1、Jdbc 2、java命名与目录接口(jndi)很少用了 3、企业java Bean (Enterprise Java Bean EJB 3.0 以前的版本也要回!因为之前的开发用之前的版本,现在要维护!) 4、jsp(本课程讲) 5、servlet (之前讲过了) 6、corba(很少用,但日本人喜欢用!) 7、java的事物体系(JTA)/java事务服务(JTS)现在很少用 8、javaMail(要回)和javaBeans激活架构(JAF ) 9、java信使服务(JMS)短信那边用 10扩展标记语言(XML很重要!相当有用) 11、Struts + hibernate + Spring (SSH)很重要! 卖油翁的故事:我亦无他唯手熟尔! 原文: 陈康肃公尧咨善射,当世无双 ,公亦以此自矜。尝射于家圃,有卖油翁释担而立,睨之,久而不去。见其发矢十中八九,但微颔之。 康肃问曰:“汝亦知射乎?吾射不亦精乎?”翁曰:“无他, 但手熟尔。”康肃忿然曰:“尔安敢轻吾射!”翁曰:“以我酌油知之。”乃取一葫芦置于地,以钱覆其口,徐以杓酌油沥之,自钱孔入,而钱不湿。因曰:“我亦无他, 惟手熟尔。”康肃笑而遣之。 此与庄生所谓解牛斫轮者何异? 熟能生巧! (四)jsp版本的用户管理系统演示 学ASP比学JSP容易,因为ASP入门容易~ 只是用jsp技术。 在学习jsp技术过程中,为了让大家能够迅速的入门,我们将servlet版本的用户管理系统 ---------- > 改为jsp版本的用户管理系统,在这个系统中,我们只使用jsp技术来完成(model1模式【什么事模式呢~: 鲁智深(打架乱打) 林冲(打架有套路,所以要学习套路,套路就是模式,)以前编程没有套路就乱打,我们不能乱打要有套路。 MVC :模型(Model),视图(View)和控制Controller)】开发)。 并且在后面可以通过jsp版的用户管理系统的改写,可以非常自然的过渡到mv设计模式,更进一步过渡到mvc设计模式。 开发工具将使用:eclipse+myeclispe (五)jsp的概述(1) 为什么会出现jsp技术? Servlet出现得早,servlet很轻大,但是servlet又一个致命的缺点:用servlet做界面十分吃力。。html代码是嵌入到println中打出来的。。。 Sun推出了jsp。。。jsp做界面比servlet好做多了~ Jsp出现不是对servlet的否定而是对servlet的补充,jsp做界面好多了~ Servlet是jsp技术的基础jsp是在servlet的基础上发展出来的。。jsp就是servlet但是servlet的基础上改进的。。 jsp程序员在开发过程中,发现servlet做界面非常不好-一个公式: jsp=html+java片段+jsp标签(语法)+javascript(css)->比较综合jsp功能的强大是因为可以与javabean结合使用(即:jsp作前台(界面),javabean作后台(逻辑层)) jsp+javabean的基础上再结合servlet,就会构成mvc的开发模式. Mvc模式是目前软件公司中相当通用的开发模式,这个我们在后面将作为一个重点给大家详细的讲解。 (六) jsp的概述(2)--jsp的基本语法 (1) 指令元素 --用于从jsp发送一个信息到容器,比如设置全局变量,文字编码,引入包等 1.page指令 <%@ page contentType="text/html;charset=gb2312"%> 2.include指令 <%@ include file="filename"%> 3.taglib指令 --这个指令允许在jsp页面使用自定义的标签 <myTag:yourTag num1="123"> (七) jsp的概述(3)--jsp的基本语法 (2) 脚本元素 --在一定程度上可以理解就是java的片段scriplet 1. scriplet <% java代码 %> 2. 表达式 <%=java表达式%> <%=rs.getString(1)%> 3. declaration 声明 <%! 变量声明 %>比如:<%! int count=10%> <%! 函数声明 %> <%! int jisuan(int num){ int result=0; for(int i=0;i<num;i++){ result=result+i; } } %> (八)jsp的概述(4)--jsp的基本语法 (3) 动作元素 --动作元素是使用xml语法写的,是jsp规定的一系列标准动作, 在容器处理jsp时,当容器遇到动作元素时,就执行相应的操作. 【最常用的八大元素,必须掌握!!】 1. <jsp:useBean> //创建一个javabean实例 2. <jsp:setProperty> //给一个javabean实例设置初始值 3. <jsp:param> //给一个jsp设置参数,常常与<jsp:include>结合使用 <jsp:include file="info.jsp"> <jsp:param name="parameter1" value="parameterValue"/> <jsp:param name="parameter2" value="parameterValue"/> </jsp:include> 4. <jsp:getProperty> //取得一个javabean实例的成员变量 java入门课件 5. <jsp:include> //引入另外一个文件 6. <jsp:plugin> //使用插件 7. <jsp:forward> //转发 8. <jsp:fallback> // (九)jsp的概述(5)--jsp的九大内置对象【是jsp的核心,必须掌握!】 (1) out //向客户端输出数据,字节流 out.println(""); (2) request serlvet中的 HttpServletRequest//接受客户端的http请求 getParameter(String name); //name表示表单的参数名 getParameterValues(String name);//使用得到是String [] setAttribute(String name,Object obj);//设置名字为name的obj, 值为obj getAttribute(String name);//返回由name指定的属性值,如果不存在就返回null; getCookie(); (3) response//封装jsp的产生的回应 addCookie(Cookie cookie); sendRedirect("./welcome.jsp"); (4) session //用于保存用户的信息,跟踪用户的行为 setAttribute(String name,Object obj); getAttribute(String name); (5) application//多个用户共享该对象,可以做计数器. (6) pageContext//代表jsp页面的上下文 (7) exception//代表运行时的一个异常. getMessage(); (8) page//代表jsp这个实例本身(使用比较少) (9) config//代表jsp对应的servlet的配置.可以得到l中的参数 (十)jsp运行原理示意图 url:统一资源定位 实例就是类对象。。 jsp的运行原理 这个原理必须记住很重要的:::如果是第一次访问,jsp文件被服务器翻译成对应的java文件(servlet)然后在被编译成。Class文件并加载到内存中。。所以第一次访问速度比较慢,但是第二次访问时速度就会很快了 (十一)jsp的运行原理 我们常说,jsp技术是基于servlet的,为什么这样讲,我们通过一个jsp的小案例来说明: 写一个hello.jsp ,该hello.jsp完成的任务非常简单:就是一个当访问该jsp文件的时候,在浏览器中显示hello,世界你好!该案例主要用于讲解jsp的运行原理 jsp与servlet的关系:Jsp和serlvet是对应关系Jsp是以servlet为基础的 见图(一个简单的示意图 (十二)jsp版的计算器(1) 前面写的hello.jsp,主要是为了说明jsp的运行原理,非常的简单。 现在我们一起来完成一个稍微综合的案例---jsp版本的计算器,从而加深对jsp的认识,为下一步学习做准备。 先用两个页面来完该计算器: interface.jsp(界面) result.jsp(计算) 知识点: 1. 如何接收jsp页面提交的数据,并处理 2. jsp中如何使用java片段 3. jsp中如何使用javascript完成对数据合法性的校验 (十三)jsp版的计算器(2) 先前用两个页面来完该计算器: interface.jsp(界面) result.jsp(计算)现在,我们将两个页面合并成一个jsp页面,也就是计算和显示结果在interface.jsp全部完成! 知识点: 1. 进一步理解jsp. 2. 进一步理解request,response对象 简单的示意图 Hello.jsp <%@ page contentType="text/html;charset=gb2312" %> <html> <body> <h1>jsp1</h1> <% //\<\%\%\>中写的就是java片段 int a =0 ; int b = 9 ; int c =a + b; out.println("hello jsp!!" + c); %> </body> </html> myCal.jsp文件 <%@ page contentType="text/html;charset=gb2312" %> <html> <h1>我的计算器!</h1> <head> <script language="javascript"> <!-- //写一个函数验证用户是否空提交! function checkNum() { //判断num1是否为空 if(form1.num1.value=="") { window.alert("num1 不能为空!"); return false; } //判断num1是否是一个数. und(form1.num1.value) !=form1.num1.value) { window.alert("num1 不是一个数!!"); return false; } if(form1.num2.value=="") { window.alert("num2 不能为空!"); return false; } //判断num2是否是一个数. und(form1.num2.value) !=form1.num2.value) { window.alert("num2 不是一个数!!"); return false; } } --> </script> </head> <body> <form name="form1" action="myResult.jsp" method="post"> <hr> 请输入第一个数:<input type="text" name ="num1"><br> <select name="flag"> <option value=+>+</option> <option value=->-</option> <option value=*>*</option> <option value=/>/</option> </select> <br> 请输入第二个数:<input type="text" name ="num2"><br> <input type="submit" value="计算" onclick="checkNum()"> </form> <hr> </body> </html> myResult.jsp <%@ page contentType="text/html;charset=gb2312" %> <html> <body> <% //接受第一个,类似于servlet中的HttpServletRequest String num1= Parameter("num1"); //接受第二个 String num2= Parameter("num2"); //接受运算符 String oper =Parameter("flag"); //计算 int numi1=Integer.parseInt(num1); int numi2=Integer.parseInt(num2); int res=0; if (oper.equals("+")) { res =numi1+numi2; } else if (oper.equals("-")) { res =numi1-numi2; } else if (oper.equals("*")) { res =numi1*numi2; } else if (oper.equals("/")) { res =numi1/numi2; } //输出结果 out.println("结果是:" + res); %> </body> </html> |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论