久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何通過(guò)ibatis操作mysql

共計(jì) 3476 個(gè)字符,預(yù)計(jì)需要花費(fèi) 9 分鐘才能閱讀完成。

本篇文章為大家展示了如何通過(guò) ibatis 操作 mysql,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

步驟如下:
1,在 eclipse 中新建一個(gè)工程 ibatisnew,然后把 mysql 和 ibatis 的 jar 包導(dǎo)入進(jìn)去。這兩個(gè)包 (ibatis-2.3.4.726.jar+mysql-connector-java-5.0.8-bin.jar) 可以從網(wǎng)上, 直接拷貝到 WEB-INF/lib 目錄下。

2,建立 SqlMapConfig.xml 文件
這個(gè)文件包含了的配置,和各個(gè)數(shù)據(jù)表對(duì)應(yīng)的 xml 的引用部分。

文件名:SqlMapConfig.xml
文件內(nèi)容:
?xml version= 1.0 encoding= UTF-8 ?

!DOCTYPE sqlMapConfig 
  PUBLIC -//ibatis.apache.org//DTD SQL Map Config 2.0//EN  
 

sqlMapConfig

  !– Configure a built-in transaction manager.  If youre using an
  app server, you probably want to use its transaction manager
  and a managed datasource —
  transactionManager type= JDBC commitRequired= false
  dataSource type= SIMPLE
  property name= JDBC.Driver value= com..jdbc.Driver /
  property name= JDBC.ConnectionURL value= jdbc:mysql://127.0.0.1:3306/db /
  property name= JDBC.Username value= root /
  property name= JDBC.Password value= /
  /dataSource
  /transactionManager

  !– List the SQL Map XML files. They can be loaded from the
  classpath, as they are here (com.domain.data…) —
  sqlMap resource= test_ibatis/User.xml /

/sqlMapConfig

3,建立 SqlMapConfig.xml 中引用的 User.xml 文件,
這個(gè)文件對(duì)應(yīng)數(shù)據(jù)庫(kù)中的 user 表,在這個(gè)文件中可以定義別名,可以寫 sql 語(yǔ)句。

文件名:User.xml
文件內(nèi)容:
?xml version= 1.0 encoding= UTF-8 ?

!DOCTYPE sqlMap 
  PUBLIC -//ibatis.apache.org//DTD SQL Map 2.0//EN  
 

sqlMap namespace= User

  !– Use type aliases to avoid typing the full classname every time. —
  typeAlias alias= User type= test_ibatis.User /

  !– Select with no parameters using the result map for Account class. —
  select id= selectAllUsers result >  select * from user
  /select

/sqlMap

4,建立 user.xml 文件中指定的 class 的文件
這個(gè)文件就是一個(gè) javabean,和數(shù)據(jù)庫(kù)的表的字段相對(duì)應(yīng),有 set 和 get 方法。

文件名;User.java
文件內(nèi)容:
package test_ibatis;

import java.sql.Date;

public class User {
  @Override
  public String toString() {
  // TODO Auto-generated method stub
  String str = id = + this.id;
  str += name = + this.name;
  str += birthday = + this.birthday;
  str += money = + this.money;
  return str;
  }

  private int id;
  private String name;
  private Date birthday;
  private float money;

  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 getBirthday() {
  return birthday;
  }

  public void setBirthday(Date birthday) {
  this.birthday = birthday;
  }

  public float getMoney() {
  return money;
  }

  public void setMoney(float money) {
  this.money = money;
  }
}

5,建立 DAO 程序和實(shí)現(xiàn)程序
接口名:IUserDAO.java
內(nèi)容:
package test_ibatis;

import java.util.List;

public interface IUserDAO {
  public List User getAllUser();
}

實(shí)現(xiàn)類:IUserDAOImpl.java
內(nèi)容:
package test_ibatis;

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;

public class IUserDAOImpl implements IUserDAO {

  private static SqlMapClient client = null;
 
  static {
  try {
  Reader reader = Resources.getResourceAsReader(test_ibatis/SqlMapConfig.xml
  client = SqlMapClientBuilder.buildSqlMapClient(reader);
  } catch (IOException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
  }
 
  public List User getAllUser() {
  // TODO Auto-generated method stub
  try {
  return client.queryForList(selectAllUsers
  } catch (SQLException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
  return null;
  }
}

1,實(shí)現(xiàn)類中要使用 ibatis 提供的功能,先從 xml 文件中讀取配置,構(gòu)造 SqlMapClient 的對(duì)象。
2,具體的實(shí)現(xiàn)方法,通過(guò)調(diào)用 SqlMapClient 提供的方法,指定 xml 中的 id 即可執(zhí)行對(duì)應(yīng)的 sql,并返回結(jié)果。

6,測(cè)試 class
文件名:UserDAO.java
文件內(nèi)容:
package test_ibatis;

public class UserDAO {

  /**
  * @param args
  */
  public static void main(String[] args) {
  // TODO Auto-generated method stub
  IUserDAO dao = new IUserDAOImpl();
  for (User user : dao.getAllUser()) {
  System.out.println(user);
  }
  nbsp

上述內(nèi)容就是如何通過(guò) ibatis 操作 mysql,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-28發(fā)表,共計(jì)3476字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 三台县| 安乡县| 文成县| 赣州市| 荣昌县| 黄石市| 西吉县| 潞西市| 双城市| 大兴区| 家居| 华亭县| 张家界市| 张家川| 衡阳市| 巴林右旗| 鹤庆县| 兴仁县| 大新县| 新宾| 南部县| 东平县| 万全县| 桓台县| 阿城市| 阳东县| 墨竹工卡县| 眉山市| 新津县| 当雄县| 宜丰县| 西林县| 会理县| 泸定县| 苏尼特左旗| 夹江县| 微山县| 阿克陶县| 安庆市| 始兴县| 边坝县|