首页 > 编程语言 >JavaWeb准备工作和环境配置

JavaWeb准备工作和环境配置

时间:2023-06-09 21:23:24浏览次数:71  
标签:web JavaWeb 配置文件 配置 环境 maven 文件夹 Maven 请求

JavaWeb

基本概念

web开发:

  • web:网页的意思

  • 静态web:提供的数据资源不会发生改变

  • 动态web:数据是不断变化的,现代网站几乎都是动态网站技术栈: Servlet/JSP:基于java,主推B/S架构,可以

    ​ 承载高并发,语法类似ASP

    ​ ASP:微软,国内早期流行。在html中嵌入VB脚本, c#

    ​ PHP:开发速度快,功能强大,但是无法承载大访问量的情况

    在java中动态web资源开发的技术统称JavaWeb

web应用程序:

  • 可以提供浏览器访问的程序,多个web资源例如a.html ,这些资源可以被外界访问,对外界提供服务,这些统一的web资源会被放在同一个文件夹下,组成web应用程序

  • web应用程序若想提供给外界访问需要一个的服务器来统一

Web服务器

处理用户请求和返回响应

包括:

  • IIS:微软,ASP,windows中自带
  • Tomcat:Apache项目,技术先进,稳定且免费,属于轻量级应用服务器,实际上运行JSP和Servlet。对于初学者它是首选。

Tomcat

之后我们将使用Tomcat进行学习,具体按照教程可以自行百度

下载好后自行配置相关环境变量

Tomcat安装包配置文件介绍:

启动:bin中的startup.bar

关闭:bin中的shutdown.bar

服务器核心配置文件(更改端口默认8080,主机名默认locahost等):conf/server.xmf

如更改端口(找到下面):

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000"
               />

浏览器主页面文件:webapps/ROOT

如何访问到网站

  1. 输入域名
  2. 检测本机下面的C:\Windows\System32\drivers\etc\hosts下面的配置文件有没有相关域名的映射(如127.0.0.1 localhost),如果本机有直接访问
  3. 如果没有去DNS服务器寻找

发布的第一个web文件

进入webapps创建一个自己的网站文件夹

保留相关配置文件(WEB-INF文件夹/classes:java程序和lib:配置文件和web.xml网站配置文件)同时编写自己的web界面

因为localhost:8080是webapps文件夹,加上自己创建文件夹的路径即可(index.html可以省略)

另外localhost:8080/examples 是官方给与的相关例子

在IDEA配置Tomcat

点击fix清除警告

添加tomcat中webapps中需要使用的相关的网站


之后点击运行

http

HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

文本:由可打印字符组成,人可以直接阅读和理解其形式。 记事本文件

超文本:除了文本文件外如视频,音频,html等

  • 默认端口80
  • https:安全的,端口443

请求

常规

