<dependencies> <!-- Spring Data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!-- MySQL Connector --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- Hibernate Entity Manager --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> </dependency> </dependencies> import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String email; // getters and setters // constructors } import org.springframework.data.repository.CrudRepository; public interface UserRepository extends CrudRepository<User, Long> { User findByName(String name); } spring.datasource.url=jdbc:mysql://localhost:3306/mydb spring.datasource.username=root spring.datasource.password=secret spring.jpa.show-sql=true spring.jpa.hibernate.ddl-auto=update import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class UserService { @Autowired private UserRepository userRepository; public User createUser(String name, String email) { User user = new User(); user.setName(name); user.setEmail(email); return userRepository.save(user); } public User getUserByName(String name) { return userRepository.findByName(name); } } import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest public class UserRepositoryTests { @Autowired private UserRepository userRepository; @Test public void testSaveUser() { User user = new User(); user.setName("John"); user.setEmail("john@example.com"); userRepository.save(user); User savedUser = userRepository.findByName("John"); assertThat(savedUser).isNotNull(); assertThat(savedUser.getName()).isEqualTo(user.getName()); assertThat(savedUser.getEmail()).isEqualTo(user.getEmail()); } }


上一篇:
下一篇:
切换中文