xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
apl.com.test
ssi2
war
0.0.1-SNAPSHOT
ssi2 Maven Webapp
http://maven.apache.org
org.apache.ibatis
ibatis-core
3.0
oracle.jdbc.driver
ojdbc14
10.1.0.5
org.apache.ibatis
ibatis-sqlmap
3.0-beta-9
org.apache.servicemix.bundles
org.apache.servicemix.bundles.ibatis-sqlmap
2.3.4.726_3
ssi2
2. sqlmap-config.xml配置
3.实体映射类的配置(ibatis操作数据库表的文件)
SELECT * FROM TEST_TTT
SELECT * FROM TEST_TTT where id = #id#
insert into TEST_TTT(id,text,reeee,sysname,sysnumber) values(#id#,#text#,#reeee#,#sysname#,#sysnumber#)
delete TEST_TTT where id = #id#
update TEST_TTT set text=#text#,
reeee=#reeee#,
sysname=#sysname#,
sysnumber=#sysnumber#
where id=#id#
select * from TEST_TTT where sysname like '%$sysname$%'
select test_tttpkseq.nextVal from dual
insert into TEST_TTT(id,text,reeee,sysname,sysnumber) values
(#id#,#text#,#reeee#,#sysname#,#sysnumber#)
4. 配置实体类(类中的属性与表中的字段对应)
public class Student {
private int id;
/**测试内容*/
private String text;
/**备注信息*/
private String reeee;
/**测试发送内容的单位名称*/
private String sysname;
/**测试发送内容单位的编号*/
private String sysnumber;
public Student() {
}
public Student(int id, String text, String reeee, String sysname,
String sysnumber) {
super();
this.id = id;
this.text = text;
this.reeee = reeee;
this.sysname = sysname;
this.sysnumber = sysnumber;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public String getReeee() {
return reeee;
}
public void setReeee(String reeee) {
this.reeee = reeee;
}
public String getSysname() {
return sysname;
}
public void setSysname(String sysname) {
this.sysname = sysname;
}
public String getSysnumber() {
return sysnumber;
}
public void setSysnumber(String sysnumber) {
this.sysnumber = sysnumber;
}
@Override
public String toString() {
String content ="tid="+id+"\text="+text+"\reeee="+reeee+"\name="+sysname+"\number="+sysnumber;
return content;
}
}
5.写一个接口(用于保存对实体类的一些操作如增删改查等…)
import java.util.List;
public interface IStudentDao {
public void addStudent(Student student);
public void addStudentBySequence(Student studetn);
public void deleteStudent(int id);
public void updateStudentById(Student student);
public List queryAllStudetn();
public List queryStudentByName(String sysname);
public Student queryStudentById(int id);
}
6.对接口中方法的实现(测试并把结果输出到控制台):
import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import java.util.List;
import org.apache.ibatis.io.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class StudentDaoImpl implements IStudentDao{
//读取实体配置文件
private static SqlMapClient sqlMapClient = null;
static {
try {
Reader reader = Resources.getResourceAsReader("com/zjapl/sqlmap-config.xml");
//sqlMapClient = sqlMapClient.buildSqlMapClient(reader);
sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public void addStudent(Student student) {
try {
sqlMapClient.insert("User.addStudent", student);
} catch (SQLException e) {
e.printStackTrace();
}
}
public void addStudentBySequence(Student student) {
try {
sqlMapClient.insert("User.addStudentBySequence", student);
System.out.println("id="+student.getId());
} catch (SQLException e) {
e.printStackTrace();
}
}
public void deleteStudent(int id) {
try {
System.out.println(sqlMapClient.delete("User.deleteStudent", id));
} catch (SQLException e) {
e.printStackTrace();
}
}
public void updateStudentById(Student student) {
try {
System.out.println(sqlMapClient.update("User.updateStudentById", student));
} catch (SQLException e) {
e.printStackTrace();
}
}
public List queryAllStudetn() {
List studentList = null;
try {
studentList = sqlMapClient.queryForList("User.SelectAllStudent");
} catch (SQLException e) {
e.printStackTrace();
}
return studentList;
}
public List queryStudentByName(String sysname) {
List studentList = null ;
try {
studentList = sqlMapClient.queryForList("User.queryStudentByName", sysname);
} catch (SQLException e) {
e.printStackTrace();
}
return studentList;
}
public Student queryStudentById(int id) {
Student student = null;
try {
student = (Student) sqlMapClient.queryForObject("User.queryStudentById",id);
} catch (SQLException e) {
e.printStackTrace();
}
return student;
}
/**
* @param args
*/
public static void main(String[] args) {
StudentDaoImpl dao = new StudentDaoImpl();
//3.添加一条记录
//Student student = new Student();
//student.setId(9);
//student.setText("添加内容测试ibatis_StudetnDaoImpl");
//student.setReeee("就是简单备注");
//student.setSysname("张三系统");
//student.setSysnumber("3232323");
//dao.addStudent(student);
//2.查询一个用户
//System.out.println(dao.queryStudentById(4));
//1.查询所有用户
for(Student student:dao.queryAllStudetn()) {
System.out.println(student);
}
/*try {
Class.forName("com.zjapl.Student").newInstance();
} catch (Exception e) {
e.printStackTrace();
}*/
//4删除一个用户
// dao.deleteStudent(9);
//5.更新一位用户
//Student student = new Student();
//student.setId(9);
//student.setText("更新测试ibatis_StudetnDaoImpl");
//student.setReeee("更新");
//student.setSysname("李四系统");
//student.setSysnumber("789432");
//dao.updateStudentById(student);
//6.模糊查询按名称
//for (Student studentList:dao.queryStudentByName("杭")) {
//System.out.println(studentList);
//}
//7.id序列后,插入一条记录
//Student student = new Student();
//student.setId(9); //序列化后这里的设置没有作用。
//student.setText("oracle序列添加测试ibatis_StudetnDaoImpl");
//student.setReeee("seq测试");
//student.setSysname("sequense系统");
//student.setSysnumber("34654543");
//dao.addStudentBySequence(student);
}
}
分享到:
2013-06-02 12:17
浏览 1710
评论