Student.java
package com.pojo;

import java.util.Date;

public class Student {
int stuid;
String stuName;
int stuAge;
Date stuDate;
String stuSex;
String stuProfess;
String status;
String professName; public int getStuid() {
return stuid;
}
public void setStuid(int stuid) {
this.stuid = stuid;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public int getStuAge() {
return stuAge;
}
public void setStuAge(int stuAge) {
this.stuAge = stuAge;
}
public Date getStuDate() {
return stuDate;
}
public void setStuDate(Date stuDate) {
this.stuDate = stuDate;
}
public String getStuSex() {
return stuSex;
}
public void setStuSex(String stuSex) {
this.stuSex = stuSex;
}
public String getStuProfess() {
return stuProfess;
}
public void setStuProfess(String stuProfess) {
this.stuProfess = stuProfess;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getProfessName() {
return professName;
}
public void setProfessName(String professName) {
this.professName = professName;
} }
  IStudentDAO.java
      
    使用合理描述参数和SQL语句返回值的接口(比如IStudentDAO.class),这样更简单,更安全的代码,便于和其他优秀框架结合
package com.dao;

import com.pojo.Student;

public interface IStudentDAO {
Student getStudentById(int stuid); void addStudent(Student stu); void delStudent(int id); void updateStudent(int id);
}

  Student.xml

    这里的 id="addStudent" 要和IStudentDAO.java接口中的方法名一致

    resultType="student"为实体类在Configuration.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="com.dao.IStudentDAO">
<select id="getStudentById" parameterType="int" resultType="student">
select a.*,b.professname from student a,profess b where a.stuprofess=b.proid and stuid=#{id}
</select>
<insert id="addStudent" parameterType="com.pojo.Student" keyProperty="stuid">
insert into student values(#{stuid},#{stuName},#{stuAge},#{stuDate},#{stuSex,jdbcType=CHAR},#{stuProfess})
</insert>
<delete id="delStudent" parameterType="int">
delete from student where stuid=#{id}
</delete>
<update id="updateStudent" parameterType="int">
update student set stuName=#{stuName} where stuid=#{id}
</update>
</mapper>

  测试代码 

    Test.java
package com.pojo;

import java.io.IOException;
import java.io.Reader;
import java.util.Date; 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.dao.IStudentDAO; public class Test {
public static void main(String[] args) throws IOException {
//读取核心的配置文件
Reader reader = Resources.getResourceAsReader("Configuration.xml");
//创建会话工厂
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
//数据库会话
SqlSession session = factory.openSession();
//查询一个对象 第一个参数字符串是由Student.xml 中的namespace+id组成
// Student stu = session.selectOne("com.dao.StudentMapper.getStudentById",5); //通过接口的方式
IStudentDAO stuDAO = session.getMapper(IStudentDAO.class);
// Student stu = stuDAO.getStudentById(5);
//
// System.out.println(stu.getStuName());
// System.out.println(stu.getStuDate());
// System.out.println(stu.getProfessName()); //测试新增
Student stu = new Student();
stu.setStuid(16);
stu.setStuName("测试新增");
stu.setStuDate(new Date());
// stu.setStuSex("1");
// stu.setStuProfess("1");
// stuDAO.addStudent(stu); //测试删除
stuDAO.delStudent(16);
session.commit();
session.close();
}
}

二.Mybatis 增删改查的更多相关文章

  1. Mybatis入门(二)------增删改查

    Mybatis增删改查基本操作 一.XML实现方式 1.mapper.xml的配置 <?xml version="1.0" encoding="UTF-8" ...

  2. MyBatis增删改查

    MyBatis的简介: MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...

  3. 【Mybatis】简单的mybatis增删改查模板

    简单的mybatis增删改查模板: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE map ...

  4. MyBatis增删改查模板

    1. 首先,和Spring整合一下 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=& ...

  5. 最简单的mybatis增删改查样例

    最简单的mybatis增删改查样例 Book.java package com.bookstore.app; import java.io.Serializable; public class Boo ...

  6. Mybatis框架二:增删改查

    这里是搭建框架和准备数据: http://www.cnblogs.com/xuyiqing/p/8600888.html 实现增删改查功能: 测试类: package junit; import ja ...

  7. MyBatis总结二:增删改查

    上一篇讲述了MyBatis的快速入门,下面在此基础上进行增删改查的操作: 首先定义dao层的接口: package com.zy.dao; import com.zy.domain.User; imp ...

  8. springboot&mybatis 增删改查系列(二)

    数据库篇 我的数据库名为data0525,数据表名为user,其中有五列uid,uname,upass,usex,umessage.uid为主键并且自动生成,由于是练习表,所以并没有考虑设计的合理性. ...

  9. MyBatis初级实战之二:增删改查

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

随机推荐

  1. TimesTen客户端DSN配置

    打开控制面板\管理工具 1.打开数据源(ODBC) 2.选择系统DSN 3.选择添加: 4.单击完成 5.Servers

  2. Java中的时间处理

    日期时间组件使用 java.util.Date:实现类,其对象具有时间.日期组件.java.util.Calendar:抽象类,其对象具有时间.日期组件.java.sql.Date:实现类,其对象具有 ...

  3. Unity游戏项目常见性能问题

    Unity技术支持团队经常会对有需求的客户公司项目进行游戏项目性能审查与优化,在我们碰到过的各种项目相关的问题中也有很多比较共同的方面,这里我们罗列了一些常见的问题并进行了归类,开发者朋友们可以参考下 ...

  4. JS中的prototype(转载)

    本文转载自博客园. 作者:叶剑锋 出处:http://www.cnblogs.com/yjf512/archive/2011/06/03/2071914.html 本文基于下面几个知识点: 1 原型法 ...

  5. Java 条件语句

    1.if...else 一个 if 语句包含一个布尔表达式和一条或多条语句. if(布尔表达式) { //如果布尔表达式为true将执行的语句 }else{ //如果布尔表达式为false将执行的语句 ...

  6. Javascript: hash tables in javascript

    /** * Copyright 2010 Tim Down. * * Licensed under the Apache License, Version 2.0 (the "License ...

  7. Bootstrap导航栏navbar源码分析

    1.本文目地:分析bootstrap导航栏及其响应式的实现方式,提升自身css水平 先贴一个bootstrap的导航栏模板 http://v3.bootcss.com/examples/navbar- ...

  8. 【路一直都在】----img标签垂直居中问题

    先上代码 .dianshang ul li a { height: 100px; vertical-align:middle; display: table-cell;        width: 1 ...

  9. react里面stateless函数的默认参数

    function fn({  children,  params,  dispatch,  location}) { }

  10. 初学jboss

    1.简单安装-环境变量配置-创建控制台用户并访问控制台.   下载了windows版的jboss服务器(jboss-as-7.1.1.Final)     依赖JDK1.6以上版本,jdk环境变量等就 ...