java-web复习知识点

一、页面基础
·背景颜色

bgcolor="red"/"#ABOO1F"

·表格的定义

<table><tr>行<td>列</td></tr></table>

·链接

<a href="相对路径?id=12">

·表单

<from action="相对路径" method=”post”>
<input= type=""></input>
</from>

·字体颜色

<font color=""></font>

·显示图片

<img src="相对路径">

二、Tomcat
·安装目录下的重要文件夹
1.所有站点可以共享的jar文件
2.特定站点的lib是只能特点的站点使用的jar
3.webapps是web应用程序主要的发布目录,通常发布的站点在这里面
4.lib/servlet-api.jar
·修改端口号
1.conf/servler.xml文件的connector port="8080"

·部署站点机器资源
1.webapps中站点名字文件夹,并且再新建web-inf文件夹下配置web.xml文件,文件内容必需要有web-app标签

2.站点文件中要有html或者jsp文件
3.web-inf下要有classes文件下,这个文件夹之下要有java文件,也就是站点配置
4.web-inf也可以有lib目录,这之下就是这个站点特有的jar文件
·具体资源的访问路径(URL)
1.http//:127.0.0.1:8080/xxx/xxxx/xx.jsp
2.c:/Tomcat/webapps/abd/def/xxx.html
三、Servlet
·编程的步骤
1.

引用包import servlet.* import servlet.http.*
自定义类使用extend去继承GenericServlet/HttpServlet

·继承的关系
1.

GenericServlet
HttpServlet

·重写什么方法
1.doget和dopost
2.service()
·怎么编译?.class文件放哪里
1.放在classes中
2.javac编译
·配置文件怎么写

<web-app>
<servlet><servlet-name>xxx</servlet-name><servlet-class>包.类</servlet-class></servlet>
<servlet-mapping><servlet-name>xxx</servlet-name><url-pattern>/xxx(虚拟路径:映射类的路径,让url直接访问类)</url-pattern><servlet-mapping>
</web-app>

·怎么访问?
1.http://127.0.0.1:8080/站点名称/
四、请求和响应
·对应ServletRequest/ServletResponse和HttpServletRequest/HttpServletResponse
1.HttpServletRequest/HttpServletResponse作为浏览器请求和响应给servlet的接口
2.ServletRequest/ServletResponse是作为servlet服务器中调用http接口响应过来的方法
·中文字符的显示

  1.response.setHeader("Content=Type","text/html;charset=utf-8");
  2.request.setCharacterEncoding("utf-8")

·重定向

  1.response.sendRedirect("/XXXX/XXX.jsp")

·转发

  1.request.setSttribute("XXXX") 传递数据
  2.request.getAttribute("XXXX") 获取数据
  3.RequestDispatcher dispatcher = request.getRequestDispatcher("/转发的类");  请求转发
    dispatcher.forward(request,response);

·获取参数值

  1.request.getParameter("XXXXX"),返回字符串类型

·获取请求客户端的IP地址

  1.request.getRemoteAddr()

·定时刷新页面

  1.response.setHeader("Refresh","3")

·获取PrintWriter

  1.PrintWriter out =response.getWriter();

五、会话
·如何创建Cookie对象

  1.Cookie cookie = new Cookie("key","value");
  2.response.addCookie(cookie);

·保存Cookie并设置有效时长

  1.cookie.setMaxAge(60*60);

·一次session的范畴
1.使用浏览器访问则是会话建立
2.浏览器关闭则是会话结束
·为什么是使用session记录用户是否已经登录
1.Http协议是无状态的,也就导致服务器无法分辨是谁浏览了网页。为了维持用户在网站的状态,比如登陆、购物车等,出现了先后出现了四种技术,分别是隐藏表单域、URL重写、cookie、session。session和cookie都是用来解决Http协议不能维持状态的问题,但是session只存储在服务器端的,不会在网络中进行传输,所以较cookie来说,session相对安全一些。
2.能在一个比较大的范围内有效,适合对用户登录信息的管理
结构如图:
六、JSP技术
·JSP运行原理
1.实际运行时JSP转servlet文件
2.servlet文件转换为class文件
2.对class文件进行编译运行再servlet实例
·JSP的基本语法
1.<% 变量方法表达式 %>
2.<%! 定义变量方法%>
3.<%= expression%>表达式
4.<%-- 注释信息 --%>
·JSP的动作
1.forward讲请求转发到其他web资源
2.include指令静态包含某个页面
·静态包含和动态包含的差异

  1.<%@include file="被包含页面"%>当作当前JSP和包含的JSP合成一个java文件进行编译并运行
  2.<jsp:include page="被包含页面"flush="true">先编译运行主JSP,之后再运行编译包含的JSP

·import

  1.<%@ page import=“net.aykj.util.DomainUtil”%>

