初识Jersey-第一次测试

那年面试。
A君:你能解释‘==’和equals的区别吗?
小白:巴拉巴拉巴拉~~~~~~~~~~~~~~~~~~~~
此处省略十万个为什么~~~~~~~~~~~~~~~~~~
A君:能说说你的这个项目使用的哪些框架吗?
小白:框架~~嗯~~~~卡顿中 ~~~~~~~~~~~(内心独白:咋个没有多少说的呢,好后悔没有学好啊啊啊啊啊,看来自己这个菜鸟还要继续学习…)


初识Jersey-第一次测试(结合Resin发布)

百度百科:Jersey是一个REST框架
废话不多说,直接进入主题:创建第一个基于jersey的demo;
本次测试源码:链接: https://pan.baidu.com/s/15wB1lEWiOHSIjPjbcvdLrg 提取码: m3y8

  1. 创建Web Projext工程或者maven projext。两者都可,前者需要自己引入jar文件,后者使用maven自动引入依赖(需要自己配置相关仓库设置等) 在这里插入图片描述
    在这里插入图片描述
  2. 引入jar文件
    a、通过classpath方式导入(你可以自己到仓库查找,常用仓库地址
    1)http://mvnrepository.com/ 2) http://findjar.com 3) http://sourceforge.net/
    在这里插入图片描述
    b、通过maven导入jar
<dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-client</artifactId>
    <version>1.19.3</version>
  </dependency>
  <dependency>
    <groupId>org.glassfish.jersey.containers</groupId>
    <artifactId>jersey-container-servlet</artifactId>
    <version>2.9</version>
  </dependency>
  <dependency>
  <groupId>org.glassfish.jersey.core</groupId>
  <artifactId>jersey-client</artifactId>
  <version>2.9</version>
</dependency>
...其他略,建议依据仓库对应的数据填写

查找方式如图:在这里插入图片描述

  1. 修改web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<display-name>Archetype Created Web Application</display-name>
	<servlet>
		<servlet-name>JerseyApplication</servlet-name>
		<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
		<init-param>
			<param-name>	jersey.config.server.provider.packages</param-name>
			<param-value>cc.xiaobai</param-value>
		</init-param> 
	</servlet>
	<servlet-mapping>
		<servlet-name>JerseyApplication</servlet-name>
		<url-pattern>/*</url-pattern>  <!--**注意点1**  切记本标识,通配符-->
	 	<!--  	<url-pattern>/web_url_name</url-pattern>   项目的第一级访问目录名urlname -->
	</servlet-mapping>
</web-app>
  1. 写测试的类JerseyService.java
package cc.xiaobai;
 
import java.util.HashMap;
import java.util.Map;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import com.alibaba.fastjson.JSONObject;

@Path("/cc")
public class JerseyService { 
    @GET
    @Path("/xiaobai")
    @Produces("text/plain;charset=gbk")   //解决乱码问题
    public String getAllResource()  {
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("cc_test", "第一次开启测试");
        map.put("cc_name", "小白成长");
     return JSONObject.toJSONString(map);
    }
}
  1. 启动tomcat或者Resin(我这里启动Resin,最近我用这个比较多,顺带练习Resin启动Web项目)
    需要配置resin.conf指定访问的项目
    a、你可以把项目打包放在resin的webapps中,再通过指定访问的项目名称
 <host id="" root-directory="."> 
      <web-app id="/resin_url_name" root-directory="webapps/ROOT"/><!-- **注意点2**  项目存放在resin的webapps下  --> 
    </host>

.
b、直接指定web项目的路径

 <host id="" root-directory=".">
		<web-app id="/" root-directory="E:\xxxx\weaverWorkspace\Test_cc\WebRoot"/><!--  同注意点2 路径注意下图 -->
    </host>

在这里插入图片描述
6. 启动好服务,则开发访问项目:
在浏览器中输入预先设定的访问路径–结果如下
在这里插入图片描述

.


特别注意点解释:
1.如果你在注意点1设置了名称则表示项目访问路径前需要加你添加的路径。
      例如:127.0.0.1:8080/urlname[web.xml中设置的路径]/cc[类中设置的路径]/test[方法上设置的路径]
2.resin设置中注意点2,你设置了id内容(访问路径),则启动项目你首先需要加该id(url)在项目访问前。
      例如:127.0.0.1:8080/resin_url_name[Resin中设置的路径,()可以无)]/web_url_name[web.xml中设置的路径(可以使用通配符)]/cc[类中设置的路径]/test[方法上设置的路径]
3.注意转码,可能会有乱码问题,可以在 注解 ‘@Produces(“text/plain;charset=gbk”) //解决乱码问题’中 设置


以上为小白初次接触Jersey测试内容,有待完善后期补充中。。。
当然小白还是那个小白,希望大家多多指教,【本次测试代码见顶部】

发布了55 篇原创文章 · 获赞 29 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/ljcc122/article/details/83342574
今日推荐