如何仅使用Spring Data REST公开可写的REST API?
问题描述:
嗨,我尝试使用,开发REST API 春天开机+弹簧数据JPA +弹簧数据REST如何仅使用Spring Data REST公开可写的REST API?
我要揭露只是我的网友写的部分(基本没有GET或全部搞定)实体是如下
@Entity(name = "User")
public class User implements Serializable {
@Id
@GeneratedValue(strategy= GenerationType.AUTO)
int id;
@Column
String login;
@Column
String password;
@Column
String username;
@Column
String address1;
@Column
String address2;
@Column
String city;
@Column
String state;
@Column
String zip;
@Column
String country;
@Column
String creditcard;
}
和datarepository是如下:
@RepositoryRestResource(path = "users")
public interface UserRepository extends CrudRepository<User, String> {
}
我怎样才能做到这一点?
答
您可以使用@RestResource(exported = false)
覆盖并标记方法。
的方法是
T findOne(ID id); // /users/<ID>
Iterable<T> findAll(); // /users
Iterable<T> findAll(Iterable<ID> ids);
你会得到所有GET
请求到资源库中405 Method Not Allowed
HTTP状态。
提示:It is not necessary标记与@Column
领域,使他们反映为数据库列。
请参考链接https://stackoverflow.com/questions/29169717/how-to-prevent-some-http-methods-from-being-exported-from-my-mongorepository –