JavaWeb

JavaWeb快速入门(一)——新建JavaWeb项目 今天是暑期实训的第三天,上午继续昨天未讲完的任务java,比如:java的异常处理、java的集合等其它java常用知识,具体讲解链接如下。下午开始将JavaWeb服务器端程序开发,包含:处理请求和展示返回回来的数据。其中,处理请求分为四步:1、创建javaweb工程,2、开启服务器,3、编写处理请求的代码,4、运行。(一)创建javaweb工程 在创建之前,电脑需要有myeclip... 阅读详情

什么是Servelt

  • 从广义上来讲,Servlet规范是sun公司制定的一套技术标准,包含与web应用相关的一系列接口,是 web应用实现方式的宏观解决方案。而具体的servlet容器负责提供标准的实现。
  • 从狭义上来讲,Servlet指的是javax.servlet.Servlet接口及其子接口,也可以指实现了servlet接口的实现类。
  • servlet作为服务器端的一个组件,它的本意是“服务器端的小程序”。servlet的实例对象由Servlet容器负责创建;servlet的方法由容器在特定情况下调用; Servlet容器会在 web 应用卸载时销毁servlet对象的实例。

servlet的作用:

​ 1、接收请求

​ 2、处理请求

​ 3、完成响应

Servlet

HelloWorld

编写Servlet的三步

  1. 创建自己的HelloServlet,实现Servlet接口
  2. 实现service方法
  3. 在web.xml中配置servlet信息

测试:运行项目,在浏览器中访问配置的url

代码
1、创建HelloServlet类,并实现Servlet接口,实现service方法
public class MyFirstServlet  implements Servlet {


    //初始化
    @Override
    public void init(ServletConfig servletConfig) throws ServletException {

    }

    //获取servlet配置信息
    @Override
    public ServletConfig getServletConfig() {
        return null;
    }
    //服务
    @Override
    public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
        //servlet是用来处理来自客户端的请求
        System.out.println("我是第一个servlet");
        //ServletResponse servletResponse 他能给浏览器发送一个响应
        //获取一个写数据的对象
        PrintWriter writer = servletResponse.getWriter();
        writer.write("HelloWorld");
    }
    //获取servelt信息
    @Override
    public String getServletInfo() {
        return "abcdwe";
    }

    //销毁
    @Override
    public void destroy() {
    }
}

image-20210802103544994

servlet的执行流程(响应客户端发来的请求)

image-20210802104239781

url统一资源定位符

 url:统一资源定位符
             静态资源:实际的文件.html .css .pong
             动态资源:我们请求动态资源是启动一段程序来处理
  动态资源
 比如这个   <url-pattern>/helloWorld</url-pattern> 里面的helloWorld,在文件中没有这个静态资源	

     <servlet>
        <!--    配置servlet的名字,相当于给servlet类起别名    给程序员看的-->
        <servlet-name>MyFirstServlet</servlet-name>
        <!--    配置servlet的全类名   给服务器看的,服务器是通过全类名进行查找的-->
        <servlet-class>com.atguigu.servlet.MyFirstServlet</servlet-class>
    </servlet>

    <!--  servlet映射信息-->
    <servlet-mapping>
        <!--    刚才配置servlet的别名-->
        <servlet-name>MyFirstServlet</servlet-name>
        <!--    这个servlet用来处理哪个请求    http://localhost:8080/08.Servlet/helloWorld-->
        <!--   表示访问当前项目下的/helloWorld     -->
        <url-pattern>/helloWorld</url-pattern>
    </servlet-mapping>

Servlet的生命周期

Servlet的生命周期

Servlet是跑在Tomcat服务器上的

Tomcat服务器----->Servlet容器

生命周期:从出生到死亡的过程

Servlet的生命周期:Servlet从创建到销毁的过程

当我们第一次访问HelloServlet时

1)、创建了一个Servlet对象

2)、调用Init方法

3)、调用service的方法

以后请求

4)、只调用service方法来处理请求

当项目从服务器上卸掉的时候

5)、会调用destroy方法

destroy()servlet销毁方法,清理善后工作
image-20210802162044040

image-20210802162055646

ServletConfig

ServletConfig的基本介绍:ServletConfig是封装了servlet配置信息的对象,一个servlet对象对应一个ServletConfig,封装当前servlet的配置信息

