3、以User为例进行CRU操作
Id.java //Model的父类,为了该死的JSTL我得加上get/set
public abstract class Id<T extends Id<T>> {
@EncDec
public long id;
public long id() {
return id;
}
@SuppressWarnings("unchecked")
public T id(long id_) {
id = id_;
return (T)this;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
}
User.java //用户信息
public class User extends Id<User> {
@EncDec
public String name;
@EncDec
public int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
DoUser.java //CRU操作,同时处理HTTP请求
public class DoUser extends Do {
@Service
@Transaction.Any //只是跳转用,没有数据操作
public String create_() throws Exception {
return "/create";
}
@Service
public String create(String name, int age) throws Exception {
User u = new User();
u.name = name;
u.age = age;
data.put(u);
return "redirect:/";
}
@Service
@Transaction.Any
public String update_(long id, ModelMap map) throws Exception {
User u = data.get(User.class, id);
map.put("user", u);
return "/update";
}
@Service
public String update(long id, String name, int age) throws Exception {
User u = new User().id(id);
u.name = name;
u.age = age;
data.put(u);
return "redirect:/";
}
@Service
public String get(long id, ModelMap map) throws Exception {
User u = data.get(User.class, id);
map.put("user", u);
return "/index";
}
}
页面代码就不贴了,全文完
分享到:
相关推荐
### Memcached内存分析、调优、集群:深入理解与实践 #### 1. Memcached背景与概述 Memcached是一款高性能的分布式内存缓存服务器,它最初由LiveJournal的运营人员开发,现已成为开源社区中不可或缺的一部分。其...
这可能使用`<nav>`元素实现,内部嵌套`<ul>`无序列表和`<li>`列表项,每个列表项可能包含一个指向特定项目的`<a>`标签。此外,为了美观和用户体验,可能会用到CSS(层叠样式表)来定制布局和样式,使页面更具吸引力...
它的设计目标是提供高可用性、可扩展性和高性能。在这个配置中,我们关注的是如何将 Voldemort 配置为仅使用内存作为缓存,而不涉及任何持久化机制。 **内存缓存的优势** 内存缓存提供了极快的数据访问速度,因为...
Voldemort是一款分布式键值存储系统,它源自亚马逊的 Dynamo 系统,并且作为一个开源项目,为全球的开发者提供了实现高可用、高可扩展性的数据存储解决方案。Voldemort 的设计目标是提供低延迟、高一致性的数据存储...
【标题】Nosql_Voldormort: No Sql-RubiS框架的Voldemort实现 在当前大数据时代,NoSQL数据库因其高可扩展性、高性能和灵活的数据模型,成为了处理大规模数据的重要工具。Voldemort是LinkedIn开源的一款分布式键值...
### Redis入门与实践 #### 一、Redis简介与NoSQL概念 Redis是一种广泛使用的开源内存数据结构存储系统,它可以作为数据库、缓存和消息中间件使用。作为一种NoSQL(Not Only SQL)数据库,Redis提供了键值对存储...
Voldemort是指使用Voldemort来实现分布式系统的可扩展性。 Dynomite是指使用Dynomite来实现分布式系统的可扩展性。 Kai是指使用Kai来实现分布式系统的可扩展性。 应用篇: eBay 架构经验是指使用eBay的架构经验...
Voldemort 是一个分布式数据库,它是亚马逊 Dynamo 的开源克隆。 它自动在多个服务器上复制数据,并自动对它们进行分区,因此每个服务器只包含总数据的一个子集。 它提供了许多其他功能,例如可插拔序列化支持、数据...
### Apache Hadoop 实现Facebook实时计算的关键技术与实践 #### 概述 随着大数据时代的到来,数据处理的需求日益增长,特别是在社交媒体平台如Facebook这样的大型应用上。为了应对这些挑战,Facebook选择采用...
LinkedIn 推荐系统存储基础设施概述 在本篇中,我们将深入探讨 LinkedIn 的推荐系统存储基础设施,了解其架构设计、挑战和解决方案。...它具有高性能、高可用性和高扩展性,能够满足 LinkedIn 大规模用户的需求。
3. **memcachedb**:结合了memcached的高性能与传统数据库的数据持久化特性,支持ACID事务。 4. **Cassandra**:一个分布式NoSQL数据库系统,以高度可扩展性和容错性著称。 5. **memcached**:一个简单的内存键值...
随着互联网应用规模的不断扩大,传统的关系型数据库难以满足高并发、大数据量的需求,Key-Value Store以其简单高效的数据模型和良好的扩展性,成为解决这些问题的理想方案。此外,云存储的普及也促进了Key-Value ...
- **高性能**:NoSQL系统通常针对特定的工作负载进行优化,从而实现更高的吞吐量和更低的延迟。 - **更针对性的API设计**:NoSQL系统通常提供了更为精简和直接的数据访问接口。 - **灵活的模式设计**:支持动态模式...
- **Voldemort**: 高性能的分布式键值存储系统。 - **Dynomite**: 分布式的键值存储系统。 - **Kai**: 分布式的键值存储系统。 **10. 未分类** - **Skynet**: 分布式计算平台。 - **Drizzle**: 轻量级的关系型...
而Key-Value存储系统,如Redis,通过其简单且高性能的数据模型,为大规模互联网应用提供了坚实的基础。它能够快速响应读写请求,支持复杂的数据结构,如列表、集合和有序集合,从而在不牺牲性能的前提下实现更丰富的...
Voldemort 是 LinkedIn 开发的一款分布式键值存储系统,具有高可扩展性和高性能。Voldemort 的架构可以分为三个部分:分布式键值存储、可插拔架构和存储引擎。分布式键值存储使用一致性哈希算法来确保数据的一致性,...
HBase通过采用列存储方案和LSM树等技术,能够在大数据环境下实现高效的读操作。然而,在执行删除操作时,由于列存储和LSM树固有的特点,处理效率不高。此外,HBase通过合理的架构设计确保了系统的高可用性和扩展性,...
在选择适合的分布式定时任务调度系统时,我们需要考虑多个因素,包括系统的可扩展性、可靠性、易用性、社区支持以及与现有技术栈的集成能力。 1. **什么是分布式定时任务** 分布式定时任务是一种将原先分散、不...
分布式Redis储存方式是大型互联网应用中常见的数据存储策略,它通过将单一的Redis实例扩展到多个节点,以实现数据的高可用性和可扩展性。在Java开发中,使用分布式Redis可以有效解决单个Redis服务器在面对海量数据时...