Java Web:环境搭建

更多
2021年07月26日 08点35分 作者:叶飞 修改

安装过程

前提:已完成JDK和eclipse安装,能跑普通

JST Server Adapters Extensions

JST是J2EE Standard Tools的缩写,顾名思义:J2EE标准工具。

Server Adapters Extensions:服务器适配器扩展,意味着它提供针对服务器(比如:Apache和tomcat)的适配和扩展。

查看eclipse中preferences,如果没有server项,需要通过:help - install new software 安装

使用的远程下载地址为:http://download.eclipse.org/releases/kepler(或eclipse内置的同版本的work with)

Apache Tomcat

这里apache是tomcat的修饰,apache tomcat其实就是tomcat。

PS:apache有很多含义,它

  • 既指apache基金会,
  • 也可以指一种开源协议,
  • 还可以指(只能处理静态内容的Apache服务器。

tomcat前加apache,表明它是遵守apache开源协议、并受apache基金会支持的。

tomcat是一个:

  • 使用Java开发的(所以下载下来的tomcat里面全是.jar)
  • 符合JavaEE的Servlet规范的应用服务器(Servlet容器,后文详述)

在安装JST之后可以通过:Window - Preferences - Server - Runtime Environment - Add 添加到eclipse。

tomcat可以在这里直接下载到本地:

Dynamic Web Project

最后,要能在eclipse上新建一个动态web项目,需要:file - new - Dynamic Web Project。

如果没有该选项,需要help - install new software安装:

注意:work with要和当前eclipse版本匹配(比如:2020-03,通过 help - about eclipse IDE 查看)

安装完成之后重启eclipse,就可以:file - new - Dynamic Web Project

注意这里有一个原因不明的超级大坑:不能使用默认的4.0,要降得3.0:

然后根据提示一步一步的设置:

  • Java类源代码路径:src
  • Java类编译后路径:build
  • Web相关内容路径:WebContent

直到生成Dynamic Web Project,在WebContent下面添加

一个静态HTML页面

Ctrl+F11既可以跑起来了。注意Servers提示:

Tomcat v7.0 Server at localhost

以及console控制台输出:

七月 26, 2021 5:30:11 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 379 ms

表明tomcat已经自动启动。再添加

一个jsp页面

页面上会有错误:

这是因为解析JSP的sevlet还没有配好,需要在项目的properties中找到Build Path,然后:

Add Libary:Server Runtime - Apache Tomcat v7.0

最后,在jsp页面上右键preferences,修改编码格式为utf-8,完美!


Maven

复习:第三方类库/框架依赖管理

高版本的eclipse中内置了maven embedder(内置/精简版),功能不全,但也够用了。如果需要学习完整的maven知识,可以到其官网下载安装。

archetype和mirror

archetype是一个maven的项目模板工具箱,通常存放在(通过url访问的)远程仓库(catelog/repository)中,依据archetype我们可以按照archetype样式方便的创建各种maven项目(比如spring mvc)。

演示:preferences - maven - archetypes中查看

maven官方的repository网速不够,所以通常需要我们添加一个国内的镜像(比如:阿里云

  • 手动的添加一个setttings.xml文件,模板来自官方文档
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
    
        <mirrors>
            <mirror>
                <id>nexus-aliyun</id>
                <mirrorOf>central</mirrorOf>
                <name>Nexus aliyun</name>
                <url>http://maven.aliyun.com/nexus/content/groups/public</url>
            </mirror>
        </mirrors>
    
    </settings>
  • 在 preferences - maven - user setting中指定

新建maven项目

依次:file - new - project - maven project,next -> select archetype

使用spring-mvc进行filter,选择co.ntier
An extremely simple Spring MVC archetype, configured with NO XML.
https://repo1.maven.org/maven2

填写:

  • groupId:团队id,一般是域名倒写
  • artifactId:作品id,一般驼峰命名

finish,观察console:

  • 从catelog(和mirror网址)下载相应的jars
  • 保存到本地repository(地址可在preferences - maven - user setting中查看和更改)

生成的maven项目,自动带着:

  • 文件夹目录结构:src/target/controller/views……
  • maven dependency:一系列spring mvc相关的jar包
  • 基础java类:
  • 配置文件,如:pom.xml




演示:

project facets:

ejb

era


在src\main\webapp\WEB-INF\web.xml中指定了DispatcherServlet

是 Spring MVC 的入口

load-on-startup:在项目启动时加载


WebMvcConfigurerAdapter

采用JavaBean的形式来代替传统的xml配置文件形式进行针对框架个性化定制



https://blog.csdn.net/weixin_43453386/article/details/83623242



implements WebMvcConfigurer

WebMvcConfigurationSupport 
@EnableWebMvc




AnnotationConfigWebApplicationContext

contextConfigLocation:指定 Spring MVC 配置文件的位置



??在 WEB-INF 目录下创建 springmvc-servlet.xml 文件


从Spring3.0,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。


CGLIB?

WebApplicationInitializer
onStartup


环境搭建
赞: 0 踩: 0

打赏
已收到打赏的 帮帮币

你的 打赏 非常重要!
为了保证文章的质量,每一篇文章的发布,都已经消耗了作者 1 枚 帮帮币
没有“帮帮币”,作者无法发布新的文章。

全系列阅读
评论 / 0

后台开发


其他:WebForm和WebApi

其他ASP.NET框架,如WebForm、WebApi……

RazorPages(Core)

微软推荐的、最新的、基于Razor页面和.NET core的新一代Web项目开发技术,包括Razor Tag Helper、Model绑定和Validation、Session/Cookie、内置依赖注入等……

MVC(Framework)

过去两年间最流行的、基于.NET Framework和MVC模式的ASP.NET MVC框架,主要用于讲解安全、性能、架构和各种实战功能演示……

C#语法

从入门的变量赋值、分支循环、到面向对象,以及更先进的语言特性,如:泛型、Lambda、Linq、异步方法等…………

Java语法

面向过程的变量赋值、分支循环和函数封装;面向对象的封装、继承和多态;以及更高阶的常用类库(集合/IO/多线程……)、lambda等

Java Web开发

SpringMVC

分层架构和综合实战

J&C

Java和C#共有的语法

全部
关键字



帮助

反馈