ServletConfig功能

  1. 获取servlet的别名:getServletName();

  2. 获取servlet的初始化参数

  3. 获取ServletContext对象。代表当前servlet的上下文。代表web项目信息

    <servlet>
        <servlet-name>ConfigServlet</servlet-name>
        <servlet-class>com.atguigu.servlet.ConfigServlet</servlet-class>
     //init-param这个就是servlet的初始化参数   
        <init-param>
            <param-name>username</param-name>
            <param-value>pzx</param-value>
        </init-param>
    </servlet>
    <servlet-mapping>
        <servlet-name>ConfigServlet</servlet-name>
        <url-pattern>/ConfigServlet</url-pattern>
    </servlet-mapping>
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            /**
             * ServletConfig功能
             *      1、获取servlet的别名:getServletName();
             *      2、获取servlet的初始化参数
             */
    
           System.out.println(config.getServletName());
           System.out.println(config.getInitParameter("username"));
           System.out.println(config.getInitParameter("username"));
           //3、获取ServletContext对象。代表当前servlet的上下文。代表web项目信息
            ServletContext context = config.getServletContext();
            System.out.println(context);
    
    
        }
    

    image-20210802202826119

ServletContext

虚拟路径&真实路径对应

image-20210803084307920

研究servletContext对象

1、是什么?代表?一个web应用代=代表一个ServletContext。就代表整个web应用

2、功能?

​ 1)、可以获取web项目的配置信息,获取web项目的初始化参数。

 		ServletContext servletContext = config.getServletContext();
		String user = servletContext.getInitParameter("user");
        String username = servletContext.getInitParameter("username");
        System.out.println(user);
        System.out.println(username);

​ 2)、获取web项目的路径

        String contextPath = servletContext.getContextPath();
        System.out.println(contextPath);

​ 3)、获取资源的真实路径

String realPath = servletContext.getRealPath("/index.jsp");
        System.out.println(realPath);

​ 4)、可以作为最大域对象共享数据 域对象:共享数据.4大域对象,application域对象

HttpServlet

HttpServlet原理图片

image-20210803104457057

说明:HttpServletRequest request代表浏览器封装请求信息的对象,一个请求对应一个响应

HttpServletResponse response代表就是要发送浏览器的响应对象,封装我们的响应信息

response.sendRedirect:这个是响应的重定向

        //1、可以给浏览器响应字符串
//        PrintWriter writer = response.getWriter();
//        writer.write("Hello HttpServlet.....................");
        //2、可以重定向到一个页面或者其他资,重定向就是服务器告诉浏览器请求别的资源
        //我的处理代码.....已经对之前的request响应完了。
        response.sendRedirect("success.html");

HttpServletRequest

说明:HttpServletRequest request 代表随着浏览器发送给服务器的请求信息

http请求包括:请求首行 请求头 空行 请求体(封装请求数据-post)。

get请求和post请求的的

获取请求参数 get放在url后面 post放在请求体里。

request来获取参数

request来获取单个参数

String username = request.getParameter("username");  这里面的参数是name值

request来获取多个参数:也就是些多选框中的内容,然后在使用增强for循环进行输出

String[] aihaos = request.getParameterValues("aihao");

请求转发和响应重定向的注意事项:写完转发之后,不能再写重定向,或者写完重定向之后不能再写请求转发,这是因为,一次请求对应一次响应。(也就是说,一次请求不能有两次响应)

重定向就是告诉浏览器重新请求新的资源。

转发:服务器处理完成之后转交到另外的资源。当我们转发的页面是一个页面(静态资源),服务器会给浏览器返回这个资源,当转交给下一个servlet,servlet可以继续处理(当然重定向也可以)

请求重定向:

  • 第一个Servlet接收到了浏览器端的请求,进行了一定的处理,然后给浏览器一个特殊的响应消息,这个特殊的响应消息会通知浏览器去访问另外一个资源,这个动作是服务器和浏览器自动完成的,但是在浏览器地址栏里面能够看到地址的改变,会变成下一个资源的地址。

  • 对浏览器来说,一共发送两个请求,所以用户是能够感知到变化的。

  • 在重定向的情况下,不能共享Request对象中保存的数据。

转发和重定向的区别

