?
創建表
CREATE TABLE orders( order_id INT PRIMARY KEY AUTO_INCREMENT, order_no VARCHAR(20), order_price FLOAT ); INSERT INTO orders(order_no, order_price) VALUES('aaaa', 23); INSERT INTO orders(order_no, order_price) VALUES('bbbb', 33); INSERT INTO orders(order_no, order_price) VALUES('cccc', 22);
?
創建javabean類
package com.hb.bean; public class Order { private int id; private String orderNo; private float price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getOrderNo() { return orderNo; } public void setOrderNo(String orderNo) { this.orderNo = orderNo; } public float getPrice() { return price; } public void setPrice(float price) { this.price = price; } @Override public String toString() { return "Order [id=" + id + ", orderNo=" + orderNo + ", price=" + price + "]"; } }
?
創建映射XML文件
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.hb.bean.orderMapper"> <!-- 這里namespace必須是“包名 + xml文件名”,不然要運行的時候要報錯 “is not known to the MapperRegistry” --> <!-- 在SQL語句中定義別名,保證別名與類屬性名一致 --> <select id="selectOrder" parameterType="int" resultType="com.hb.bean.Order"> select order_id id, order_no orderNo,order_price price from orders where order_id=#{id} </select> <!-- 使用自定義類型,指名類屬性與表字段的對應關系 --> <select id="selectOrderResultMap" parameterType="int" resultMap="orderResultMap"> select * from orders where order_id=#{id} </select> <resultMap type="com.hb.bean.Order" id="orderResultMap"> <id property="id" column="order_id" /> <result property="orderNo" column="order_no" /> <result property="price" column="order_price" /> </resultMap> </mapper>
?
配置mybatis總配置文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <settings> <!-- changes from the defaults for testing --> <setting name="cacheEnabled" value="false" /> <setting name="useGeneratedKeys" value="true" /> <setting name="defaultExecutorType" value="REUSE" /> </settings> <environments default="development"> <environment id="development"> <transactionManager type="jdbc" /> <dataSource type="POOLED"> <!-- <property name="driver" value="oracle.jdbc.driver.OracleDriver"/> <property name="url" value="jdbc:oracle:thin:@192.168.56.201:1521:system"/> --> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/mybatis" /> <property name="username" value="root" /> <property name="password" value="123456" /> </dataSource> </environment> </environments> <mappers> <mapper resource="com/hb/bean/orderMapper.xml" /> </mappers> </configuration>
?
創建測試類
package com.hb.test2; import java.io.InputStream; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.Before; import org.junit.Test; import com.hb.bean.Order; public class Test2 { public static SqlSessionFactory sqlSessionFactory; public static SqlSession sqlSession; @Before public void init(){ //"/"表示是在src根目錄下 String source = "config.xml"; InputStream inputStream = Test2.class.getClassLoader().getResourceAsStream(source); try { sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); // sqlSession = sqlSessionFactory.openSession(); //是否自動提交,默認不是自動提交的 sqlSession = sqlSessionFactory.openSession(true); } catch (Exception e) { e.printStackTrace(); } } @Test public void selectById(){ String statment = "com.hb.bean.orderMapper.selectOrder"; Order order = sqlSession.selectOne(statment, 1); System.out.println(order); } @Test public void selectById2(){ String statment = "com.hb.bean.orderMapper.selectOrderResultMap"; Order order = sqlSession.selectOne(statment, 1); System.out.println(order); } }
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
