majiayu000/claude-skill-registry-data/spring-service-creator

Claude Code and agent skill by majiayu000/claude-skill-registry-data

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Tainted

Author "majiayu000" has blocked skill(s)

Creates Spring Service classes following best practices.

Install

npx vskill@latest install majiayu000/claude-skill-registry-data/spring-service-creator

SKILL.md

Spring Service Creator

Instructions

The following are key principles to follow while creating Spring Service classes:

  • Make sure to create the recommended package structure for Spring Boot projects
  • Create separate classes for Command and Query operations
  • Use @Transactional for all write operations
  • Use @Transactional(readOnly = true) for all read operations
  • Create dedicated Command and Query objects for service method inputs
  • Create dedicated Result objects for service method outputs
  • Follow naming conventions of XCmd, XQuery and XResult
Example: EventCommandService (Command Service for write operations)
java
@Service
@Transactional
public class EventCommandService {
private final EventRepository eventRepository;
private final SpringEventPublisher eventPublisher;
EventCommandService(EventRepository eventRepository,
SpringEventPublisher eventPublisher) {
this.eventRepository = eventRepository;
this.eventPublisher = eventPublisher;
}
public EventCode createEvent(CreateEventCmd cmd) {
var event = EventEntity.createDraft(
cmd.details(),
cmd.schedule(),
cmd.type(),
cmd.ticketPrice(),
cmd.capacity(),
cmd.location()
);
eventRepository.save(event);
eventPublisher.publish(new EventCreated(
event.getCode().code(),
event.getDetails().title(),
event.getDetails().description()
));
return event.getCode();
}
public void cancelEvent(CancelEventCmd cmd) {
EventEntity event = eventRepository.getByCode(cmd.eventCode());
if(event.cancel()) {
eventRepository.save(event);
eventPublisher.publish(new EventCancelled(
event.getCode().code(),
event.getDetails().title(),
event.getDetails().description()
));
}
}
//...
//...
}
Example 2: EventQueryService (Query Service for read operations)
java
@Service
@Transactional(readOnly = true)
public class EventQueryService {
private final EventRepository eventRepository;
private final EventMapper eventMapper;
EventQueryService(EventRepository eventRepository, EventMapper eventMapper) {
this.eventRepository = eventRepository;
this.eventMapper = eventMapper;
}
public List<EventVM> getUpcomingEvents() {
return eventRepository.findUpcomingEvents(Instant.now())
.stream().map(eventMapper::toEventVM).toList();
}
public EventVM getByCode(EventCode eventCode) {
var event = eventRepository.getByCode(eventCode);
return eventMapper.toEventVM(event);
}
//...
}

ViewModel Example:

java
public record EventVM(
Long id,
String code,
String title,
String description,
Instant startDatetime,
Instant endDatetime,
//...
//...
String venue,
String virtualLink,
int registeredUsersCount) {}

Mapper Example:

java
@Component
class EventMapper {
EventVM toEventVM(EventEntity event) {
return new EventVM(
event.getId().id(),
event.getCode().code(),
event.getDetails().title(),
event.getDetails().description(),
//...
event.getLocation().virtualLink(),
event.getRegistrationsCount()
);
}
}

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/majiayu000/claude-skill-registry-data/spring-service-creator/badge)](https://verified-skill.com/skills/majiayu000/claude-skill-registry-data/spring-service-creator)

Something wrong with this skill or its page? Tell us.