转发重定向
浏览器地址栏不会发生改变会改变
Request同一个请求两次请求
APIRequest对象Response对象
位置服务器内部完成浏览器完成
WEB-INF可以访问不能访问
共享请求域数据可以共享不能共享
目标资源必须是当前web应用中的资源不局限于当前web应用

请求转发和响应重定向的示意图

image-20210804095640362

image-20210804095726142

请求转发和响应的重定向的代码实现

请求转发

public class MyServlet2 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //HttpServletRequest request  代表随着浏览器发送给服务器的请求信息
            //http请求。请求首行  请求头  空行  请求体(封装请求数据-post)
        //get请求将所要携带的参数放在url
        //1、获取请求参数  get放在url后面 post放在请求体里。
        String username = request.getParameter("username");
        System.out.println(username);
//        String aihao = request.getParameter("aihao");
//        System.out.println(aihao);
        //使用getParameterValues来获取多选框选中的内容
        String[] aihaos = request.getParameterValues("aihao");
        if (aihaos!=null){
            for (String str : aihaos
            ) {
                System.out.println(str);

            }
        }

        //2、获取请求头的相关信息
        String accept = request.getHeader("Accept");
        System.out.println(accept);
        String header = request.getHeader("User-Agent");
        System.out.println(header);
        //3、转发一个页面/资源
        //先获取一个请求转发器
        RequestDispatcher requestDispatcher = request.getRequestDispatcher("/WEB-INF/haha.html");
        //将请求转发出去
        requestDispatcher.forward(request,response);
        //4、作为域对象共享数据 4个  application  request

    }
}

响应的重定向

public class MyServlet3 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        //写代码
        //经过MyServlet3处理之后,获取请求头信息。在控制台打印
        String header = request.getHeader("User-Agent");
        System.out.println("用户的浏览器信息"+header);
        //返回success.html页面,只能响应一个
        //1、重定向到页面  就是告诉浏览器重新请求新的资源
        //http:localhost:8080/success.html
        response.sendRedirect("http://www.baidu.com");

        //2、转发到页面
        //转发:服务器处理完成之后转交到另外的资源。当我们转发的页面是一个页面
        //(静态资源),服务器会给浏览器返回这个资源
        //当转交给下一个servlet,servlet可以继续处理
        //这个先获取转发器,然后再进行转发
//        RequestDispatcher requestDispatcher = request.getRequestDispatcher("http://www.baidu.com");
//        requestDispatcher.forward(request,response);


    }
    }

Cookie&Session

cookie:服务器发送给浏览器要保存的数据浏览器保存相关的数据

HTTP是无状态协议;

​ 无状态:服务器无法辨析每次请求来自谁?

​ 如果客户端来的时候能带上类似会员卡的东西,记录卡号

服务器发给浏览器的"会员卡";

服务器让浏览器去保存一份数据,以后访问的时候,带上相应的数据

服务器发给浏览器

Filter

filter的基本介绍

web服务器的三大组件。Servlet,Flter,Listener

A filter is an object that performs filtering tosks on either the request to a resource (a servlet or static content),or on the response from a resource, or both.(

filter是用来执行过滤任务的一个对象,作用于:

1、请求一个资源(动态资源,JSP,静态资源)

2、来自一个资源的响应

3、两个都可以)

filter用来过滤请求和响应

1)、filter可以拦截请求(request),可以修改请求头,和请求内容

2)、filter可以拦截服务端的响应(response),可以修改响应头和响应内容

3)、放行请求 (当调用chain.doFilter();时候)

filter的执行顺序

image-20210804213547877

filter-urlpatter配置

