Skip to content

Instantly share code, notes, and snippets.

View yabetancourt's full-sized avatar
💻
Programming

Yadier Betancourt Martínez yabetancourt

💻
Programming
View GitHub Profile
@yabetancourt
yabetancourt / EditionProfessorFactory.java
Created April 18, 2023 15:24
Haciendo una factory generica para un constructor no vacio
package cu.uclv.postgrade.ui.view.entity;
import cu.uclv.postgrade.data.entity.professor.CourseProfessor;
import cu.uclv.postgrade.data.entity.professor.TrainingProfessor;
public record EditionProfessorFactory<T>(Class<T> entityClass) implements HasEntityComplexConstructor<T> {
public static EditionProfessorFactory<CourseProfessor> courseProfessor = new EditionProfessorFactory<>(CourseProfessor.class);
public static EditionProfessorFactory<TrainingProfessor> trainingProfessor = new EditionProfessorFactory<>(TrainingProfessor.class);
@yabetancourt
yabetancourt / CourseProgramListViewTest.java
Created December 29, 2022 20:14
Testing visual components in vaadin
import com.vaadin.flow.component.button.Button;
import com.vaadin.flow.component.grid.Grid;
import com.vaadin.testbench.unit.SpringUIUnit4Test;
import cu.uclv.postgrade.Application;
import cu.uclv.postgrade.ui.view.course.program.CourseProgramListView;
import org.junit.Test;
import org.junit.jupiter.api.Assertions;
import org.slf4j.LoggerFactory;
import org.springframework.boot.test.context.SpringBootTest;
@yabetancourt
yabetancourt / random_data.sql
Created December 9, 2022 17:10
Generacion aleatoria de datos en postgres
create or replace function random_number(length integer)
returns text
as
$$
declare
alphabet text[] := '{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}';
result text := '';
i integer := 0;
begin
for i in 1..length
@yabetancourt
yabetancourt / CourseEnrollment.java
Created October 9, 2022 22:42
Creacion de una clase para una relacion M:M con el id embebido. Observar como queda el repositorio.
@Entity
public class CourseEnrollment {
@EmbeddedId
protected Id id = new Id();
@ManyToOne(optional = false, fetch = FetchType.LAZY)
@JoinColumn(name = "student_id", insertable = false, updatable = false)
protected Student student;