Browse Source

database connection, user and userrepository

master
Brecht Gemmel 2 years ago
parent
commit
21ad6c0526

+ 5
- 0
pom.xml View File

@@ -41,6 +41,11 @@
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
</dependency>
</dependencies>

<build>

+ 74
- 0
src/main/java/com/springboot/app/JibberJabberRestAPI/User.java View File

@@ -0,0 +1,74 @@
package com.springboot.app.JibberJabberRestAPI;


import lombok.Getter;
import lombok.Setter;


import javax.persistence.*;
import java.util.Objects;
import java.util.Set;

@Entity
@Getter
@Setter
@Table(name = "users")
public class User {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;

@Column(name = "email")
private String email;


private String handle;

@Column(name = "password")
private String passWord;

@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(name="user_relations",
joinColumns={@JoinColumn(name="ParentId")},
inverseJoinColumns={@JoinColumn(name="UserId")})
private Set<User> followers;

@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(name="user_relations",
joinColumns={@JoinColumn(name="UserId")},
inverseJoinColumns={@JoinColumn(name="ParentId")})
private Set<User> following;

@Transient
private String CheckPassWord;

// Create md5 hash from given email for gravatar
public String getUserEmailMD5() {
try {
java.security.MessageDigest md = java.security.MessageDigest.getInstance("MD5");
byte[] array = md.digest(this.email.getBytes());
StringBuffer sb = new StringBuffer();
for (int i = 0; i < array.length; ++i) {
sb.append(Integer.toHexString((array[i] & 0xFF) | 0x100).substring(1,3));
}
return sb.toString();
} catch (java.security.NoSuchAlgorithmException e) {
}
return null;
}


@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
User user = (User) o;
return id == user.id;
}

@Override
public int hashCode() {
return Objects.hash(id);
}
}

+ 6
- 0
src/main/java/com/springboot/app/JibberJabberRestAPI/UserRepository.java View File

@@ -0,0 +1,6 @@
package com.springboot.app.JibberJabberRestAPI;

import org.springframework.data.jpa.repository.JpaRepository;

public interface UserRepository extends JpaRepository<User, Integer> {
}

+ 9
- 0
src/main/resources/application.properties View File

@@ -1 +1,10 @@
spring.jpa.hibernate.ddl-auto=validate
spring.datasource.url=jdbc:mysql://ID109462_jibberjabber.db.webhosting.be:3306/ID109462_jibberjabber
spring.datasource.username=ID109462_jibberjabber
spring.datasource.password=code4croissants
spring.datasource.driver-class-name =com.mysql.cj.jdbc.Driver
#spring.jpa.show-sql: true





Loading…
Cancel
Save