·9个内置对象

  1.out;request;response;config;session;application;page;pageContext;exception

七、JavaBean
·什么是JavaBean
1.一种Java类
2.按照一定的规范进行编程的java程序
·遵循那些规范
1.必须有一个无参的构造方法
2.把类的属性私有化。(不能直接访问属性) private
3.必须提供公开的getter和setter方法。(通过getter和setter操作属性)
八、Filter、Listener
·编程步骤
1.创建一个类实现Filter接口(过滤器)
2.创建一个类实现ServletContextListener(监听器)
3.在web.xml对过滤器进行配置
2.在web.xml配置
·重写什么

  1.inti
  2.dofilter
  3.destroy
  4.一次拦截则不需要激活下一个过滤器,不激活FilterChain chain

·如何编写配置文件?

  1.
<filter>
  <filter-name>xxxx</filter-name>
  <filter-class>过滤器类路径</filter-class>
</filter>
<filter-mapping>
  <filter-name>xxxx<filter-name>
  <url-pattern>过滤指定的文件</url-pattern>
</filter-mapping>
  2.
<listener>
  <listener-class>
    监听器路径
  </listener-class>
</listener>

·如何部署?
把过滤器和监听器放在claess文件夹下
·执行过程
1.浏览器请求的响应经过过滤器/监听器提交给servlet,servlet执行之后再返回过滤器和监听器再到浏览器
2.监听器>过滤器>servlet
九、JDBC
·编程的6个步骤

  <%
	Connection con=null;
	try{
		//1注册数据库驱动
		Class.forName("com.mysql.jdbc.Driver");
		//2获取数据库链接
		con=DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","root","123456");
		//3PreparedStatement对象中添加sql语句
		PreparedStatement pre=con.prepareStatement("insert into t_student (name,telphone) values (?,?)");
		pre.setString(1,"wangwu");
		pre.setString(2,"112234");
                //4pre执行sql语句
		int n=pre.executeUpdate();
		//5根据返回值来看是否运行成功
		out.print(n==1?"ok~~~~":"wrong~~~~");
	}catch(Exception e){out.print(e.toString());}
	finally{
		//6关闭con接口链接
		if(con!=null)
		{
			try{
				con.close();
			}catch(Exception ee){}
		}
	}

%>
<%
	Connection con=null;
	try{
		//1
		Class.forName("com.mysql.jdbc.Driver");
		//2
		con=DriverManager.getConnection("jdbc:mysql://localhost:3306/news_db","root","123456");
		//3
		PreparedStatement pre=con.prepareStatement("select * from t_news order by publish_date desc limit 10");
		//4
		
		ResultSet rs=pre.executeQuery();
		//5
		while(rs.next())
		{
			%>
			<a href="view.jsp?id=<%= rs.getString("newsID") %>"><%= rs.getString("title") %></a> &nbsp;
			<a href="delete.jsp?id=<%= rs.getString("newsID") %>">删除</a>&nbsp;
			<a href="edit.jsp?id=<%= rs.getString("newsID") %>">编辑</a>
			<br>
			<%
		}
	}catch(Exception e){out.print(e.toString());}
	finally{
		//6
		if(con!=null)
		{
			try{
				con.close();
			}catch(Exception ee){}
		}
	}

%>

·类、接口 及其方法

  1.Driver接口:JDBC驱动程序必须实现的接口
  2.DriverManager接口:加载JDBC驱动并且创建于数据库的链接
    registerDriver方法:用于向DriverManager中注册给定的JDBC驱动程序
    getConnection方法:用于建立和数据库的链接,并返回表示链接的Connection对象
  3.Connection接口:java程序和数据库的链接,只有获得该链接对象后才能访问数据库并操作数据表
    getMetaData方法:返回表示数据库的元数据的DatabaseMetaData对象
    createStatement方法:创建一个Statement对象并讲sql语句发送到数据库
    prepareStatement方法:创建一个PreparedStatement对象并讲参数化的sql语句发送到数据库
    prepareCall方法:创建一个CallableStatement对象来调用数据库的存储过程
  4.Statement接口:执行静态的sql语句,并返回一个结果对象
    execute方法:用于执行各种sql语句。改方法返回一个boolean类型的值。
    executeUpdate方法:用于执行sql中的insert,update,delete语句。
    executeQuery方法:用于执行sql中的select语句,该方法返回一个表示查询的结果的ResultSet对象
  5.PreparedStatement接口:封装了JDBC执行的SQL语句的方法,可以完成java程序执行sql语句的操作
  6.ResultSet接口:保存JDBC执行查询时返回的结果集,封装在一个逻辑表格中。
posted @ 2021-06-27 11:18  网抑云黑胶SVIP用户  阅读(216)  评论(0编辑  收藏  举报