国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

詳解springboot中mybatis注解形式

2024-07-14 08:42:32
字體:
來源:轉載
供稿:網友

springboot整合mybatis對數據庫進行訪問,本實例采用注解的方式,如下:

pom.xml文件

 <parent>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-parent</artifactId>    <version>2.0.5.RELEASE</version>  </parent>  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>    <maven.compiler.source>1.8</maven.compiler.source>    <maven.compiler.target>1.8</maven.compiler.target>  </properties>   <dependencies>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-test</artifactId>      <scope>test</scope>    </dependency>     <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.45</version>    </dependency>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-jdbc</artifactId>    </dependency>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-configuration-processor</artifactId>      <optional>true</optional>    </dependency>    <dependency>      <groupId>org.mybatis.spring.boot</groupId>      <artifactId>mybatis-spring-boot-starter</artifactId>      <version>1.3.1</version>    </dependency>  </dependencies>   <build>    <plugins>      <plugin>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-maven-plugin</artifactId>      </plugin>    </plugins>  </build></project>

domain類

package com.rookie.bigdata.domain; /** * @author * @date 2018/10/9 */public class Student {  private Long stuNo;  private String name;  private Integer age;  public Student() {  }  public Student(String name, Integer age) {    this.name = name;    this.age = age;  }  public Student(Long stuNo, String name, Integer age) {    this.stuNo = stuNo;    this.name = name;    this.age = age;  }  public Long getStuNo() {    return stuNo;  }  public void setStuNo(Long stuNo) {    this.stuNo = stuNo;  }  public String getName() {    return name;  }  public void setName(String name) {    this.name = name;  }  public Integer getAge() {    return age;  }  public void setAge(Integer age) {    this.age = age;  }  @Override  public boolean equals(Object o) {    if (this == o) return true;    if (o == null || getClass() != o.getClass()) return false;    Student student = (Student) o;    if (stuNo != null ? !stuNo.equals(student.stuNo) : student.stuNo != null) return false;    if (name != null ? !name.equals(student.name) : student.name != null) return false;    return age != null ? age.equals(student.age) : student.age == null;  }  @Override  public int hashCode() {    int result = stuNo != null ? stuNo.hashCode() : 0;    result = 31 * result + (name != null ? name.hashCode() : 0);    result = 31 * result + (age != null ? age.hashCode() : 0);    return result;  }  @Override  public String toString() {    return "Student{" +        "stuNo=" + stuNo +        ", name='" + name + '/'' +        ", age=" + age +        '}';  }}

StudentMapper類

package com.rookie.bigdata.mapper;import com.rookie.bigdata.domain.Student;import org.apache.ibatis.annotations.*;import java.util.List;import java.util.Map;/** * @author * @date 2018/10/9 */@Mapperpublic interface StudentMapper {   @Select("SELECT * FROM student WHERE name = #{name}")  Student findByName(@Param("name") String name);   @Results({      @Result(property = "name", column = "name"),      @Result(property = "age", column = "age")  })  @Select("SELECT name, age FROM student")  List<Student> findAll();   @Insert("INSERT INTO student(name, age) VALUES(#{name}, #{age})")  int insert(@Param("name") String name, @Param("age") Integer age);   @Update("UPDATE student SET age=#{age} WHERE name=#{name}")  void update(Student student);   @Delete("DELETE FROM student WHERE id =#{id}")  void delete(Long id);   @Insert("INSERT INTO student(name, age) VALUES(#{name}, #{age})")  int insertByUser(Student student);   @Insert("INSERT INTO student(name, age) VALUES(#{name,jdbcType=VARCHAR}, #{age,jdbcType=INTEGER})")  int insertByMap(Map<String, Object> map); }

測試類如下:

package com.rookie.bigdata.mapper;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;import org.springframework.transaction.annotation.Transactional;import static org.junit.Assert.*;/** * @author * @date 2018/10/10 */@RunWith(SpringRunner.class)@SpringBootTestpublic class StudentMapperTest {   @Autowired  private StudentMapper studentMapper;   @Test  public void findByName() throws Exception {    System.out.println(studentMapper.findByName("zhangsan"));  }   @Test  public void findAll() throws Exception {    System.out.println(studentMapper.findByName("zhangsan"));  }   @Test  public void insert() throws Exception {    System.out.println(  studentMapper.insert("zhangsan", 20));  }   @Test  public void update() throws Exception {  }   @Test  public void delete() throws Exception {  }   @Test  public void insertByUser() throws Exception {  }   @Test  public void insertByMap() throws Exception {  }}

大家可以自己編寫測試類進行測試一下,后續會更新xml的配置方式和mybatis采用多數據源進行配置的方式


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 邓州市| 汾西县| 巍山| 红桥区| 梅州市| 乐安县| 报价| 仙桃市| 大安市| 昌都县| 长宁县| 新田县| 怀集县| 鞍山市| 鄄城县| 商丘市| 灌阳县| 临清市| 建瓯市| 濉溪县| 通榆县| 琼结县| 定边县| 靖江市| 元谋县| 阿拉善左旗| 沙河市| 牙克石市| 昔阳县| 新邵县| 呼图壁县| 汤阴县| 兖州市| 定边县| 靖江市| 高阳县| 涟源市| 龙陵县| 乌拉特后旗| 达孜县| 资阳市|