JavaWeb基础知识

一.HTTP协议

1.http和https

http:不加密

https:加密

2.post和get和options(第一次握手:是否可以发送正式请求)

wpsB6A8.tmp

二.转发和重定向的区别

1.重定向

服务器告诉客户端,你去请求另外一个地址;客户端行为

(1)地址栏会变

(2)不能携带参数

resp.sendRedirect("url");

2.转发

服务器自己转发到服务器上的另一个请求; 服务器行为

(1)地址栏不会变

(2)可以携带参数

//放入参数ID

req.setAttribute(“ID”,ID);

req.getRequestDispatcher("success.jsp").forward(req,resp);

//获取参数ID

request.getAttribute(“ID”);

(request.getParma..(“ID”);是获取传递的响应参数)


三.session

“会话控制”。当用户在应用程序的Web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。

1.只要客户端一旦连接上服务器,服务器就会自动产生Session;一个连接对应一个session,session可以在一个会话中传递信息

2.session存储数据以K-V形式,K不能为空,同样的K,若V不同则会进行替换。

3.使用

(1)通过setAttribute设置值。

session.setAttribute("username", "zhangsan");//存储数据

(2)通过getAttribute获得值。

session.getAttribute("username");//获取数据

(3)通过removeAttribute删除值

session.removeAttribute("username");//删除数据


四.地址的写法

1.分析

(1)路径是谁发起的(浏览器or服务器)

(2)路径开头直接 “/” 表示当前路径(主要就是这个当前路径,搞清楚就明白了)

2.具体写法

wpsB6A9.tmp

(1)转发由服务器发起的,其他都是由浏览器发起的。

(2)代码

①重定向

response.sendRedirect("/WebPath/index.jsp");

②转发

request.getRequestDispatcher("/index.jsp").forward(request, response);

③超链接

response.setContentType("text/html");

response.getWriter().write("

<html>

    <head></head>

    <body>

        <a href='/WebPath/index.jsp'>index.jsp<a>

    </body>

</html>"

);

④表单提交

response.setContentType("text/html");

response.getWriter().write("

<html>

    <head></head>

    <body>

        <form action='/WebPath/index.jsp'>

            <input type='submit' value='to index.jsp'/>

        </form>

    </body>

</html>

");

3.总结

1、由浏览器发起的路径,“/”表示%tomcat根目录%/webapps根目录(项目根目录)

2、由服务器发起的路径,“/”表示项目中的WebRoot根目录


五.web.xml文件

为servlet设置别名

<servlet>
    <servlet-name>LoginServlet</servlet-name>         //别名(简洁方便)
    <servlet-class>com.servlet.LoginServlet</servlet-class> //原名(太长太复杂,不便于使用)
</servlet>
<servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>    //对应的映射,将它们联系起来
    <url-pattern>/Login</url-pattern>             //网页显示时的地址后缀
</servlet-mapping>

六.form下拉选框

1.form内容

<form>

<select name="part">

      <option value="A">儿科</option>

      <option value="B">外科</option>

</select>

<input value="提交" type="submit">

<form/>

2.servlet获取

根据name属性值即可接收,会接收到被选中<option>里的value属性值

String part = request.getParameter("part");

(结果:part=”A”or”B”)

posted @ 2022-03-31 19:01  脑袋凉凉  阅读(47)  评论(0编辑  收藏  举报