天天看點

ibatis_001 入門

ibatis學習記錄--001

本執行個體是javaweb項目,使用的是mysql資料庫;所需jar包:ibatis-2.3.0.677.jar;mysql-connector-java-5.1.7-bin.jar;

1.基本java環境搭好後,eclipse建立javaweb項目;導入上述兩jar包;

2.建立實體類:com.lxt.entity.i_user;

package com.lxt.ibatis.entity;

public class i_user {

private integer i_u_id;

private string i_u_name;

private string

i_u_pwd;

public i_user() {

super();

}

public i_user(string

i_u_name, string i_u_pwd) {

this.i_u_name =

i_u_name;

this.i_u_pwd = i_u_pwd;

public i_user(integer i_u_id,

string i_u_name, string i_u_pwd) {

this.i_u_id =

i_u_id;

this.i_u_name = i_u_name;

this.i_u_pwd =

public integer geti_u_id() {

return

public void seti_u_id(integer i_u_id) {

public string geti_u_name() {

public void seti_u_name(string i_u_name)

{

public string geti_u_pwd()

return i_u_pwd;

public void seti_u_pwd(string i_u_pwd)

@override

public string tostring()

return "i_user [i_u_id=" + i_u_id + ", i_u_name=" + i_u_name

+ ",

i_u_pwd=" + i_u_pwd + "]";

3.配置實體類檔案i_user.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="i_user" type="com.lxt.ibatis.entity.i_user" />

<!--

這樣以後改了sql,就不需要去改java代碼了 -->

id表示select裡的sql語句,resultclass表示傳回結果的類型 -->

<select

id="selectallstudent" resultclass="i_user">

select *

from

i_user

</select>

</sqlmap>

4.編寫配置檔案sqlmap.properties,sqlmapconfig.xml

sqlmap.properties:

driver=com.mysql.jdbc.driver

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

username=root

password=root

sqlmapconfig.xml:

<?xml version="1.0" encoding="utf-8"?>

<!doctype sqlmapconfig

public "-//ibatis.apache.org//dtd sql map config

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

<sqlmapconfig>

引用jdbc屬性的配置檔案 -->

<properties

resource="com/lxt/ibatis/config/sqlmap.properties" />

<!-- 使用jdbc的事務管理

-->

<transactionmanager type="jdbc">

<!-- 資料源

<datasource type="simple">

<property name="jdbc.driver"

value="${driver}" />

<property name="jdbc.connectionurl" value="${url}"

/>

<property name="jdbc.username" value="${username}"

<property name="jdbc.password" value="${password}"

</datasource>

</transactionmanager>

這裡可以寫多個實體的映射檔案 -->

<sqlmap resource="com/lxt/ibatis/entity/i_user.xml"

</sqlmapconfig>

4.資料庫裡建立ibatis資料庫和i_user表

5.編寫dao并測試

package com.lxt.ibatis.dao;

import java.io.reader;

import java.sql.sqlexception;

import

java.util.list;

import com.ibatis.common.resources.resources;

com.ibatis.sqlmap.client.sqlmapclient;

com.ibatis.sqlmap.client.sqlmapclientbuilder;

com.lxt.ibatis.entity.i_user;

public class i_userdao {

private static sqlmapclient sqlmapclient = null;

static {

try

reader reader =

resources.getresourceasreader("com/lxt/ibatis/config/sqlmapconfig.xml");

sqlmapclient

= sqlmapclientbuilder.buildsqlmapclient(reader);

reader.close();

catch (exception e) {

// todo: handle

exception

e.printstacktrace();

public

list<i_user> geti_userlist (){

list<i_user> userlist =

null;

try {

userlist =

sqlmapclient.queryforlist("selectallstudent");

} catch (sqlexception e)

// todo auto-generated catch

block

userlist;

public static void main(string args[]){

i_userdao

iud = new i_userdao();

iud.geti_userlist();

for (i_user i_user : userlist)

system.out.println(i_user.tostring());