MongoDB는 우리가 익숙한 관계형 데이터베이스(MySQL, Oracle)와 다릅니다. MongoDB는 필요한 확장성과 유연성은 물론 필수 쿼리와 인덱스도 갖춘 문서 데이터베이스입니다.
MongoDB는 JSON과 유사한 유연한 문서에 데이터를 저장합니다. 즉, 문서의 필드는 문서마다 다를 수 있고 데이터 구조는 시간이 지남에 따라 변경될 수 있습니다. 문서 모델은 애플리케이션 코드의 개체에 매핑되므로 데이터 작업이 쉬워집니다. MongoDB는 핵심이 분산된 데이터베이스이므로 고가용성, 확장 및 지리적 분산이 내장되어 있으며 사용하기 쉽습니다. 게다가 MongoDB는 무료이며 오픈 소스입니다.
다운로드하면 사용자 정의를 선택하면 조심해야합니다. 확인하지 마세요. 시각화 플러그인을 설치하세요. 그렇지 않으면 설치 속도가 매우 느려집니다(인터넷 속도가 충분히 빠르지 않은 경우)
3. MongoDB 서비스 구성 환경 변수 구성현재 경로 복사
내 컴퓨터 -> 마우스 오른쪽 버튼 클릭 ->고급 시스템 설정->환경 변수->시스템 변수
시스템 변수에서 경로를 찾아 위에서 복사한 경로를 편집하고 추가하세요
4. 서비스 시작win+R-> services.msc서비스 시작 후 브라우저에 127.0.0.1:2701
을 입력합니다. 영어라는 줄이 나타나면 서비스가 성공적으로 시작되었음을 의미합니다.
5. SpringBoot는 MongoDB를 통합환경 준비운영 체제: Window10
IDE: IntelliJ IDEA 2018.2.4
데이터베이스: MongoDB1) 종속성 소개<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
spring: data: mongodb: uri: mongodb://localhost/test_mongodb
spring: data: mongodb: authentication-database: # Authentication database name. database: # Database name. field-naming-strategy: # Fully qualified name of the FieldNamingStrategy to use. grid-fs-database: # GridFS database name. host: # Mongo server host. Cannot be set with URI. password: # Login password of the mongo server. Cannot be set with URI. port: # Mongo server port. Cannot be set with URI. repositories: type: # Type of Mongo repositories to enable. uri: # Mongo database URI. Cannot be set with host, port and credentials. username: # Login user of the mongo server. Cannot be set with URI.
public class UserEntity { @Id private String uid; private String username; private String password; public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } @Override public String toString() { return "UserEntity{" + "uid='" + uid + '\'' + ", username='" + username + '\'' + ", password='" + password + '\'' + '}'; } }
@Autowired private MongoTemplate mongoTemplate; @Test public void saveUser(){ UserEntity userEntity1 = new UserEntity(); UserEntity userEntity2 = new UserEntity(); UserEntity userEntity3 = new UserEntity(); userEntity1.setUid("111"); userEntity1.setUsername("用户1"); userEntity1.setPassword("密码1"); userEntity2.setUid("222"); userEntity2.setUsername("用户2"); userEntity2.setPassword("密码2"); userEntity3.setUid("333"); userEntity3.setUsername("用户3"); userEntity3.setPassword("密码3"); mongoTemplate.save(userEntity1); mongoTemplate.save(userEntity2); mongoTemplate.save(userEntity3); }
MongoDB가 자동으로 데이터베이스를 생성하고 엔터티 클래스(종종 데이터 테이블이라고 부르는 것)를 통해 컬렉션을 생성한 것을 볼 수 있습니다. MongoTemplate을 전달했습니다. 데이터베이스의 userEntity 컬렉션에 여러 문서(즉, 여러 레코드 삽입)를 삽입합니다. 그리고
_id는 기본 키이고,
_class는 엔터티 클래스 패키지 이름 + 클래스 이름
테스트 2: 쿼리 작업
@Autowired private MongoTemplate mongoTemplate; @Test public void findUserByUserName(){ String username = "用户1"; Query query=new Query(Criteria.where("username").is(username)); UserEntity user = mongoTemplate.findOne(query , UserEntity.class); System.out.println(user); }
출력 결과:
UserEntity{uid='111', 사용자 이름='User 1 ', 비밀번호='password1'}
테스트 3: 업데이트 작업
@Autowired private MongoTemplate mongoTemplate; @Test public void updateUser(){ UserEntity userEntity = new UserEntity(); userEntity.setUid("111"); userEntity.setUsername("更新后的用户名"); userEntity.setPassword("更新后的密码"); Query query = new Query(Criteria.where("_id").is(userEntity.getUid())); Update update = Update.update("username",userEntity.getUsername()).set("password",userEntity.getPassword()); //更新返回结果集的第一条 mongoTemplate.updateFirst(query,update,UserEntity.class); //更新返回结果集的所有 //mongoTemplate.updateMulti(query,update,UserEntity.class); }
테스트 4: 삭제 작업
@Autowired private MongoTemplate mongoTemplate; @Test public void DeleteByUserId(){ String id = "222"; Query query=new Query(Criteria.where("_id").is(id)); mongoTemplate.remove(query,UserEntity.class); }
삭제 후 데이터베이스는 다음과 같습니다. 사진:
위 내용은 SpringBoot가 Mongodb를 통합하여 추가, 삭제 및 변경을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!