本篇文章给大家带来的内容是关于springboot中mybatis注解形式的介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
springboot整合mybatis对数据库进行访问,本实例采用注解的方式,如下:
pom.xml文件
org.springframework.boot spring-boot-starter-parent 2.0.5.RELEASE UTF-8 1.8 1.8 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-starter-web mysql mysql-connector-java 5.1.45 org.springframework.boot spring-boot-starter-jdbc org.springframework.boot spring-boot-configuration-processor true org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.1 org.springframework.boot spring-boot-maven-plugin
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 +
'}';
}
}
PHP网络编程技术详解由浅入深,全面、系统地介绍了PHP开发技术,并提供了大量实例,供读者实战演练。另外,笔者专门为本书录制了相应的配套教学视频,以帮助读者更好地学习本书内容。这些视频和书中的实例源代码一起收录于配书光盘中。本书共分4篇。第1篇是PHP准备篇,介绍了PHP的优势、开发环境及安装;第2篇是PHP基础篇,介绍了PHP中的常量与变量、运算符与表达式、流程控制以及函数;第3篇是进阶篇,介绍
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
*/
@Mapper
public 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 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 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)
@SpringBootTest
public 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采用多数据源进行配置的方式









