简单认识Maven
Maven 是专门用于构建和管理Java相关项目的工具。 使用Maven管理的Java 项目都有着相同的项目结构。 其中的pom.xml配置文件用于管理当前项目都用了哪些依赖jar包;所有的java代码都放在 src/main/java 下面; 所有的测试代码都放在src/test/java 下面 。
通过idea创建maven项目
1.新建一个project。 2.选择maven,选择模板 这里大家根据自己的情况进行选择 3.一定记得重写,否则我们的设置不会生效
标准工程目录
我们的代码一般在 src\main\java 文件夹下,跟着我们的包名即可。 src\main\resources 下一般是用于同时部署的一些资源文件,例如图片、音频、视频等 src\test\java 一般用来放一些测试代码 pom.xml 为 maven 最重要的文件,是 maven 的 配置描述文件。
- pom文件
pom.xml文件后缀名表示这个文件是用 XML 格式进行组织。 groupId:组织id artifactId:项目id version:项目版本号,我们在此修改项目的版本号 name:项目名称(servlet打错了) url:网页链接,关于项目的说明,没有的话可以省略 第一行为编码格式,后两行不关注 这里是我们重点关注的,dependencies外部依赖(jar包),scope:作用域,此处表示在测试阶段发挥作用。
依赖管理
讲了这么多,什么是 maven 仓库(maven repository)? maven 仓库是一个类似手机上的 App Store 的东西,上面会有全世界的人上传的各种第三方的 jar 包供我们使用,当我们的项目需要用到其中的内容,可以像手机安装 app 一样方便的进行查找和按照。 其中我们的项目用到了另一个项目,叫做依赖关系。 而一个项目中往往需要很多的依赖,所以诞生了依赖管理的概念。 举例,我们需要添加JDBC 1.浏览器搜索maven,打开仓库。
2.搜索mysql 这里出现了很多选择,我们使用第一个就可以,下载量最高的。
进去之后会有很多版本,我的mysql是5.7版本的至于如何选择版本号,还是一个比较复杂的话题,我选择5.1.49或5.1.48,选择最新的或者次新的版本。 点击具体的版本号后,可以看到这个类库的详情页面 框出的内容,就是我们要添加到 pom.xml 上的依赖配置,可以直接使用右侧的复制图标进行内容复制。 添加完成后,IDEA 中的 maven 会自动帮我们进行依赖 jar 包的下载,所以这个时候我们需要保证网络连接是可用的。如果需要手动下载,大家可以在文件的空白处,点击鼠标右键,选择 maven -> reimport 进行重新导 入或者刷新。至此,我们的依赖管理就配置完成了。 如果我们的plugins报红了,下载失败了,我们在这里找到本地仓库,将之前下载的全部清空。在网络条件好的时候进行重新下载。将中央仓库的地址改成国内,会更加稳定和快一些,同时我们也得确保setting.xml也能找到,因为这里配置了国内的源。以上操作最好建立在我们关闭了本机杀毒软件和防火墙的条件下。
如何创建一个servlet项目
演示: Servlet 的 Hello World —— 使用 IDEA 1.新建项目2.点击next 继续点击next,这里一定要记得勾中override点击finish即可。保证网络良好,如果出现build succes就说明创建成功。 这里我们可以看到,webapp下存放的是静态资源文件和配置文件。 web.xml:整个项目的配置在此,每次的接口添加都需要修改它。 这里我们又看到了熟悉的pom.xml,maven标配。
- 有没有人发现我们的Java代码在哪里写呢?
我们要手动创建Java源代码根路径 输入Java,然后双击,这个文件夹必须是蓝色的,否则就是一个普通的文件夹。 - 此时我们的项目还不是一个servlet项目,我们要引入servlet引用
在maven的中央仓库搜索servlet 我们选择第一个 版本我们选择3.1.0
复制maven信息到我们的配置文件当中,放在依赖的标签中,这里有些朋友可能会报红,我们重新下载即可(刷新按钮);
如果下载失败,我们需要删除之前的文件,重新下载,上面已经说过。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
我们创建一个名为HelloServlet的类后就会发现上面的红色就没有了。 这里红线是因为其是一个普通类,为不是一个servlet后端类,我们将后续代码写完即可
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter printWriter=resp.getWriter();
printWriter.println("<h1 style='color:red'>Hello,Servlet</h1>");
}
}
我们运行servlet有两种方法。一种是打包发到tomcat。另一种是在idea中配置tomcat。这里我们不再赘述。
|