JAVAWEB入门

JAVAWEB入门

本章内容:

一、 了解web开发的基本概念
  1. 浏览器/服务器:

    客户端不需要安装应用程序,需要一个浏览器

    客户端/服务器:客户端需要安装应用程序,服务器上一般放的是数据库

    bs的优点:项目更新维护方便。

  2. http协议(知道):

    超文本传输协议(规则)

    信息传输过程:信息传输之前首先建立连接,无状态(本次请求后,服务器得不到上一次请求传递给服务器的信息)

    信息传输格式

    请求: 行(请求方式(get/post) ,请求路径 头(客户浏览器一些信息以及发送给服务器的信息的一些说明信息) 体(真正想发送给服务器的信息(如登录的用户名和,密码))

    响应:行(响应的状态代码) 头(响应回来的内容的说明信息(如内容大小,内容类型)以及服务器的信息) 体(在客户端界面上呈现出来的信息)

二、了解JAVA WEB服务器

需要使用中间服务器搭建你的项目,让你的项目可以通过:协议://ip:port/ 访问

JAVA的服务器

Tomcat Apache

weblogic

websphare

三、安装tomcat
  1. 下载地址:Apache Tomcat® - Apache Tomcat 8 Software Downloads

  2. tomcat目录结构

    image-20221121102115580

    bin webapps(,非常重要,是web项目的发布目录) conf(配置文件所在的目录) log(日志信息所在目录) lib(jar包所在的目录) work(存放项目在运行过程中产生的文件) temp(临时文件所在的目录)

  3. 启动tomcat

    bin——>startup.bat

    http://localhost:8080/

    协议://ip地址:端口号

    Tomcat的默认端口是8080

    image-20221121102549123

    启动Tomcat出现的问题与解决方式

    1、运行startup.bat时一闪而过。解决方法:需要在环境变量中配置JAVA_HOME

    2、访问不到项目中的页面

    image-20221121105741306

    原因:tomcat启动被停掉了,不要关闭启动窗口

    3、服务器没有个关闭也访问不到。

    解决方案:

    a、项目名称是否正确

    b、是否访问的页面为index.html

    为什么index.html可以直接找到,是因为tomcat默认配置过了

  4. tomcat端口号的配置

    tomcat的配置文件:tomcat安装目录\conf\server.xml

    image-20221121110136576

    image-20221121110400707

    需要重新启动tomcat

    image-20221121110608525

四、发布JAVAWEB项目:

将项目放到tomcat的webapps目录中

把项目什么内容放到这个目录中:编译好的class文件、页面和页面需要用的资源(css、js、图片等等)

url:统一资源定位符

协议://ip地址:端口号/项目文件的具体的路径

在浏览器中输入统一资源定位符来访问服务器中的代码

tomcat需要和eclipse进行协作

五、使用eclipse开发第一个web项目 (重点掌握)
  1. eclipse和tomcat进行关联

    1)建立项目的时候 —->targetruntime——->new runtime(第一次建立项目的时候做即可,后续建立项目不用)

    2)winodw—-preference———server——runtime enviroment———>add

  2. javaweb项目,默认的类库如下

  3. 运行web项目

    RUN AS RUN ON SERVER————->发布项目并启动tomcat服务

  4. eclipse默认的项目发布目录:

    工作区.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps

  5. 开发环境下本地的目录结构

    访问路径(URL):协议://ip地址:端口号/项目根目录/具体资源的路径

  6. 欢迎页面的配置(了解)

    直接输入项目名称就可以访问到的页面

六、servlet的应用(重点掌握)

