Mabitis入门(小学生总结,多多指点)
来源:互联网 发布:qq飞车噬魂金甲数据 编辑:程序博客网 时间:2024/06/05 04:28
Mybatis 需要一个核心的 .jar 包(mybatis-3.2.8.jar),和两个支持的 .jar包(cglib-2.2.jar,asm-3.3.jar).
步骤:
一、 创建核心的的配置文件 1.连接数据库的参数 名:mysql-config.xml
<?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> <environments default="environment"> <environment id="environment"> <!-- JDBC不是告之mybatis直连操作的意思,告之转换协议需要 mysql...jar --> <transactionManager type="JDBC"></transactionManager> <!-- POOLED:使用缓存方式解析DB --> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/book?useUnicode=true&characterEncoding=utf-8"/> <property name="username" value="root"/> <property name="password" value="root"/> </dataSource> </environment> </environments> <mappers> <!-- 加载各个表和实体类对象映射关系的xml --> <mapper resource="com/web/mybatis/userSql.xml"/> </mappers></configuration>
二、连接针对需要操作表的映射关系 名:userSql.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="usersMapper"> <!-- 针对users表相关数据库表的映射配置文件 --> <resultMap type="com.web.entity.Users" id="userMap"> <id column="uid" property="uid" javaType="Integer" jdbcType="INTEGER"/> <result column="uname" property="uname" javaType="string" jdbcType="VARCHAR"/> <result column="upwd" property="upwd" jdbcType="VARCHAR" javaType="string" /> <result column="usex" property="usex" jdbcType="VARCHAR" javaType="string" /> <result column="udid" property="udid" jdbcType="INTEGER" javaType="Integer" /> <result column="udate" property="udate" jdbcType="VARCHAR" javaType="string" /> <result column="ulogo" property="ulogo" jdbcType="VARCHAR" javaType="string" /> <association property="dept" javaType="com.web.entity.Dept" resultMap="deptMap"></association> </resultMap> <resultMap type="com.web.entity.Dept" id="deptMap"> <id column="id" property="id" javaType="Integer" jdbcType="INTEGER"/> <result column="d_name" property="name" javaType="string" jdbcType="VARCHAR"/> </resultMap> <!-- 数据查询语句--> <select id="SelectUser" resultMap="userMap" parameterType="com.web.entity.Users"> select * from users where uname like #{uname} </select></mapper>
其中< id />是主键,column=”“是数据库的字段名,property=”“是实体类中对映的属性名。
三、创建Mybatis工厂连接池的启动类(自定义),一方面,其担任多线程连接池.jar入口的角色,另一方面,激活连接池.jar
package com.web.mybatis;import java.io.IOException;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;/** * mybatis 连接池jar 入口 * 当mybatis被Spring整合的时候该类不存在 * @author Administrator * */public class MysqlMyabitsSessionFactory { //创建工程连接池的对象,也就是线程的对象 private static SqlSessionFactory sqlSession=null; private static MysqlMyabitsSessionFactory mySession=null; // public MysqlMyabitsSessionFactory() { //加载核心的配置文件 mysql-config.xml String resource="com/web/mybatis/mysql-config.xml"; //创建读取该配置文件的IO流 try { //创建mybatis Reader读取配置文件的对象 Reader read=Resources.getResourceAsReader(resource); //通过配置文件对象来获取操作线程 sqlSession=new SqlSessionFactoryBuilder().build(read); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //返回当前的类对象 public static MysqlMyabitsSessionFactory getInstance(){ if(mySession==null){ return new MysqlMyabitsSessionFactory(); } return mySession; } public static SqlSessionFactory getSqlSessionFactory(){ return sqlSession; }}
四、创建一个类,实现select操作
package com.web.control;import java.util.List;import org.apache.ibatis.session.SqlSession;import com.web.entity.Users;import com.web.mybatis.MysqlMyabitsSessionFactory;public class UsersModel { //mybatis连接池对象 private SqlSession sqlSession=null; public UsersModel() { // TODO Auto-generated constructor stub if(sqlSession==null){ sqlSession=MysqlMyabitsSessionFactory.getInstance() .getSqlSessionFactory().openSession(); } } public List<Users> SelectUsers(){ Users user=new Users(); user.setUname("%ete%"); List<Users> list=this.sqlSession.selectList("SelectUser", user);// ("SelectUser"); return list; } public static void main(String[] args) { // TODO Auto-generated method stub UsersModel um=new UsersModel(); List<Users> ls=um.SelectUsers(); for (Users users : ls) { System.out.println(users.getUid()+"-"+users.getUname1()); } }}
Mybatis接口开发模式只需在上面的程序稍作修改1.我们先在com.web.mapper包下建立一个实现接口创建一个查询方法
package com.web.mapper;import java.util.List;import com.web.entity.User;public interface IUserMappler { public List<User> SearchUser(User user); public int DeleteUser(User user);}
2.
3.
阅读全文
0 0
- Mabitis入门(小学生总结,多多指点)
- 新手报道!各位多多指点
- 关于PCBLayout的一些具体细节的认识(能力有限,请大家多多指点)
- 欢迎大家多多指点!提提人气!
- 想学C++大家多多指点
- 想学C++大家多多指点
- ADB Shell Commands,个人翻译,多多指点
- 大家好,请大家多多指点
- (小弟菜鸟,大家多多指点)关于raid卡的写策略有两种 write-through和write-back
- 字符串小结--菜鸟文章,老鸟多多指点!
- 我想多学点软件测试的知识,请高手多多指点
- java测试题请各位高手多多指点
- 正在自学C,请大家多多指点,共同进步!谢谢
- 简单的一个三级联动,望朋友们多多指点
- VMware Workstation安装CentOS7(菜鸟笔记,多多指点)
- 拼多多笔试总结
- 腾讯网络编辑入门指点
- 小生入门请多多指教
- debian将用户添加到sudoers
- python基础知识
- linux初学者-DNS集群篇
- 二十三种设计模式之代理模式(一)
- Xamarin.Forms 用户界面——控件——主题——Light Theme
- Mabitis入门(小学生总结,多多指点)
- JSP与Servlet之间的传值
- 【GDOI2018模拟8.7】图的异或
- EL表达式中获取list长度
- 数组和链表的区别,数组和指针的区别
- Java类和对象 详解(一)
- Bridging signals
- 电脑桌面图片变成白色的解决方案
- C#连接MySQL数据库