请求 URL:
https://img-s.msn.cn/tenant/amp/entityid/BB14xOMT?w=20&h=0&q=60&m=6&f=png&u=t
请求方法:
GET
状态代码:
200 成功
3**  请求重定向(让你去找别人)
4**  找不到资源
5**  服务器代码错误 例如502网关错误
远程地址:
184.26.43.88:443
引用者策略:
strict-origin-when-cross-origin
  1. 请求行:

    • 请求
    • 请求方式:get,post等
      • get:请求能够携带的参数比较少,大小有限制,会在浏览器URL地址栏显示数据内容,高效但不安全
      • post:请求能够携带的参数没有限制,大小没有限制,安全但不高效
  2. 请求头

    Accept:*/*  告诉浏览器支持的内容
    Accept-Encoding:gzip, deflate, br  告诉浏览器支持的编码
    Accept-Language:zh-CN,zh;q=0.9 支持的语言环境
    Cache-Control:   缓存控制
    Connection:keep-alive   告诉浏览器请求完成是断开还是保持连接
    Content-Length:7903
    Content-Type:text/plain;charset=UTF-8
    Cookie:USRLOC=; _EDGE_V=1; 
    Refrush:              告诉客户端多久刷新一次
    Location:让网页重新定位
    

响应

Access-Control-Allow-Origin:* 缓存控制
Connection:keep-alive  连接
Content-Type:image/png   类型
Content-Encoding:gzip  编码

Maven

  • 一个项目架构管理工具
  • 用来方便导入jar包
  • Maven核心思想:约定大于配置,即有约束不要去违反

自行百度下载Maven – Welcome to Apache Maven

  1. 为其配置环境变量:
  • M2_HOME:maven目录下的bin目录
  • MAVEN_HOME:maven目录
  • 系统path中配置指向bin目录

mvn -version查看是否安装成功

  1. 配置阿里云镜像:复制下面一段到conf/setting.xml中的
   <mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun-maven</name>
      <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>
  1. 建立本地仓库:新建一个文件夹作为仓库,并且到setting.xml中相应位置配置如下

IDEA使用Maven

创建一个maven web项目

另外默认的为idea自带的maven

之后等待构建导入完成

  • idea中设置maven相关配置

创建一个普通的maven项目

直接点下一步不选或者勾选任何东西创建一个普通maven项目

结构:

标记文件夹功能

注意在idea配置maven项目过程中会出现导入错误,搞了半天我才发现因为idea不兼容该版本的maven,换成低版本解决

pom文件

pom.xml是maven的核心文件

具体内容介绍:

<?xml version="1.0" encoding="UTF-8"?>
<!--Maven版本和头文件-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
<!--这是刚才项目选项的相关-->
  <groupId>org.example</groupId>
  <artifactId>Maven2</artifactId>
  <version>1.0-SNAPSHOT</version>
<!--  项目的打包方式
jar:java应用
war:javaWeb应用
-->
  <packaging>war</packaging>
<!--名称-->
  <name>Maven2 Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>
<!--配置-->
  <properties>
<!--    默认编码-->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--    编译版本-->
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>
<!--项目依赖,以后可以在这里导入依赖,maven还会自动导入这个jar包所依赖的其他jar包-->
  <dependencies>
<!--    具体依赖的jar包-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
    </dependency>
  </dependencies>
<!--项目构建相关-->
  <build>
  </build>

另外由于maven的约束,自己写的噢诶这文件很有可能不能导出这就需要:

 <!--在build中配置resources,来防止我们资源导出失败的问题-->
<build>
    <resources>
    	<!--选择需要导出资源的路径,可以选择多个-->
        <resource>
            <directory>src/main/resources</directory>
             <!--写入需要导出的什么类型的文件-->
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <!--不去过滤这些文件-->
            <filtering>false</filtering>
        </resource>
    </resources>
</build>

idea可以生成目录树:

标签:web,JavaWeb,配置文件,配置,环境,maven,文件夹,Maven,请求
From: https://www.cnblogs.com/rainaftersummert/p/17470254.html

相关文章

  • Python从命令行参数和配置文件获取信息
    实际开发中,很多时候需要从外部获取数据,根据用户的输入或配置信息来决定下一步应采取的行为。除了使用内置函数input()或者GUI库的控件和对话框来接收用户输入以外,还可以使用sys和argparse模块来接收命令行参数,使用configparser模块从外部配置文件中获取信息。sys模块的argv是一个包......
  • 1、android studio安装与配置
    1、各位小伙伴,安装Androidstudio之前一定要先安装jdb1.8,否则在Androidstudio时检测没有,会自动下载配置,非常卡非常满!jdk1.8的安装与配置文件如下:链接:https://pan.baidu.com/s/11lz8VklxLWKgtg2whxdiIQ提取码:azabAndroidstudio的安装与配置文件如下: ......
  • 基于k8s环境部署RabbitMQ集群
    一、前言本次案例是基于Statefulset部署RabbitMQ集群,同时基于StorageClass(存储类)来作为集群数据的持久化后端,因此在此之前已经部署好了NSF作为后端存储  1、创建服务命名空间Namespace#kubectlcreatensrabbitmq2、创建rbac权限ServiceAccount是kubernetesPod中的......
  • 配置SQLDeveloper连接mysql时报错Message from server:”host ‘****’ is not allowe
    问题描述:配置SQLDeveloper连接mysql时报错Messagefromserver:”host‘****’isnotallowedtoconnecttothismysqlserver”,如下所示:数据库:mysql8.0.27SQLDeveloper版本:23.1.0.097连接mysql使用的驱动文件:mysql-connector-j-8.0.33.jar1、异常重现2、解决过程[root......
  • oracle 12c+允许低版本oracle 客户端连接配置
    oracle12c及以上版本,默认不允许低版本oracle客户端连接,如11g客户端,经网络搜索可通过设置Oracle服务端允许低版本访问在oracle服务端的“%ORACLE_HOME%/network/admin/sqlnet.ora”配置文件最后追加如下配置内容,意思为最低版本的Oracle客户端访问:SQLNET.ALLOWED_LOGON_VERSION_S......
  • mysql 8.0.26 my.cnf 配置文件模板
    ##############[mysqld]basedir=/home/work/mysql_3306datadir=/home/work/mysql_3306/datatmpdir=/home/work/mysql_3306/tmppid_file=/home/work/mysql_3306/tmp/mysqld.pidsocket=/home/work/mysql_3306/tmp/mysql.sockmysqlx_socket=/home/work/mysql......
  • greta 编译,配置,使用
    正则表达式regularexpressiongretavc6compile200820101.greta在vc6下能顺利编译greta2.64.(最后的版本已不存在vc6和vc6之外的区别了,作者最后合并到一起了)2.使用vs2008(visualstudio2008)编译会出现以下这些错误:2.1具体错误errorC2923:'regex:......
  • vnc 配置 已验证
    配置错误,但是能用[root@rac1sbin]#systemctlstatusvncserver@:2.service-lvncserver@:2.service-Remotedesktopservice(VNC)  Loaded:loaded(/usr/lib/systemd/system/vncserver@:2.service;disabled)  Active:failed(Result:exit-code)sinceSun2015-05-......
  • notepad++ c# ide 配置
    tag:notepad++c#IDE编译环境搭配 配置C#运行notpad++,点击“运行-》运行”菜单,出现一个弹出框,输入命令行,而后保存即可。1.编译cmd/kC:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe/out:"$(CURRENT_DIRECTORY)\$(NAME_PART).exe""$(FULL_CURRENT_PATH)"&......
  • 使用JAVA开发微信公众平台(一)——环境搭建与开发接入
    一、初始微信公众平台微信公众平台,即我们平时所说的“公众号”,曾用名“官方平台”、“媒体平台”,但最终命名为“公众平台”。从微信的命名我可以发现,公众平台不只是官方、媒体使用的平台,而是对所有公众都开放的统一平台。喜欢本文,请点击下方喜欢按钮呗!❤️微信公众平台地址:http......