使用jaxrs制作第一个REST
来源:互联网 发布:sql语句分组统计 编辑:程序博客网 时间:2024/06/05 02:28
1.下载jaxrs-ri-2.22.1.zip
2.解压jaxrs并将里面的.jar导入web下的lib目录中,或者直接加入CLASSPATH中,不过为了开发方便,导入lib目录中比较好使
3.类似于普通的web开发,我们先构建控制层
(1).映射HTTP的路径
@Path("/UserService")
使用@Path直接映射
(2)设置请求的方式,直接使用@+请求的注释,如
@POST
@GET
(3).返回数据
@Produces
例如返回XML数据
@Produces(MediaType.APPLICATION_XML)
或者JSON
@Produces(MediaType.APPLICATION_JSON)
所以整个控制层
@Path("/UserService")public class UserService { UserDao userDao = new UserDao(); @GET @Path("/users") @Produces(MediaType.APPLICATION_JSON) public List<User> getUsers(){ return userDao.getAllUsers(); }}
4.接着控制层调用DAO层,数据操作层
package com.tutorialspoint;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.util.ArrayList;import java.util.List;public class UserDao {public List<User> getAllUsers() {List<User> userList = null;try {File file = new File("Users.dat");if (!file.exists()) {User user = new User(1, "Mahesh", "Teacher");userList = new ArrayList<User>();userList.add(user);//saveUserList(userList);} else {FileInputStream fis = new FileInputStream(file);ObjectInputStream ois = new ObjectInputStream(fis);userList = (List<User>) ois.readObject();ois.close();}} catch (IOException e) {e.printStackTrace();} catch (ClassNotFoundException e) {e.printStackTrace();}return userList;}}
5.由于我们使用XML作用数据返回,而且整个返回的处理过程均交给框架层,而我们需要做的注解我们的Bean
package com.tutorialspoint;import java.io.Serializable;import javax.xml.bind.annotation.XmlElement;import javax.xml.bind.annotation.XmlRootElement;@XmlRootElement(name = "user")public class User implements Serializable {private static final long serialVersionUID = 1L;private int id;private String name;private String profession;public User() {}public User(int id, String name, String profession) {this.id = id;this.name = name;this.profession = profession;}public int getId() {return id;}@XmlElementpublic void setId(int id) {this.id = id;}public String getName() {return name;}@XmlElementpublic void setName(String name) {this.name = name;}public String getProfession() {return profession;}@XmlElementpublic void setProfession(String profession) {this.profession = profession;}}
我们使用@XmlRootElement(name = "user")
表明生成user的对象根标签
大概如
<user>
....
</user>
6.我们创建后必须在WEB.XML里注册
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID" version="3.0"><display-name>User Management</display-name><servlet><servlet-name>Jersey RESTful Application</servlet-name><servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class><init-param><param-name>jersey.config.server.provider.packages</param-name><param-value>com.tutorialspoint</param-value></init-param></servlet><servlet-mapping><servlet-name>Jersey RESTful Application</servlet-name><url-pattern>/rest/*</url-pattern></servlet-mapping></web-app>
7.
0 0
- 使用jaxrs制作第一个REST
- JAXWS和JAXRS(REST)开发WebService区别
- 我的第一个REST客户端程序!
- 使用OSGi-JAXRS-Connector实现Restful
- 使用jaxrs规范开发webservice(三)
- 制作第一个 iOS 应用程序
- KiCad设计PCB-4-使用KiCad制作第一个元器件的封装
- 创建你的第一个Android app使用MATLAB/simulink定制化制作
- 制作我的第一个根文件系统
- 怎么制作你的第一个机器人
- 本人的第一个JSP制作过程
- 第一个网站的制作过程记录
- 第一个实用程序---多格式阅读器制作
- WordPress主题制作-第一个WordPress主题
- 怎么制作你的第一个机器人
- 制作自己的第一个报表
- 制作第一个网页的代码
- 用Django制作第一个网页
- 修改命令行前缀 - Ubuntu配置笔记
- 树基础总结(算法导论)
- (LFS速成手册)手把手教你如何建立自己的Linux系统(第二版)
- js引用另一个js文件的方法
- 怎样在公司内部搭建一个进行资料共享、支持全文检索的网站?
- 使用jaxrs制作第一个REST
- Cocos2dx跨平台编译Android错误:format not a string literal and no format arguments [-Werror=format-security]
- 正则表达式-(常用)
- CMOS Sensor 基础知识
- 如何度过职业生涯?
- 关系型数据库到HBase的数据储存方式变迁
- 物料确定功能实现
- Java for Web学习笔记(一):Java EE的介绍
- C++学习笔记7 - 函数