详解使⽤IntelliJIDEA新建JavaWeb后端resfulAPI模板初始化项⽬
打开IntelliJ IDEA,我的版本是Version 2018.1.4。点击Create New Project。在左侧的列表中选择Maven。然后在右侧勾选Create from archetype。
然后在右侧的列表中选择org.apache.maven.archetypes:maven-archetype-webapp。点击next。
填写GroupId和ArtifactId。GroupId定义了项⽬属于哪个组织,例如,我们需要使⽤⼀个包,名字叫做fastjson,⽤户在项⽬中返回json数据的,是阿⾥的开源框架,被不少企业使⽤,是⼀个极其优秀的Json框架。它的groupId是com.alibaba,artifactId 是fastjson。
简单理解⼀下,拿Githu个例⼦。GroupId就相当于是你的⽤户名,⽽ArtifactId就相当于是你的具体某个项⽬的名称,也是我们当前的项⽬的根⽬录名称。例⼦如下。
GroupId: st
ArtifactId: testDemo
点击next,下两页不⽤设置,直接点击next。此时新建项⽬成功,右下⾓会弹出⼀个提⽰框,上⾯写着Maven projects need to be imported.此时选择Enable Auto-Import。就可以看到项⽬开始⾃动的去加载依赖包了。加载完成之后,项⽬会多出⼀个src⽬录。
引⼊jersey和servlet
打开根⽬录下l⽂件,在dependencies标签中添加如下代码,引⼊servlet。
<dependency>
<groupId>org.ainers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.22.2</version>
</dependency>
打开/src/main/webapp/WEB_l。在web-app标签之间添加如下代码。
<servlet>
<servlet-name>JAX-RS Servlet</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name&fig.server.provider.packages</param-name>
<param-value>st</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>JAX-RS Servlet</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
新建项⽬⽬录和⽂件
在/src/main⽬录下新建java、resources⽬录,java放项⽬java源代码,resources放项⽬的静态资源⽂件。
打开File中的Project Structure,或者使⽤快捷键,command + ;就可以快捷打开了。将刚刚创建的名为java⽬录设置为Sources,resources设置为Resources。然后Apply。然后在java⽬录下依次新建st三个包,就是我们的GroupId.
然后在st中新建Hello类。代码如下。
package st;
import com.alibaba.fastjson.JSONObject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.MediaType;
import javax.Response;
import java.util.ArrayList;
import java.util.List;
@Path("/hello")
public class Hello {
@Path("get")
@GET
@Produces(MediaType.APPLICATION_JSON)
public Response getStudent() {
List<Student> lists = new ArrayList<Student>();
lists.add(new Student("1","mayun",23));
lists.add(new Student("2","mahuateng",24));
lists.add(new Student("3","zhouhongyi",25));
JSONObject json = new JSONObject();
return Response.status(Response.Status.OK).JSONString(lists)).build();
}
}
fastjson怎么用同样的地⽅新建Student类。代码如下。
package st;
public class Student {
private String id;
private String name;
private int age;
public Student(String id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
引⼊fastjson
这个时候可以看到,Hello的class中有报错。是因为没有在l中没有引⼊对fastjson的依赖。在根⽬录下的l中添加如下依赖。
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.21</version>
</dependency>
再回到Hello中就可以看到没有错误信息了。
配置Tomcat
选择顶部菜单栏中的Run->Edit Configurations。点击左侧的+,选择Tomcat Server->local。配置好Tomcat后,选择Server旁边的Deployment标签,点击下⽅的+,选择Artifact,选择testDemo:war exploded。点击Apply。然后点击右上⾓的长得像播放键的按钮,启动项⽬。
就可以看到会新建⼀个浏览器标签页。显⽰"Hello World!",然后改变浏览器中的路由为我们写的接⼝的路由,/api/hello/get。就可以看到返回的json数据了。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论