经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
springboot之JdbcTemplate
来源:cnblogs  作者:海之浪子  时间:2018/10/10 9:12:51  对本文有异议

springboot可以使用JdbcTemplate进行数据库访问,代码如下

添加pom文件

  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>2.0.5.RELEASE</version>
  5. </parent>
  6. <properties>
  7. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  8. <maven.compiler.source>1.8</maven.compiler.source>
  9. <maven.compiler.target>1.8</maven.compiler.target>
  10. </properties>
  11.  
  12. <dependencies>
  13. <dependency>
  14. <groupId>org.springframework.boot</groupId>
  15. <artifactId>spring-boot-starter-web</artifactId>
  16. </dependency>
  17. <dependency>
  18. <groupId>org.springframework.boot</groupId>
  19. <artifactId>spring-boot-starter-test</artifactId>
  20. <scope>test</scope>
  21. </dependency>
  22.  
  23. <dependency>
  24. <groupId>org.springframework.boot</groupId>
  25. <artifactId>spring-boot-starter-web</artifactId>
  26. </dependency>
  27. <dependency>
  28. <groupId>mysql</groupId>
  29. <artifactId>mysql-connector-java</artifactId>
  30. <version>5.1.45</version>
  31. </dependency>
  32. <dependency>
  33. <groupId>org.springframework.boot</groupId>
  34. <artifactId>spring-boot-starter-jdbc</artifactId>
  35. </dependency>
  36.  
  37. </dependencies>
  38.  
  39. <build>
  40. <plugins>
  41. <plugin>
  42. <groupId>org.springframework.boot</groupId>
  43. <artifactId>spring-boot-maven-plugin</artifactId>
  44. </plugin>
  45. </plugins>
  46. </build>
  47. </project>

 

代码如下

  1. CREATE TABLE if NOT EXISTS springboot.student
  2. (
  3. stu_no INT ,
  4. name VARCHAR(20),
  5. age INT
  6. )
  1. package com.rookie.bigdata.domain;
  2. /**
  3. * @author
  4. * @date 2018/10/9
  5. */
  6. public class Student {
  7. private Long stuNo;
  8. private String name;
  9. private Integer age;
  10. public Long getStuNo() {
  11. return stuNo;
  12. }
  13. public void setStuNo(Long stuNo) {
  14. this.stuNo = stuNo;
  15. }
  16. public String getName() {
  17. return name;
  18. }
  19. public void setName(String name) {
  20. this.name = name;
  21. }
  22. public Integer getAge() {
  23. return age;
  24. }
  25. public void setAge(Integer age) {
  26. this.age = age;
  27. }
  28. @Override
  29. public boolean equals(Object o) {
  30. if (this == o) return true;
  31. if (o == null || getClass() != o.getClass()) return false;
  32. Student student = (Student) o;
  33. if (stuNo != null ? !stuNo.equals(student.stuNo) : student.stuNo != null) return false;
  34. if (name != null ? !name.equals(student.name) : student.name != null) return false;
  35. return age != null ? age.equals(student.age) : student.age == null;
  36. }
  37. @Override
  38. public int hashCode() {
  39. int result = stuNo != null ? stuNo.hashCode() : 0;
  40. result = 31 * result + (name != null ? name.hashCode() : 0);
  41. result = 31 * result + (age != null ? age.hashCode() : 0);
  42. return result;
  43. }
  44. @Override
  45. public String toString() {
  46. return "Student{" +
  47. "stuNo=" + stuNo +
  48. ", name='" + name + '\'' +
  49. ", age=" + age +
  50. '}';
  51. }
  52. }
View Code

 

  1. package com.rookie.bigdata.service;
  2. import com.rookie.bigdata.domain.Student;
  3. /**
  4. * @author
  5. * @date 2018/10/9
  6. */
  7. public interface StudentService {
  8. /**
  9. * 添加一个学生
  10. *
  11. * @param student
  12. */
  13. void create(Student student);
  14. /**
  15. * 删除一个学生
  16. *
  17. * @param stuNo
  18. */
  19. void deleteByNo(Integer stuNo);
  20. /**
  21. * 查询学生
  22. *
  23. * @param stuNo
  24. */
  25. Integer queryByStuNo(Integer stuNo);
  26. }
  1. package com.rookie.bigdata.service;
  2. import com.rookie.bigdata.domain.Student;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.jdbc.core.JdbcTemplate;
  5. import org.springframework.stereotype.Service;
  6. /**
  7. * @author
  8. * @date 2018/10/9
  9. */
  10. @Service
  11. public class StudentServiceImpl implements StudentService {
  12. @Autowired
  13. private JdbcTemplate jdbcTemplate;
  14. @Override
  15. public void create(Student student) {
  16. jdbcTemplate.update("INSERT INTO student(stu_no,name,age)VALUE (?,?,?)", student.getStuNo(), student.getName(), student.getAge());
  17. }
  18. @Override
  19. public void deleteByNo(Integer stuNo) {
  20. jdbcTemplate.update("DELETE FROM student WHERE stu_no=?", stuNo);
  21. }
  22. @Override
  23. public Integer queryByStuNo(Integer stuNo) {
  24. return jdbcTemplate.queryForObject("select count(1) from student", Integer.class);
  25. }
  26. }

 

application.properties

  1. spring.datasource.url=jdbc:mysql://localhost:3306/springboot
  2. spring.datasource.username=root
  3. spring.datasource.password=root
  4. spring.datasource.driver-class-name=com.mysql.jdbc.Driver

 

测试代码如下:

  1. package com.rookie.bigdata.service;
  2. import com.rookie.bigdata.domain.Student;
  3. import org.junit.Test;
  4. import org.junit.runner.RunWith;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.boot.test.context.SpringBootTest;
  7. import org.springframework.test.context.junit4.SpringRunner;
  8. import static org.junit.Assert.*;
  9. /**
  10. * @author
  11. * @date 2018/10/9
  12. */
  13. @RunWith(SpringRunner.class)
  14. @SpringBootTest
  15. public class StudentServiceImplTest {
  16. @Autowired
  17. private StudentServiceImpl studentService;
  18. @Test
  19. public void create1() throws Exception {
  20. Student student = new Student();
  21. student.setStuNo(1L);
  22. student.setName("张三");
  23. student.setAge(23);
  24. studentService.create(student);
  25. }
  26. @Test
  27. public void deleteByName1() throws Exception {
  28. studentService.deleteByNo(1);
  29. }
  30. @Test
  31. public void queryByStuNo1() throws Exception {
  32. System.out.println(studentService.queryByStuNo(1));
  33. }
  34. }

 

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号