zoukankan      html  css  js  c++  java
  • java mybatis学习一

    1.引入maven包 和 导入 sqljdbc包

    <dependency>
      <groupId>org.apache.ibatis</groupId>
      <artifactId>ibatis-sqlmap</artifactId>
      <version>3.0-beta-10</version>
    </dependency>

     sqljdbc官方地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=11774

     下载地址: https://download.microsoft.com/download/A/F/B/AFB381FF-7037-46CE-AF9B-6B1875EA81D7/chs/sqljdbc_6.0.8112.100_chs.tar.gz

    下载后解压后找到相应的文件 sqljdbc42.jar

    然后在 File->Project Structure->Project Settings->Modules ->Dependencies

    点击添加按钮 找到相应的 sqljdbc42.jar 包即可

    2.在资源文件夹下,建立 jdbc.property 和 mybatis-config.xml

    driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
    url=jdbc:sqlserver://192.168.1.10:1433;DatabaseName=test
    user=sa
    password=devdevdev
    <?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>
        <!-- 引入属性文件 -->
        <properties resource="jdbc.properties"/>
        <environments default="development">
            <environment id="development">
                <!-- 事务管理器 -->
                <transactionManager type="JDBC" />
                <!-- 配置数据源 -->
                <dataSource type="POOLED">
                    <property name="driver" value="${driver}" />
                    <property name="url" value="${url}" />
                    <property name="username" value="${user}" />
                    <property name="password" value="${password}" />
                </dataSource>
            </environment>
        </environments>
        <!-- 配置映射资源文件 -->
        <mappers>
            <mapper resource="Users.xml"/>
        </mappers>
    </configuration>

    3.建立Users类

    public class Users  {
        //id
        private int id;
        //用户名
        private String userName;
        //密码
        private String password;
    
        public int getId() {
            return id;
        }
        public void setId(int id) {
            this.id = id;
        }
        public String getUserName() {
            return userName;
        }
        public void setUserName(String userName) {
            this.userName = userName;
        }
        public String getPassword() {
            return password;
        }
        public void setPassword(String password) {
            this.password = password;
        }
    
        public Users() {
        }
        public Users(String name,String pwd) {
            this(0,name,pwd);
        }
        public Users(int id,String name,String pwd) {
            setId(id);
            setUserName(name);
            setPassword(pwd);
        }
    }

    4.在资源文件夹下建立users.xml文件(暂时省略DAO层)

    <?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.cnblog.g2.Users">
        <!-- 查询全部用户 -->
        <select id="queryUsers" resultType="com.cnblog.g2.Users">
            select *
            from tb_users
        </select>
        <!-- 按照ID查询 -->
        <select id="queryUsersId" parameterType="int" resultType="com.cnblog.g2.Users">
            select * from tb_users where id=#{id}
        </select>
        <!-- 添加用户 -->
        <insert id="insertUsers" parameterType="com.cnblog.g2.Users" >
            insert into tb_users(username,password)
            values(#{userName},#{password})
    <selectKey keyProperty="id" resultType="int" order="AFTER">
    select @@identity
    </selectKey>
    </insert>

    <!-- 修改用户 -->

    <update id="updateUsers" parameterType="com.cnblog.g2.Users">

    update tb_users set password=#{password} where id=#{id}

    </update>

    <!-- 删除用户 -->

    <delete id="deleteUsers" parameterType="com.cnblog.g2.Users">

    delete tb_users where id=#{id}

    </delete>

    </mapper>

    5.实现 SQL Mapper对象

    
    
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    
    
    import java.io.Reader;
    
    
    import java.io.IOException;


    public
    class SqlMapper { //创建SqlSessionFactory对象 private static SqlSessionFactory factory; static{ try { //获取配置文件资源 Reader resourceAsReader = Resources.getResourceAsReader("mybatis-config.xml"); //获取SqlSessionFactory对象 factory=new SqlSessionFactoryBuilder().build(resourceAsReader); } catch (IOException e) { e.printStackTrace(); } } /** * 获取SqlSession对象 */ public static SqlSession getSqlSession(){ return factory.openSession(); } /** * 关闭SqlSession对象 */ public static void closeSqlSession(SqlSession session){ if(null!=session){ //关闭Sqlsession对象 session.close(); } session=null; } }

    6. 调用

    public class App 
    {
        public static void main( String[] args )
        {
            SqlSession session = SqlMapper.getSqlSession();
            List<Users> list = session.selectList("com.cnblog.g2.Users.queryUsers");
            Users grace = new Users("Grace", "234");
            int insertedRowCount = session.insert("com.cnblog.g2.Users.insertUsers", grace);
    //在这里新插入的Id被自动赋值到 grace对象里的Id里了(setId()方法)
            session.commit();
    }
    }
  • 相关阅读:
    OneSQL安装
    Dropbox可伸缩性设计最佳实践分享
    软件开发实践的24条军规
    最精彩的英语学习经验总结:俺的英语之路
    Facebook和Google如何激发工程师的创造力
    十种更好的表达“你的代码写的很烂”的方法
    一次java程序的重构
    漂亮代码
    一段代码引发的思考
    最难忘的Bug调试经历
  • 原文地址:https://www.cnblogs.com/zhshlimi/p/6649777.html
Copyright © 2011-2022 走看看