借鉴 :http://www.jikexueyuan.com/path/javaweb
一:
J2SE是J2EE的技术基础,所以熟练掌握J2SE的内容非常重要。本阶段讲解了Java的核心语法及基本使用。
二:
JSP、PHP、ASP.NET 三门技术被称为 Web 后端开发的 3P 技术,其中 JSP 依托 J2EE 平台更是 Web 开发领域的一枝独秀。学好 JSP,是进入 J2EE 企业开发的第一步。通过本阶段内容的学习,你将能够搭建 JSP 的开发环境,了解 JSP 的基本语法及内部对象的使用。
1.jsp的语言特点:
jsp是一种脚本语言,
jsp拥有java语言的所有特性
jsp运行于jsp容器中
jsp会被转换成Servlet
2.jsp的基本语法
jsp程序段:其中定义的变量是局部变量
<%
String hello = "hello word";
out.print(hello);
%>
jsp程序段:其中定义的变量,函数,类是全局的,定义完后可以在页面的其他地方使用
<%!String hello = "hehe";%>
jsp表达式:可以把表达式的值做为字符串直接输出
<%="表达式"%>
注释:
<%--jsp注释 --%> 不会被传到浏览器
会被传到浏览器,但还是注释
3.jsp的编译指令和动作指令
编译指令和动作指令的区别:编译指令只在jsp转化成servlet中起作用,而动作指令是客户端在请求时动态被执行的(客户端每次请求时都有可能被执行)
(1)page编译指令
一般位于页面的最上方,一个页面可以有多个page编译指令
① 用于指定jsp程序所使用的脚本语言的程序
② 设置网页的属性和编码
③用于设置jsp程序本身的编码
import属性用于导入java类,有两种方式
①
②
errorPage属性的使用
第一步先模拟一个异常的jsp,并指定发生异常后跳转的jsp页面
① 使用errorPage指定发生异常后跳转的页面
② 在body体内伪造一个异常
第二步在handler_error.jsp使用isErrorPage="true",并处理异常
如果不指定errorPager属性的情况下会直接报异常
(2)include编译指令
include是jsp的静态编译指令,可以将一个web文件(html文件或者jsp文件)包含到当前的jsp文件中
(3)forward动作指令:重定向指令
forward指令后面的代码不会被执行也不会被输出到客户端
forward跳转到新的界面的时候携带参数的方法
在login的界面获取参数
String userName = request.getParameter("username");
String password = request.getParameter("password");
(4)include动作指令
① include进来head标签
②include进来body标签,并传递参数
下面的是body.jsp文件
(4)useBean动作指令
表单提交数据
表单界面
不适用useBean的情况,获取数据
如果使用userBean必须先new一个javaBean,与上传的数据类型对应,获取的方法如下
使用useBean传数据的时候,表单界面中name的值必须与JavaBean中属性名一直,否则传不过来
4.jsp内置对象
① out对象 用于向客户端、浏览器输出数据
② request对象 封装了来自客户端、浏览器的各种信息
request.getMethod();获取请求的方法名
request.getRequestURI();获取请求资源
request.getProtocol();获取请求使用的协议
request.getServerName();获取请求的服务器IP
request.getServerPort();获取请求的服务器端口
request.getRemoteAddr();获取客户端的IP地址
request.getRemoteHost();获取客户端的主机名
request.getParameter("");获取表单提交的值
getParameter("");方法用于获取客户端、浏览器提交的表单数据,而request.setAttribute("", "");
和request.getAttribute("");用于在web组件之间共享数据
③ response对象 封装了服务器的响应信息
response.setHeader(arg0, arg1)设置请求头
response.setIntHeader("refresh", 2);设置每隔两秒请求一次
response.sendRedirect(url);实现页面跳转
使用response设置Cookie
Cookie myCookie = new Cookie("d", "d");
myCookie.setMaxAge(3600);
response.addCookie(myCookie);
④ exception对象 封装了jsp执行过程中发生的异常和错误信息
⑤ config对象 封装了应用程序的配置信息
⑥ page对象 指向了当前jsp程序本身
⑦ session对象 用来保存会话信息,也就是说它可以在统一用户的不同请求之间共享数据
session.getId(); session的唯一标识符
session.getCreationTime(); 获取session创建的时间
session.getLastAccessedTime(); 获取session最后一次访问的时间
session.getMaxInactiveInterval();获取session的失效时间
可以在WEB-INF中的web.xml中手动设置session的失效时间(以分钟为单位)
⑧application对象 代表当前应用的上下文,它可以在不同的用户之间共享信息
⑨ pageContext对象 提供了对jsp页面所有对象以及命名空间的访问
三:
JDBC 是 Java 对关系型数据库进行访问的最主要的 API,是 Java 数据库编程的技术基础。通过本阶段内容的学习,你能够掌握数据库的基本知识及 JDBC 技术的基本原理,并能够使用JDBC编写出对数据库进行增删改查的简单程序。
四:
Servlet 是 Server Applet 的缩写,也称为服务端小程序。Servlet 技术一直处于不断的发展及进步之中,现在已经成为很多框架的技术基础,比如 Spring、Struts2 等。通过本阶段课程的学习,你将了解Servlet的运行原理,Servlet 过滤器的知识并能编写出相对复杂的 Java Web 程序。
五:
Spring 是一个开源框架,也是一个基于控制反转、依赖注入的轻量级容器,它的出现大大简化了传统的 J2EE 开发模式。Spring 的主要优势之一就是其分层架构,该架构允许使用者自主选择任意件,同时为 J2EE 应用程序开发提供集成框架。现在,Spring 已经成为 J2EE 企业开发中的标准配置。
六:
Struts2框架是MVC流程框架,适合分层开发。框架应用实现不依赖于Servlet,使用大量的拦截器来处理用户请求,属于无侵入式的设计。作为web层框架Struts2提供了数据封装、表单验证、文件上传、OGNL标签、国际化等功能。
七:
Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端程序使用,也可以在 Servlet/JSP 的 Web 应用中使用,最具革命意义的是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 CMP,完成数据持久化的重任。
八:
本阶段讲解开源持久层框架 MyBatis 工作原理,使用方法。主要包括:MyBatis 介绍,环境搭建,基本配置文件,映射配置文件,简便查询,高级查询,数据增、删、改操作,动态 SQL,数据识别器,事务处理。
九:
Spring Data JPA 由 Spring 提供的一个用于简化 JPA 开发的框架可以极大的简化 JPA 的写法,可以在几乎不用写实现的情况下,实现对数据的访问和操作。除了 CRUD 外,还包括如分页、排序等一些常用的功能。
十:
本套课程系统讲解了SpringMVC框架,包括注解驱动控制器、请求及响应的信息处理、视图解析、本地化解析、上传文件解析、异常处理以及表单标签绑定等内容。
十一:由于企业应用在实际开发过程中都已经逐步的转向服务化的趋势,学员在学习传统的基础SpringMVC、Spring、Mybatis之后开发出来的应用和真正企业实际使用的应用有很大的区别。学员往往不能很好的熟悉目前互联网企业的开发模式,而在工作中或者是面试中落下一节。本课程主要讲解了企业应用发展的趋势,远程调用底层实现的几种方式以及最流行的开源框架Dubbo。学员在学习了这些课程后,能掌握开发分布式的企业应用的思路,以及动手能力。
十二:
聚焦 Java Web 应用的三大核心技术:JSP、JavaBean 和 Servlet,全程分步,循序渐进,完整展示 Web 应用的快速开发过程,以学生管理为核心,设计多个功能,全方位融入 Java Web 知识及数据库相关操作,注重细节,针对难点,有的放矢,各个击破,注重程序调试,提炼初学者易犯错误,有针对地分析处理。