小言_互联网的博客

eclipse 使用Maven 创建 HelloWorld java项目

558人阅读  评论(0)

一、Eclipse中Maven的配置:

1、 打开Eclipse的首选项设置

2、找到Maven的配置项目


3、设置Maven的全局配置文件settings.xml

说明:Eclipse会自动的使用 settings.xml 文件中包含镜像库的URL地址信息, 找到Maven镜像库位置.
4、更新配置信息

配置完成。

二、新建一个Maven工程

   1、选择File-->New-->Other-->Maven-->Maven Project,Next

出现如图:

next 进入下一步:

gruop id 和 artifact id 和version这三个元素定义了一个项目的基本坐标,在Maven的世界,任何的jar,pom或者war都是基于这些基本的坐标区分的。

Group Id:定义项目组
Artifact Id:定义了当前项目组中唯一的id(相关的项目名)
Version:顾名思义,指定当前的版本

Finish
创建完成。
2、创建成功的Maven项目:

说明:

src/main/resources:用来存放资源文件(默认会帮你创建这个资源文件夹)

src/main/java:用来存放 java 源码文件(需要自己手动创建)

src/main/test:用来存放测试代码(需要自己手动创建,也有人习惯命名为:src/test)@

target:是用来存放 Maven 编译好的字节码的地方

Maven Dependencies:里面放的是 maven 管理的 jar 文件

3、生成的maven项目和pom.xml,接下来解析一下pom.xml的相关配置
所有 POM 文件都需要 project 元素和三个必需字段:groupId,artifactId,version。

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">

 <!-- 模型版本 -->
  <modelVersion>4.0.0</modelVersion>
 <!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成, 如com.springboot,maven会将该项目打成的jar包放本地路径:    com/springboot -->
  <groupId>com.springboot</groupId>
 <!-- 项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 -->
  <artifactId>test1</artifactId>  
<!-- 版本号 -->
  <version>0.0.1-SNAPSHOT</version>
  <!-- 引入父级依赖 -->
  
	<parent><!--被继承的父项目的构件标识符 -->
		<groupId>org.springframework.boot</groupId><!--被继承的父项目的版本 -->
		<artifactId>spring-boot-starter-parent</artifactId> <!--被继承的父项目的全球唯一标识符 -->
		<version>1.5.6.RELEASE</version>
		!-- 父项目的pom.xml文件的相对路径。相对路径允许你选择一个不同的路径。默认值是../pom.xml。Maven首先在构建当前项目的地        方寻找父项 目的pom,其次在文件系统的这个位置(relativePath位置),然后在本地仓库,最后在远程仓库寻找父项目的pom。 -->
    </parent>

	<!--应用spring springmvc -->
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			//spring-boot-starter-web包自动帮我们引入了web模块开发需要的相关jar包,直接可以
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

	</dependencies>
  
</project>

SpringBoot集成的web容器有我们常用的tomcat容器或者Jetty容器,具体的由配置决定,当然其默认集成的是tomcat容器,
这也说明了,只要我们打成jar包,理论上该jar在任何一个有JRE的服务器上即可运行.,不需要再在服务器上配置tomcat等web容器,这也体现了SpringBoot的微服务的概念。

详细解析参考:https://blog.csdn.net/qq_33206732/article/details/79171393

简单配置好了pom.xml,

4、创建一个HelloTest.java测试类运行看看

package com.Test;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@EnableAutoConfiguration //配置注解,开启自动配置
@Controller//配置Controller注解
///*
// * @Controller用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。
// * 分发处理器将会扫描使用了该注解的类的方法。通俗来说,被Controller标记的类就是一个控制器,这个类中的方法,就是相应的动作。
// */
public class HelloTest {
	@RequestMapping("/hello")//@RequestMapping 配置url映射
	@ResponseBody
	//@responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据。
	public String helloTest(){
		return"hello,fujiashi";
	}
	
	
   public static void main(String[] args) {//springboot 运行入口
	SpringApplication.run(HelloTest.class, args);
	//在main方法中执行SpringApplication.run()这种方式来启动我们的工程,HelloTest.class 就是main函数所在类名。
}

}

上面涉及的相关注解:

Controller的使用
@Controller 处理http请求,@Controller就是整体页面刷新提交的处理注解
@RestController Spring4之后新加的注解,原来返回json需要@ResponseBody配合@Controller
@RequestMapping 配置url映射

@EnableAutoConfiguration 注解的作用,就是开启自动配置.开启了这个注解就意味这springboot 帮你集成了大批的热门,火热的开源技术,不再需要你导入集成配置.
@EnableAutoConfiguration注解加载配置的详细讲解参考:https://blog.csdn.net/qq_36872046/article/details/83662761

@responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据,需要注意的呢,在使用此注解之后不会再走试图处理器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式的数据。

@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
比如上面用到的@RequestMapping("/hello"),运行成功后,我们只有在浏览器输入http://localhost:8080/hello,就能显示helloTest()方法运行的结果

如图:

简单的Maven 工程就运行成功。


转载:https://blog.csdn.net/weixin_44001568/article/details/106365891
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场