mybatis启蒙第一讲

1使用intelliJ IDEA+mysql数据库,实现功能:

   实现对数据库中students表的查询,插入。(欢迎完善)

2mybatis 相关包

数据库准备:

3.相关准备完备,新建项目  -->hello

  整体实例项目如下:

4.新建lib,导入相关jar包

mysql-connector-java-5方便我们实现对数据库的连接

log4j jar包在控制台打印mybatis操作数据库的过程(很重要,但很简单,认真看一下)

5.新建log4j.properties文件,配置log4j

内容:

# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n6.

6.新建student类(实现面向对象编程的思想)、

内容:
7package com.gyf.model;

import java.io.Serializable;

public class student implements Serializable {
   public student() {
      // TODO Auto-generated constructor stub
   }

   public student(int id, String sno, String name, int age, String school, String pass) {
      this.id = id;
      this.sno = sno;
      this.name = name;
      this.age = age;
      this.school = school;
      this.pass = pass;
   }

   private int id;
   private String sno;
   private String name;
   private int age;
   private String school;
   private String pass;
   public int getId() {
      return id;
   }
   public void setId(int id) {
      this.id = id;
   }
   public String getSno() {
      return sno;
   }
   public void setSno(String sno) {
      this.sno = sno;
   }
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   public String getSchool() {
      return school;
   }
   public void setSchool(String school) {
      this.school = school;
   }
   public String getPass() {
      return pass;
   }
   public void setPass(String pass) {
      this.pass = pass;
   }
   @Override
   public String toString() {
      return "student [id=" + id + ", sno=" + sno + ", name=" + name + ", age=" + age + ", school=" + school
            + ", pass=" + pass + "]";
   }
   
   

}

7.创建sql配置文件(文件名随意)

实现对数据库的连接

内容:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
    <environment id="development">
        <transactionManager type="JDBC"/>
        <dataSource type="POOLED">
            <property name="driver" value="com.mysql.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://localhost:3306/test"/>
            <property name="username" value="root"/>
            <property name="password" value="123456"/>
        </dataSource>
    </environment>
</environments>
<mappers>
<mapper resource="com/gyf/sqlmap/student.xml"/>
</mappers>
</configuration>

8.创建Mapper.xml文件(文件名随意)

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="student">
    <select id="selectStudent" resultType="com.gyf.model.student" parameterType="int">
      select * from students  where id =#{id}
</select>
    <select id="selectStudentNanme" resultType="com.gyf.model.student" parameterType="String">
      select * from students  where name like '%${value}%'
</select>
    <insert id="insertData" parameterType="com.gyf.model.student">
        insert into students  (id,sno,name,age,school,pass)
        value (#{id},#{sno},#{name},#{age},#{school},#{pass});
    </insert>
</mapper>

9.创建测试类

Demo01:

package test;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.gyf.model.student;
import org.junit.Test;

public class Demo01 {
@Test
    public void test1() throws IOException{
        InputStream is=Resources.getResourceAsStream("SqlMapConfig.xml");
        SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is);
        SqlSession session=sessionFactory.openSession();
//        student user=session.selectOne("selectStudent",2);
//        System.out.println(user);
    List<student> users=session.selectList("selectStudentNanme","张");
    List<student> users2=session.selectList("selectStudentNanme","李");
    System.out.println(users2);
        session.commit();

    }
}

Demo2:

package test;
import com.gyf.model.student;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.io.IOException;
import java.io.InputStream;
public class Demo2 {
    SqlSession session;
    @Before
   public void before() throws IOException
    {
        InputStream is= Resources.getResourceAsStream("SqlMapConfig.xml");
        SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(is);
        session=sessionFactory.openSession();
    }
    @After
   public void after()
    {
        session.commit();

    }
    @Test
    public void Test()
    {
        student student3=new student(205,"256","李四",25,"eggr","255");
        session.insert("insertData",student3);
    }


}

10欢迎测试运行

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值