ibatis mysql_Ibatis + MySql+Java实例详解

将以下jar包加入到工程,ibatis-2.3.0.677.jar和mysql-connector-java-5.0.8.jar。

0818b9ca8b590ca3270a3433284dd417.png

属性文件:SqlMap.properties

driver=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/test

username=root

password=root

SqlMapconfig.xml

/p>

"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

Student.xml

/p>

"http://ibatis.apache.org/dtd/sql-map-2.dtd">

select * from tb_student

select * from tb_student where id=#id#

select id,name,birth,score from tb_student where name like '%$name$%'

insert into tb_student (name,birth,score) values (#name#,#birth#,#score#)

select @@identity as inserted

delete from tb_student where id=#id#

update tb_student set name=#name#,birth=#birth#,score=#score# where id=#id#

Student.java

package iBatis.entity;

import java.sql.Date;

public class Student {

private int id;

private String name;

private Date birth;

private float score;

public Student() {

}

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Date getBirth() {

return birth;

}

public void setBirth(Date birth) {

this.birth = birth;

}

public float getScore() {

return score;

}

public void setScore(float score) {

this.score = score;

}

@Override

public String toString() {

return "id=" + id + "\t name=" + name + "\t birth=" + birth

+ "\t score=" + score + "\n";

}

}

IStudentDao.java

package iBatis.dao;

import java.util.List;

import iBatis.entity.Student;

public interface IStudentDao {

/*

* 添加学生信息

*/

public boolean addStudent(Student student);

/*

* 根据id删除学生信息

*/

public boolean deleteStudentById(int id);

/*

* 更新学生信息

*/

public boolean updateStudent(Student student);

/*

* 查询全部学生信息

*/

public List selectAllStudent();

/*

* 根据学生姓名模糊查询学生信息

*/

public List selectStudentByName(String name);

/*

* 根据学生id查询学生信息

*/

public Student selectStudentById(int id);

}

StudentDaoImpl.java

package iBatis.daoimpl;

import java.io.IOException;

import java.io.Reader;

import java.sql.SQLException;

import java.util.List;

import com.ibatis.common.resources.Resources;

import com.ibatis.sqlmap.client.SqlMapClient;

import com.ibatis.sqlmap.client.SqlMapClientBuilder;

import iBatis.dao.IStudentDao;

import iBatis.entity.Student;

public class StudentDaoImpl implements IStudentDao {

private static SqlMapClient sqlMapClient = null;

// 读取配置文件

static {

try {

Reader reader = Resources

.getResourceAsReader("iBatis/entity/SqlMapConfig.xml");

sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);

reader.close();

} catch (IOException e) {

e.printStackTrace();

}

}

public boolean addStudent(Student student) {

Object object = null;

boolean flag = false;

try {

object = sqlMapClient.insert("addStudent", student);

// System.out.println("添加学生信息的返回值:" + object);

} catch (SQLException e) {

e.printStackTrace();

}

if (object != null) {

flag = true;

}

return flag;

}

public boolean deleteStudentById(int id) {

boolean flag = false;

Object object = null;

try {

object = sqlMapClient.delete("deleteStudentById", id);

// System.out.println("删除学生信息的返回值:" + object + ",这里返回的是影响的函数");

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

if (object != null) {

flag = true;

}

return flag;

}

public boolean updateStudent(Student student) {

boolean flag = false;

Object object = false;

try {

object = sqlMapClient.update("updateStudent", student);

// System.out.println("更新学生信息的返回值:" + object );

} catch (SQLException e) {

e.printStackTrace();

}

if (object != null) {

flag = true;

}

return flag;

}

public List selectAllStudent() {

List students = null;

try {

students = sqlMapClient.queryForList("selectAllStudent");

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return students;

}

public List selectStudentByName(String name) {

List students = null;

try {

students = sqlMapClient.queryForList("selectStudentByName", name);

} catch (SQLException e) {

e.printStackTrace();

}

return students;

}

public Student selectStudentById(int id) {

Student student = null;

try {

student = (Student) sqlMapClient.queryForObject(

"selectStudentById", id);

} catch (SQLException e) {

e.printStackTrace();

}

return student;

}

}

TestIbatis.java

package iBatis.test;

import java.sql.Date;

import java.util.List;

import iBatis.daoimpl.StudentDaoImpl;

import iBatis.entity.Student;

public class TestIbatis {

public static void main(String[] args) {

StudentDaoImpl studentDaoImpl = new StudentDaoImpl();

// 查询所有

System.out.println("查询初始数据表:");

List list1 = studentDaoImpl.selectAllStudent();

for (Student student : list1) {

System.out.println(student);

}

// 测试插入

System.out.println("测试插入:");

Student addStudent = new Student();

addStudent.setName("张三");

addStudent.setBirth(Date.valueOf("2011-09-02"));

addStudent.setScore(88);

System.out.println(studentDaoImpl.addStudent(addStudent));

addStudent.setName("李四");

addStudent.setBirth(Date.valueOf("1990-08-03"));

addStudent.setScore(98);

System.out.println(studentDaoImpl.addStudent(addStudent));

// 根据Id查询

System.out.println("根据Id查询:");

System.out.println(studentDaoImpl.selectStudentById(2));

// 根据姓名查询

System.out.println("根据姓名查询:");

List list = studentDaoImpl.selectStudentByName("四");

for (Student student : list) {

System.out.println(student);

}

// 查询所有

System.out.println("查询修改后数据表:");

List list2 = studentDaoImpl.selectAllStudent();

for (Student student : list2) {

System.out.println(student);

}

// 更新信息

System.out.println("更新信息:");

Student updateStudent = new Student();

updateStudent.setId(1);

updateStudent.setName("王五");

updateStudent.setBirth(Date.valueOf("1990-09-07"));

updateStudent.setScore(24);

System.out.println(studentDaoImpl.updateStudent(updateStudent));

// 查询所有

System.out.println("查询修改后数据表:");

List list3 = studentDaoImpl.selectAllStudent();

for (Student student : list3) {

System.out.println(student);

}

// 删除数据

System.out.println("删除数据:");

Boolean b = studentDaoImpl.deleteStudentById(1);

System.out.println("删除结果:" + b);

// 查询所有

System.out.println("查询修改后数据表:");

List list4 = studentDaoImpl.selectAllStudent();

for (Student student : list4) {

System.out.println(student);

}

}

}

转载:http://www.tuicool.com/articles/mQNnYnF

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值