url-patten (servlet也可以使用)
1、精确匹配
要写拦截的资源的详细路径 /hello.jsp /page/a.jsp
2、路径匹配:/路径名/* 代表所有
拦截所有访问(路径名下的资源) /
代表拦截所有
3、后缀匹配:*.后缀名
所有以指定后缀结尾的,都拦截

注意:/pics/*.jsp;不能

<filter-mapping>
    <!--   指定filter     -->
    <filter-name>HelloFilter</filter-name>
    <!--  过滤哪些请求    -->
    <url-pattern>/hello.jsp</url-pattern>
</filter-mapping>

filter放行之前写出现中文乱码的原因

现象:

1、在请求放行之前,使用response输出内容,内容追加到了页面上,但是页面的中文都出现了乱码

2、放行之前只要写中文就会出现乱码,带着页面出现乱码

3、放行之后写,完全没有问题

根本原因都是在放行请求之前操作,或者直接操作(没放行请求直接响应)

出现乱码的原理图

image-20210805165658045

filterConfig

主要用的就是下面那几个方法

    public void init(FilterConfig config) throws ServletException {
        //FilterConfig是封装filter配置信息的对象
        String filterName = config.getFilterName();
        String wangba = config.getInitParameter("wangba");
        //servletContext--->对应我门的web应用(一个web应用对应一个servletContext)
        ServletContext servletContext = config.getServletContext();
        System.out.println(servletContext);
        //获取为web初始化参数
        String user = servletContext.getInitParameter("user");
        System.out.println("filter别名"+filterName);
        System.out.println("filter的初始化参数"+wangba);
        System.out.println("获取servletContext:" + servletContext);
        System.out.println("通过servletContext对象获取全局初始化参数"+user);
        
    }

filter链

多filter的执行顺序

image-20210805202447340

​

​

JavaWeb入门到精通-搭建javaweb环境并运行javaweb项目-下 宝子们去主页先看上篇哈! 昨天我们学习了一下JDK的安装与配置和tomcat下载与运行(未完)。今天我们就来说一下idea运行javaweb和上次没完成的tomcat下载与运行,下面一起开始吧! 更多更详细的知识可以看视频教程:​ 动力节点最新JavaWeb视频教程,javaweb零基础入门到精通IDEA版-持续更新中_哔哩哔哩_bilibili你的三连就是录制视频的动力!一定不要忘记收藏、点赞、投币哦~本套教程讲述了JavaWeb从入门到实战全部的知识点,主要包括:Servlet、Filter、Lis 阅读详情

相关推荐

lidar360 V8.0 & lidar360MLS V8.0雷达点云数据处理软件

机载林业 — 基于机载激光雷达点云数据提取一系列森林结构参数(如:高度分位数、叶面积指数、郁闭度等),分割单木并提取单木参数(包括树的位置、树高、胸径、枝下高、冠幅等属性),利用软件的多种回归分析功能可以结合地面调查数据反演森林生物量、蓄积量等功能参数。还可以生成等高线、山体阴影、坡度、坡向、粗糙度等多种产品。分类 — LiDAR360提供多种分类功能,包括地面点分类、模型关键点分类、选择区域地面点分类、机器学习模型分类(可高效地分离建筑、植被、路灯等通用类别)、深度学习模型分类、自定义深度学习分类等。

2403_83796253的博客 5151

javaweb中没有main方法 是怎么启动的。

最近在做springboot项目 springboot内置了tomcat,但却不明白之间的关系,以为是springboot启动了,加载了tomcat,然后执行的,原来是不对的。 文章目录tomcat启动Springboot与tomcat的关系 tomcat启动 在tomcat中有一个bootstarp类 就是他启动会去加载jar包然后执行的。 当执行了tomcat中startup的shell脚本,就会启动jvm,然后使用类加载器,加载Bootstart类,该类会执行main方法,去加载webapp下.

qq_44620773的博客 3059

zynq+ad9361 petalinux使用官方IIO示波器调试记录

1ad9361 iio示波器

Yetob的博客 7991

java main函数 web_请问怎么用一个main函数去启动一个web服务

该楼层疑似违规已被系统折叠隐藏此楼查看此楼package jetty;import org.mortbay.jetty.Connector;import org.mortbay.jetty.Server;import org.mortbay.jetty.nio.SelectChannelConnector;import org.mortbay.jetty.webapp.WebAppContext...

weixin_31616935的博客 529

PT静态时序分析实战:从基础命令到高级报告解析

本文详细介绍了PT(PrimeTime)静态时序分析(STA)的实战技巧,从基础命令如pt_shell和report_timing的使用,到高级报告解析与问题排查。通过丰富的实例和脚本示例,帮助工程师快速掌握时序分析的核心技能,提升芯片设计验证效率。

weixin_29289821的博客 954

利用XGBoost实现短期电力负荷预测

本数据集为某地区2009年-2015年的用电负荷,时间片为每分钟这里我们定义了XGB模型作为实例,来进行模型训练,之后我们会对其使用网格搜索找到最优的参数。

优快云 精品推荐 4495

为什么一个javaweb项目里有多个main函数?

原文地址::https://zhidao.baidu.com/question/1704581714638407700.html   相关文章 1、一个java文件为什么可以有两个main函数----https://zhidao.baidu.com/question/2120745906443829787.html 2、web项目没有main方法,怎么运行的?----https://blo...

xqhrs232的专栏 2633

网络工程师如何利用Python自动Telnet到N个路由器并执行配置?

telnetlib是Python标准库中的一个模块,专门用于实现Telnet协议。通过telnetlib,我们可以方便地与支持Telnet协议的远程设备进行通信。telnetlib提供了基本的Telnet功能,如连接远程主机、发送命令、读取响应等,使得编写Telnet自动化脚本变得非常简单。文档:可以选择中文:虽然telnetlib的功能相对基础,但对于大多数Telnet操作来说已经足够。通过telnetlib,可以轻松地实现与网络设备的交互,完成自动化配置任务。

网络技术联盟站 298

web项目没有main方法,怎么运行的?

首先理解一下main方法:你的java程序要运行,总要有一个起点,所以我们就约定,从main方法这里开始一行一行执行,java程序跑起来,一般是通过主类的main方法启动的。web容器是作为web程序的一部分存在的,由web容器启动你自己写的代码,像void main()之类的,测试的时候有时候会用到,其他基本不用。tomcat的主类是BootStrap类,也是以此类的main方法作为入口启动的,w

岁月无痕的博客 1万+

石油化工软件:ProII二次开发_(9).案例研究:ProII二次开发实例

我们将上述三个步骤整合到一个完整的案例中,展示如何从头到尾实现一个ProII二次开发项目。这个项目包括自动化流程模拟、数据处理与分析以及动态工艺参数调整。

kkchenjj的博客 918

157、飞控中的鲁棒自适应控制

本文总结了飞控系统中鲁棒自适应控制的实践经验。作者通过炸机案例引出传统PID控制的局限性,分析了鲁棒性与自适应性的本质矛盾,提出"用鲁棒性兜底,用自适应性提性能"的设计原则。重点介绍了模型参考自适应控制(MRAC)的实现方法,包括参考模型设计、自适应律调参技巧(建议初始增益设为0.01)、直接/间接自适应的应用场景差异,以及防止参数漂移的鲁棒修正方法。文章还分享了实际调试中的三大关键问题(初始值设定、激励条件、执行器饱和)及解决方案,并推荐了"鲁棒PID+自适应前馈"的混合架构。最后强调调试顺序应为先保证鲁

2401_88858637的博客 27

Java中的main()方法详解

Java中的main()方法详解   在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等。   在看Java中的main()方法之前,先看一个最简单的Java应...

weixin_34292402的博客 2600

【AI大模型应用开发实战】大型语言模型评估指南白皮书(LLM Eval)

近年来,大型语言模型(LLM)在自然语言处理领域取得了重大进展,例如 GPT-3 和 Chat-GPT。这些模型经过大型数据集的训练,在文本相关任务中表现出卓越的能力,甚至超越了人类。本文将简要介绍如何验证 LLMs 性能的评估指标。自然语言处理(NLP)是人工智能的一个领域,涉及计算机和人类语言之间的交互。NLP 的基本任务之一是语言建模 (LM),它涉及构建统计模型来分析和生成自然语言。LM 已成为推进机器语言智能的关键方法,使机器能够执行机器翻译、情感分析和对话系统等任务。

AI天才研究院 1013

JavaWeb专栏之(一):什么是JavaWeb?

JavaWeb专栏之(一):什么是JavaWeb? 前言: 关注:《遇见小Du说》微信公众号,分享更多Java知识,不负每一次相遇。更多内容请访问:www.dushunchang.top 本周小Du猿开始回炉JavaWeb相关的知识点,首次接触JavaWeb还是在大一,白驹过隙,日光荏苒,时隔三年,重炉javaweb仍然收获颇多。 实战开发中接触到Spring Boot后就很少再使用servlet,但仔细研究过Spring Boot底层源代码后,竟然发现Spring Boot竟让是servlet的封装迭代

小Du猿的博客 21万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【JavaWeb环境搭建】

服务器:安装了服务器软件的计算机本质上还是一台电脑,那么安装了服务器软件,也就是说,这个电脑是个硬件,我们得安个服务器软件,那么这个电脑才能被称为一台真正的服务器,安装了Web服务器软件,那我的电脑就是一个Web服务器,可以让别人也访问到我.服务器软件:接收用户的请求,处理请求,做出响应web服务器软件:接收用户的请求,处理请求,做出响应。在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目web容器常见的java相关的web服务器软件。

让优秀成为一种习惯! 6792

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

JavaWeb专栏之(三):Eclipse创建JavaWeb项目

JavaWeb专栏之(三):Eclipse创建JavaWeb项目 前言: 关注:《遇见小Du说》微信公众号,分享更多Java知识,不负每一次相遇。更多内容请访问:www.dushunchang.top 在上一篇文章中,小Du猿带大家使用Idea创建JavaWeb项目,相比之下Idea作为当前非常主流的开发IDE,深受Java后端程序员使用。市面上约75%开发者使用Idea,一代开发神器Eclipse就此没落。小Du猿第一次使用的开发IDE就是Eclipse,也算是我的启蒙神器。今天就带了使

小Du猿的博客 23万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

JavaWeb是什么?总结一下JavaWeb的体系

JavaWeb是什么?通过最近在尚硅谷上学习,分享一下 JavaWEB 前言 JavaWeb的技术体系 登录页面的开发 ...

俊墨客 3028

eclipse新建javaweb项目——javaweb系列(一)

eclipse新建javaweb项目——javaweb系列(一)

qq_23858785的博客 1万+

idea创建一个javaweb项目

前提 java环境以及tomcat的安装 1、IDEA创建Web项目 此处以Idea 2020.3.4举例 1、新建普通Java项目 注意:Idea2020无法直接新建JavaWeb项目,只能通过新建普通Java项目的方式间接新建JavaWeb项目。 选择项目位置和普通Java项目相同,此处略过。 2、修改普通Java项目为JavaWeb项目 项目根目录->右键->Add Framework Support 选择JavaEE版本 勾选左侧的Web Application

咖啡味的小认真 3万+

javaweb项目

源码:(百度网盘) 链接:JavaWeb 提取码:3xf9 链接: Oracle数据库文件 提取码:vkko 说明: 不希望大家复制粘贴、交作业,一气呵成,动作行云流水。而是希望看下面的讲解,学会自己设计一个JavaWeb项目。可能有些地方会讲解不好, 大家自行纠正,界面不美观请见谅,没有美术细胞(pao)--’’’。 发这篇博客的原因是:不说了 心酸(>< )已哭晕在厕所… 数据库不唯一,更换mysql 更换mysql-jdbc ,建库建表,修改util 即可。 ​ 讲解: ​ 环境

LJCC_c的博客 9108

JAVAweb环境搭建

javaweb环境搭建、jdk下载并安装过程、Tomcat服务器的安装和搭建

weixin_66110079的博客 6743

学习JavaWeb的总结

总的来说,学习JavaWeb是一次充满挑战而又有意义的经历。它让我对Web开发和企业级应用有了更全面和深入的理解,也培养了我的动手能力和解决问题的勇气。我相信,在不久的将来,JavaWeb会继续发展壮大,成为企业级应用开发的重要工具之一,而我也会继续深入学习和探索,不断提升自己的JavaWeb技能。愿我们共同进步,共同成长!

qq_73578372的博客 2223

JavaWeb是什么?如何学习JavaWeb的体系

java语言是当前最流行的开发语言之一。它的风格十分接近C++语言,是一个纯粹的面向对象的程序设计语言。Java继承了C++语言面向对象技术的核心,舍弃了C++语言中复杂和一些容易出错的特性,并在内存管理方面得到了增强。 web是指Internet 的图形、多媒体部分。万维网(环球网)(World Wide web)简称Web。Web 由众多Web 页组成。要浏览Web,可使用称为Web 浏览器的程序。参见“Internet”和“Web 页”。 java web 是指有Java语言开发出来可以在万维网上访问

Aa112233aA1的博客 4216
上一篇: EasyExcel的简单读取操作
下一篇: Forbidden.RAM : You are not authorized to operate this resource, or this API
张三疯学独孤九剑
博客等级 码龄7年 447粉丝 74原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值