Servlet作用:是一个运行在服务器上的java程序,处理请求和响应

  1. 建立servlet

    继承HttpServlet

    /** * 1,作用:接收请求,处理,给客户端进行响应 
    * 2.就是一个java类,是继承了HttpServlet的java类 
    * 3.必须配置一个访问路径,在web.xml中配置 
    * 4.使用url进行访问,在地址栏中输入url的时候,会根据web.xml文件中配置的信息定位到应该去执行哪一个Servlet中的方法 
    *  * */
    public class HelloServlet  extends  HttpServlet{
        //处理get请求    
        @Override    
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub
            System.out.println("服务器端收到了来自于客户端的请求");
        }    
        //处理post请求   
        @Override    
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
            // TODO Auto-generated method stub    
        }
    }
  2. 配置 servlet(在web.xml中配置)

    配置方式一:一个Servlet可以配置多个请求路径()url)_

    <servlet>      
        <servlet-name>hs</servlet-name>      
        <!-- HelloServlet的全名-->      
        <servlet-class>com.servlets.HelloServlet</servlet-class>  
    </servlet>  
    <servlet-mapping>      
        <servlet-name>hs</servlet-name>      
        <!-- /:代表的是web项目的根目录。在开发环境下相当于webcontent目录 --> 
        <url-pattern>/hello</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>      
        <servlet-name>hs</servlet-name>      
        <!-- /:代表的是web项目的根目录。在开发环境下相当于webcontent目录 -->
        <url-pattern>/hello1</url-pattern>
    </servlet-mapping>

    注意:url-pattern最前面的/代表的是web项目的根目录

    配置方式二:使用通配符

    <servlet>      
          <servlet-name>hs</servlet-name>      
          <!-- HelloServlet的全名-->      
          <servlet-class>com.servlets.HelloServlet</servlet-class>
    </servlet>   
    <servlet-mapping>
        <servlet-name>hs</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>

    配置方式三:固定后缀

     <servlet>      
         <servlet-name>hs</servlet-name>      
         <!-- HelloServlet的全名-->      
         <servlet-class>com.servlets.HelloServlet</servlet-class>  
    </servlet>   
    <servlet-mapping>       
        <servlet-name>hs</servlet-name>
        <url-pattern>*.do</url-pattern>   
    </servlet-mapping>

    配置方式四:配置到根路径的子路径中

    <servlet>      
        <servlet-name>hs</servlet-name>      
        <!-- HelloServlet的全名-->      
        <servlet-class>com.servlets.HelloServlet</servlet-class>  
    </servlet>   
    <servlet-mapping>       
        <servlet-name>hs</servlet-name>       
        <url-pattern>/test/a</url-pattern>   
    </servlet-mapping>
  3. 给客户断浏览器响应内容

    public class HelloServlet  extends  HttpServlet{    
        //处理get请求    
        @Override    
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub        
            //System.out.println("服务器端收到了来自于客户端的请求");        
            //设置响应的内容的类型和编码        
            resp.setContentType("text/html;charset=utf-8");
            //得到一个给客户端浏览器写内容的流对象        
            PrintWriter out=resp.getWriter();
            //写        
            out.print("<h1>你好,客户端</h1>");
            out.print("<h1>你好,客户端</h1>");
            out.flush();        
            out.close();
        }    
        //处理post请求   
        @Override    
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            // TODO Auto-generated method stub    
        }
    }
  4. 连接数据库展示所有的商品信息

    第一步:将jar包复制到 web-inf——lib目录中

    第二步:src下建立配置文件

    第三步:准备dao及service层以及一些工具类

    工具类

    dao层(映射器接口和映射文件)

    Service层

    第四步:建立Servlet

    第五步:对Servlet进行配置

    第六步:浏览器中进行访问

5.完成登录功能

第一步:先分析流程

第二步:编写登录页面:指定action属性,就是点击登录的时候要去的地方(一般为服务器上Servlet的路径)

第三步:编写服务器上的Servlet,接收客户端传递过去的用户名和密码

第四步:完成servicedao层代码,验证用户名和密码是否正确

Dao(UserMapper.java)

Dao(UserMapper.xml)

Service(UserService.java)

第五步:继续完善Servlet中的代码,调用Service的代码进行判断,并根据判断结果的不同跳转到不同的页面

  • 22
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值