<!-- 添加MySQL数据库驱动依赖包 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- 添加spring-data-jpa依赖包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>
#指定MySql数据库链接信息 spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=root spring.datasource.diverClassName=com.mysql.jdbc.Driver spring.datasource.max-active==20 spring.datasource.max-idle=8 spring.datasource.min-idle=8 spring.datasource.initial-size=10 #配置spring JPA信息 spring.jpa.database=MYSQL #控制台是否打印SQL信息 spring.jpa.show-sql=true #当执行DDL语句时,是建立仍是更新仍是删除等...create、update、drop-create spring.jpa.hibernate.ddl-auto=update #持久化命名策略,当建立一个实体类,会在相应的数据库中新增一张该实体类对应的数据库表结构 spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
package com.cori.demo.bean; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; /** * 建立一个用户实体类 * * 使用@Entity进行实体类持久化操做,当JPA检测到实体类当中有@Entity注解时,则会在数据库中生成该类对应的表结构性信息, * 如属性为驼峰命名法,则对应生成的表字段为,如:userId -> user_id(可本身定义); * 使用@Id指定主键 * * @author Administrator * */ @Entity public class UserBean { /** * @Id指定主键 * @GeneratedValue(strategy=GenerationType.AUTO) 指定主键的生成策略,MySQL为自动增加 */ @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer userId; private String userName; private Integer userAge; private Integer userSex; private String idCard; public Integer getUserId() { return userId; } public void setUserId(Integer userId) { this.userId = userId; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public Integer getUserAge() { return userAge; } public void setUserAge(Integer userAge) { this.userAge = userAge; } public Integer getUserSex() { return userSex; } public void setUserSex(Integer userSex) { this.userSex = userSex; } public String getIdCard() { return idCard; } public void setIdCard(String idCard) { this.idCard = idCard; } }
建立实体类以后,这一步启动服务,而后进入MySQL数据库中查看,能够看到对应的user_bean表结构已经建立好了。java
package com.cori.demo.Repository; import org.springframework.data.repository.CrudRepository; import com.cori.demo.bean.UserBean; public interface UserRepository extends CrudRepository<UserBean, Integer>{ }
package com.cori.demo.service; import javax.annotation.Resource; import javax.transaction.Transactional; import org.springframework.stereotype.Service; import com.cori.demo.Repository.UserRepository; import com.cori.demo.bean.UserBean; @Service public class UserService { @Resource private UserRepository userRepository; //新增记录 @Transactional public void save(UserBean bean) { userRepository.save(bean); } //删除记录 @Transactional public void delete(int id) { userRepository.delete(id); } //查询记录 public Iterable<UserBean> findAll() { return userRepository.findAll(); } }
package com.cori.demo.controller; import javax.annotation.Resource; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.cori.demo.bean.UserBean; import com.cori.demo.service.UserService; @RestController @RequestMapping("/user") public class UserController { @Resource private UserService userService; @RequestMapping("/save") public String save() { UserBean bean = new UserBean(); bean.setUserName("张三"); bean.setUserAge(28); bean.setUserSex(0); bean.setIdCard("123456789123456789"); userService.save(bean); return "ok"; } @RequestMapping("/delete") public String delete() { userService.delete(1); return "ok"; } @RequestMapping("/getAll") public Iterable<UserBean> findAll(){ return userService.findAll(); } }
到这里已经实现了简单的增删查功能了,能够启动服务进行测试了。mysql