ibatis

来源:互联网 发布:js div添加内容 编辑:程序博客网 时间:2024/04/18 23:25

Student.java

package com.ticast;


import java.util.Date;


public class Student {


private int sid=0;
private String sname=null;
private String major=null;
private Date birth=null;
private float score;
public int getSid() {
return sid;
}
public void setSid(int sid) {
this.sid = sid;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
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() {
String content="sid="+sid+"\tsname="+sname;

return content;
}


}

student.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap 
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap>
  <typeAlias alias="student" type="com.ticast.Student"/>
  <!-- id代表sql  resultClass不屑默认什么 -->
  <select id="selectAllStudent" resultClass="student">
  select *
  from student
  </select>
  <!-- ##表示外部传进来的参数 -->
  <select id="selectStudentById" parameterClass="int" resultClass="student">
  select * 
  from student
  where sid=#sid#
  </select>
 
  <insert id="insertStudent" parameterClass="Student">
  insert into student(sid,sname,major,birth,score)
  values            (#sid#,#sname#,#major#,#birth#,#score#)
  </insert>
 
  <delete id="deleteStudentById" parameterClass="int">
  delete from student 
  where sid=#sid#
  </delete>
  <!-- parameterClass不区分大小写 -->
  <update id="updateStudentById" parameterClass="student">
  update student
  set sname=#sname#,
     major=#major#,
     score=#score#,
     birth=#birth#
  where sid=#sid#
  </update>
 
  <!--模糊查询  -->
  <select id="selectStudentByName" parameterClass="String" resultClass="student">
  select sid,sname,major,birth,score
  from student
  where sname like '%$sname$%'
  </select>
 
  <insert id="insertStudentBYSequence" parameterClass="student">
  <selectKey resultClass="int" keyProperty="sid">
  select student studentPLDequence.nextVal
  from dual
  </selectKey>
 
  insert into student(sid,sname,major,birth,score)
  values            (#sid#,#sname#,#major#,#birth#,#score#)
  </insert>
</sqlMap>


package com.ticast;


import java.io.IOException;
import java.io.Reader;
import java.sql.Date;
import java.sql.SQLException;
import java.util.List;


import com.ibatis.sqlmap.client.SqlMapClient;


public class IStudentDaoImpl implements IStudentDao{


private static SqlMapClient sqlMapClient=null;
static{
try {
Reader reader=com.ibatis.common.resources.Resources.getResourceAsReader("sqlMapConfig.xml");

sqlMapClient=com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(reader);
reader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public void addStudent(Student student) {
try {
sqlMapClient.insert("insertStudent",student);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}


public void addStudentBuSequence(Student student) {
try {
sqlMapClient.insert("insertStudentBYSequence",student);
//先给主键值  在插入记录
System.out.println(student.getSid());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}


public void deleteStudentById(int id) {
try {
System.out.println(sqlMapClient.delete("deleteStudentById", id));
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}


public List<Student> queryAllStudent() {
List<Student> studentList=null;
try {
studentList=sqlMapClient.queryForList("selectAllStudent");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return studentList;
}


public Student queryStudentById(int id) {
Student student=null;
try {
student=(Student)sqlMapClient.queryForObject("selectStudentById",id);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return student;
}


public List<Student> queryStudentByName(String name) {
List<Student> studentList=null;
try {
studentList=sqlMapClient.queryForList("selectStudentByName",name);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return studentList;
}


public void updateStudentById(Student student) {
try {
System.out.println(sqlMapClient.update("updateStudentById", student));
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

public static void main(String[] args) {
IStudentDao dao=new IStudentDaoImpl();

// 1
// for(Student student:dao.queryAllStudent()){
// System.out.println(student);
// }

//2
// System.out.println(dao.queryStudentById(1));

//3
// Student student=new Student();
// student.setSid(100);
// student.setScore(99);
// student.setMajor("youxi");
// student.setSname("wushu");
// student.setBirth(Date.valueOf("2008-02-22"));
// dao.addStudent(student);

// dao.deleteStudentById(1);

// Student student=new Student();
// student.setSid(100);
// student.setScore(99);
// student.setMajor("youxi123");
// student.setSname("wushu123");
// student.setBirth(Date.valueOf("2008-08-14"));
//
// dao.updateStudentById(student);

//6
for(Student student:dao.queryStudentByName("w")){
System.out.println(student);
}
}


}

原创粉丝点击