国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

這篇具有很好參考價值的文章主要介紹了MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Mybatis簡介

什么是Mybatis

MyBatis 是一個優(yōu)秀的基于java的持久層框架,它內(nèi)部封裝了jdbc,使開發(fā)者只需要關(guān)注sql語句本身,而不需要花費精力去處理加載驅(qū)動、創(chuàng)建連接、創(chuàng)建statement等繁雜的過程。

mybatis通過xml或注解的方式將要執(zhí)行的各種 statement配置起來,并通過java對象和statement中sql的動態(tài)參數(shù)進行映射生成最終執(zhí)行的sql語句。

最后mybatis框架執(zhí)行sql并將結(jié)果映射為java對象并返回。采用ORM思想解決了實體和數(shù)據(jù)庫映射的問題,對jdbc 進行了封裝,屏蔽了jdbc api 底層訪問細節(jié),使我們不用與jdbc api 打交道,就可以完成對數(shù)據(jù)庫的持久化操作。

原始jdbc操作(查詢數(shù)據(jù))

    /**
     * JDBC查詢
     */
    @Test
    public void select() {
        Connection connection = null;
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;
        try {
            // 加載數(shù)據(jù)庫驅(qū)動
            Class.forName("com.mysql.jdbc.Driver");
            // 通過驅(qū)動管理類獲取數(shù)據(jù)庫鏈接
            connection =
                    DriverManager.getConnection("jdbc:mysql://localhost:3306/my-orm-framework?characterEncoding=utf-8", "root", "root");
            // 定義sql語句?表示占位符
            String sql = "select * from user where username = ?";
            // 獲取預(yù)處理statement
            preparedStatement = connection.prepareStatement(sql);
            // 設(shè)置參數(shù),第?個參數(shù)為sql語句中參數(shù)的序號(從1開始),第?個參數(shù)為設(shè)置的參數(shù)值
            preparedStatement.setString(1, "zjq666888");
            // 向數(shù)據(jù)庫發(fā)出sql執(zhí)?查詢,查詢出結(jié)果集
            resultSet = preparedStatement.executeQuery();
            List<User> userList = new ArrayList<>(16);
            // 遍歷查詢結(jié)果集
            while (resultSet.next()) {
                User user = new User();
                Long id = resultSet.getLong("id");
                String username = resultSet.getString("username");
                String password = resultSet.getString("password");
                String phone = resultSet.getString("phone");
                // 封裝User
                user.setId(id);
                user.setUsername(username);
                user.setPassword(password);
                user.setPhone(phone);
                userList.add(user);
            }
            System.out.println(userList);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 釋放資源
            if (resultSet != null) {
                try {
                    resultSet.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (preparedStatement != null) {
                try {
                    preparedStatement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection != null) {
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }

原始jdbc操作(插入數(shù)據(jù))

    /**
     * JDBC新增
     */
    @Test
    public void insert() {
        Connection connection = null;
        PreparedStatement preparedStatement = null;
        try {
            // 加載數(shù)據(jù)庫驅(qū)動
            Class.forName("com.mysql.jdbc.Driver");
            // 通過驅(qū)動管理類獲取數(shù)據(jù)庫鏈接
            connection =
                    DriverManager.getConnection("jdbc:mysql://localhost:3306/my-orm-framework?characterEncoding=utf-8", "root", "root");
            // 定義sql語句?表示占位符
            String sql = "insert into user(username,password,phone) values (?,?,?)";
            // 獲取預(yù)處理statement
            preparedStatement = connection.prepareStatement(sql);
            // 設(shè)置參數(shù),第?個參數(shù)為sql語句中參數(shù)的序號(從1開始),第?個參數(shù)為設(shè)置的參數(shù)值
            preparedStatement.setString(1, "共飲一杯無");
            preparedStatement.setString(2, "888866669999");
            preparedStatement.setString(3, "17688886666");
            // 向數(shù)據(jù)庫發(fā)出sql執(zhí)?查詢,查詢出結(jié)果集
            int result = preparedStatement.executeUpdate();
            if(result>0){
                System.out.println("新增成功");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // 釋放資源
            if (preparedStatement != null) {
                try {
                    preparedStatement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (connection != null) {
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }

為啥需要MyBatis

原始jdbc開發(fā)存在的問題如下:

  1. 數(shù)據(jù)庫連接創(chuàng)建、釋放頻繁造成系統(tǒng)資源浪費從而影響系統(tǒng)性能

  2. sql 語句在代碼中硬編碼,造成代碼不易維護,實際應(yīng)用 sql 變化的可能較大,sql 變動需要改變java代碼。

  3. 查詢操作時,需要手動將結(jié)果集中的數(shù)據(jù)手動封裝到實體中。插入操作時,需要手動將實體的數(shù)據(jù)設(shè)置到sql語句的占位符位置

應(yīng)對上述問題給出的解決方案

  1. 使用數(shù)據(jù)庫連接池初始化連接資源

  2. 將sql語句抽取到xml配置文件

  3. 使用反射、內(nèi)省等底層技術(shù),自動將實體與表進行屬性與字段的自動映射

Mybatis的快速入門

MyBatis官網(wǎng)地址:http://www.mybatis.org/mybatis-3/
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

MyBatis開發(fā)步驟

  1. 添加MyBatis的坐標(biāo)

  2. 創(chuàng)建user數(shù)據(jù)表

  3. 編寫User實體類

  4. 編寫映射文件UserMapper.xml

  5. 編寫核心文件SqlMapConfig.xml

  6. 編寫測試類

環(huán)境搭建

  1. 導(dǎo)入MyBatis的坐標(biāo)和其他相關(guān)坐標(biāo)
<!--mybatis坐標(biāo)-->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.6</version>
</dependency>
<!--mysql驅(qū)動坐標(biāo)-->
<dependency>    
    <groupId>mysql</groupId>   
    <artifactId>mysql-connector-java</artifactId>    
    <version>5.1.32</version>    
    <scope>runtime</scope>
</dependency>
<!--單元測試坐標(biāo)-->
<dependency>    
    <groupId>junit</groupId>    
    <artifactId>junit</artifactId>    
    <version>4.12</version>    
    <scope>test</scope>
</dependency>
<!--日志坐標(biāo)-->
<dependency>    
    <groupId>log4j</groupId>    
    <artifactId>log4j</artifactId>    
    <version>1.2.12</version>
</dependency>
  1. 創(chuàng)建user數(shù)據(jù)表
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
`username` varchar(50) DEFAULT NULL COMMENT '用戶名',
`password` varchar(50) DEFAULT NULL COMMENT '密碼',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
  1. 編寫User實體
public class User {    
	private int id;    
	private String username;    
	private String password;
    //省略get個set方法
}
  1. 編寫UserMapper映射文件
<?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="userMapper">    
	<select id="findAll" resultType="com.zjq.domain.User">        
		select * from User    
	</select>
</mapper>
  1. 編寫MyBatis核心文件 sqlMapConfig.xml
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN“ "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>    
	<environments default="development">        
		<environment id="development">            
			<transactionManager type="JDBC"/>            
			<dataSource type="POOLED">                
				<property name="driver" value="com.mysql.jdbc.Driver"/>
				<property name="url" value="jdbc:mysql:///test"/>                
				<property name="username" value="root"/>
				<property name="password" value="root"/>            
			</dataSource>        
		</environment>    
	</environments>    
	
	<mappers> 
		<mapper resource="com/zjq/mapper/UserMapper.xml"/> 
	</mappers>
</configuration>

編寫測試代碼

    @Test
    //查詢操作
    public void findAll() throws IOException {
        //獲得核心配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
        //獲得session工廠對象
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //獲得session回話對象
        SqlSession sqlSession = sqlSessionFactory.openSession();
        //執(zhí)行操作  參數(shù):namespace+id
        List<User> userList = sqlSession.selectList("userMapper.findAll");
        //打印數(shù)據(jù)
        System.out.println(userList);
        //釋放資源
        sqlSession.close();
    }

MyBatis的映射文件概述

MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

MyBatis的增刪改查操作

MyBatis的插入數(shù)據(jù)操作

  1. 編寫UserMapper映射文件
<mapper namespace="userMapper">    
	<insert id="add" parameterType="com.zjq.domain.User">        
		insert into user values(#{id},#{username},#{password})    
	</insert>
</mapper>
  1. 編寫插入實體User的代碼
    @Test
    //插入操作
    public void save() throws IOException {

        //模擬user對象
        User user = new User();
        user.setUsername("共飲一杯無");
        user.setPassword("123456");

        //獲得核心配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
        //獲得session工廠對象
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //獲得session回話對象
        SqlSession sqlSession = sqlSessionFactory.openSession(true);
        //執(zhí)行操作  參數(shù):namespace+id
        sqlSession.insert("userMapper.add",user);

        //mybatis執(zhí)行更新操作  提交事務(wù)
        //sqlSession.commit();

        //釋放資源
        sqlSession.close();
    }
  1. 插入操作注意問題
  • 插入語句使用insert標(biāo)簽
  • 在映射文件中使用parameterType屬性指定要插入的數(shù)據(jù)類型
  • Sql語句中使用#{實體屬性名}方式引用實體中的屬性值
  • 插入操作使用的API是sqlSession.insert("命名空間.id",實體對象);
  • 插入操作涉及數(shù)據(jù)庫數(shù)據(jù)變化,所以要使用sqlSession對象顯示的提交事務(wù),即sqlSession.commit()

MyBatis的修改數(shù)據(jù)操作

  1. 編寫UserMapper映射文件
<mapper namespace="userMapper">
    <update id="update" parameterType="com.zjq.domain.User">
        update user set username=#{username},password=#{password} where id=#{id}
    </update>
</mapper>
  1. 編寫修改實體User的代碼
    @Test
    //修改操作
    public void updateById() throws IOException {

        //模擬user對象
        User user = new User();
        user.setId(2);
        user.setUsername("共飲一杯無666");
        user.setPassword("123456");

        //獲得核心配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.xml");
        //獲得session工廠對象
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //獲得session回話對象
        SqlSession sqlSession = sqlSessionFactory.openSession();
        //執(zhí)行操作  參數(shù):namespace+id
        sqlSession.update("userMapper.update",user);

        //mybatis執(zhí)行更新操作  提交事務(wù)
        sqlSession.commit();

        //釋放資源
        sqlSession.close();
    }
  1. 修改操作注意問題
  • 修改語句使用update標(biāo)簽

  • 修改操作使用的API是sqlSession.update("命名空間.id",實體對象);

MyBatis的刪除數(shù)據(jù)操作

  1. 編寫UserMapper映射文件
<mapper namespace="userMapper">
    <delete id="delete" parameterType="java.lang.Integer">
        delete from user where id=#{id}
    </delete>
</mapper>
  1. 編寫刪除數(shù)據(jù)的代碼
InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(resourceAsStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
int delete = sqlSession.delete("userMapper.delete",3);
System.out.println(delete);
sqlSession.commit();
sqlSession.close();
  1. 刪除操作注意問題

? 刪除語句使用delete標(biāo)簽

?Sql語句中使用#{任意字符串}方式引用傳遞的單個參數(shù)

?刪除操作使用的API是sqlSession.delete("命名空間.id",Object);

知識小結(jié)

增刪改查映射配置與API:
查詢數(shù)據(jù): 
	List<User> userList = sqlSession.selectList("userMapper.findAll");
    <select id="findAll" resultType="com.zjq.domain.User">
        select * from User
    </select>

添加數(shù)據(jù): 
	sqlSession.insert("userMapper.add", user);
    <insert id="add" parameterType="com.zjq.domain.User">
        insert into user values(#{id},#{username},#{password})
    </insert>

修改數(shù)據(jù): 
	sqlSession.update("userMapper.update", user);
    <update id="update" parameterType="com.zjq.domain.User">
        update user set username=#{username},password=#{password} where id=#{id}
    </update>

刪除數(shù)據(jù):
	sqlSession.delete("userMapper.delete",3);
    <delete id="delete" parameterType="java.lang.Integer">
        delete from user where id=#{id}
    </delete>

MyBatis核心配置文件概述

MyBatis核心配置文件層級關(guān)系

MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

MyBatis常用配置解析

environments標(biāo)簽

數(shù)據(jù)庫環(huán)境的配置,支持多環(huán)境配置
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解
事務(wù)管理器(transactionManager)類型有兩種:

  • JDBC:這個配置就是直接使用了JDBC 的提交和回滾設(shè)置,它依賴于從數(shù)據(jù)源得到的連接來管理事務(wù)作域。
  • MANAGED:這個配置幾乎沒做什么。它從來不提交或回滾一個連接,而是讓容器來管理事務(wù)的整個生命周期(比如 JEE 應(yīng)用服務(wù)器的上下文)。 默認情況下它會關(guān)閉連接,然而一些容器并不希望這樣,因此需要將 closeConnection 屬性設(shè)置為 false 來阻止它默認的關(guān)閉行為。

數(shù)據(jù)源(dataSource)類型有三種:

  • UNPOOLED:這個數(shù)據(jù)源的實現(xiàn)只是每次被請求時打開和關(guān)閉連接。
  • POOLED:這種數(shù)據(jù)源的實現(xiàn)利用“池”的概念將 JDBC 連接對象組織起來。
  • JNDI:這個數(shù)據(jù)源的實現(xiàn)是為了能在如 EJB 或應(yīng)用服務(wù)器這類容器中使用,容器可以集中或在外部配置數(shù)據(jù)源,然后放置一個 JNDI 上下文的引用。
mapper標(biāo)簽

該標(biāo)簽的作用是加載映射的,加載方式有如下幾種:

  • 使用相對于類路徑的資源引用,例如:
< mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
  • 使用完全限定資源定位符(URL),例如:
< mapper url="file:///var/mappers/AuthorMapper.xml"/>
  • 使用映射器接口實現(xiàn)類的完全限定類名,例如:
< mapper class="org.mybatis.builder.AuthorMapper"/>
  • 將包內(nèi)的映射器接口實現(xiàn)全部注冊為映射器,例如:
< package name="org.mybatis.builder"/>
Properties標(biāo)簽

實際開發(fā)中,習(xí)慣將數(shù)據(jù)源的配置信息單獨抽取成一個properties文件,該標(biāo)簽可以加載額外配置的properties文件
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

typeAliases標(biāo)簽

類型別名是為Java 類型設(shè)置一個短的名字。原來的類型名稱配置如下
image.png
配置typeAliases,為com.zjq.domain.User定義別名為user
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解
上面我們是自定義的別名,mybatis框架已經(jīng)為我們設(shè)置好的一些常用的類型的別名
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

知識小結(jié)核心配置文件常用配置

properties標(biāo)簽:該標(biāo)簽可以加載外部的properties文件

<properties resource="jdbc.properties"></properties>

typeAliases標(biāo)簽:設(shè)置類型別名

<typeAlias type="com.zjq.domain.User" alias="user"></typeAlias>

mappers標(biāo)簽:加載映射配置

<mapper resource="com/zjq/mapper/UserMapping.xml"></mapper>

environments標(biāo)簽:數(shù)據(jù)源環(huán)境配置標(biāo)簽
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

MyBatis基礎(chǔ)API

SqlSession工廠構(gòu)建器SqlSessionFactoryBuilder

常用API:SqlSessionFactory build(InputStream inputStream)

通過加載mybatis的核心文件的輸入流的形式構(gòu)建一個SqlSessionFactory對象

String resource = "org/mybatis/builder/mybatis-config.xml"; 
InputStream inputStream = Resources.getResourceAsStream(resource); 
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); 
SqlSessionFactory factory = builder.build(inputStream);

其中, Resources 工具類,這個類在 org.apache.ibatis.io 包中。Resources 類幫助你從類路徑下、文件系統(tǒng)或一個 web URL 中加載資源文件。

SqlSession工廠對象SqlSessionFactory

SqlSessionFactory 有多個個方法創(chuàng)建SqlSession 實例。常用的有如下兩個:
MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解

SqlSession會話對象

SqlSession 實例在 MyBatis 中是非常強大的一個類。在這里你會看到所有執(zhí)行語句、提交或回滾事務(wù)和獲取映射器實例的方法。

執(zhí)行語句的方法主要有:

// 查詢單條數(shù)據(jù)
<T> T selectOne(String statement, Object parameter) 
// 查詢列表數(shù)據(jù)
<E> List<E> selectList(String statement, Object parameter) 
// 新增數(shù)據(jù)
int insert(String statement, Object parameter) 
// 更新數(shù)據(jù)
int update(String statement, Object parameter) 
// 刪除數(shù)據(jù)
int delete(String statement, Object parameter)

操作事務(wù)的方法主要有:

// 提交事務(wù)
void commit()  
// 回滾事務(wù)
void rollback()

參考:https://mybatis.org/mybatis-3/zh/index.html

本文內(nèi)容到此結(jié)束了,
如有收獲歡迎點贊??收藏??關(guān)注??,您的鼓勵是我最大的動力。
如有錯誤?疑問??歡迎各位指出。
主頁:共飲一杯無的博客匯總?????

保持熱愛,奔赴下一場山海。??????文章來源地址http://www.zghlxwxcb.cn/news/detail-439594.html

到了這里,關(guān)于MyBatis基礎(chǔ)知識和快速入門、MyBatis核心配置文件講解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【Linux系統(tǒng)基礎(chǔ)快速入門詳解】SSH遠程連接必備網(wǎng)絡(luò)基礎(chǔ)知識詳解

    【Linux系統(tǒng)基礎(chǔ)快速入門詳解】SSH遠程連接必備網(wǎng)絡(luò)基礎(chǔ)知識詳解

    魚弦:CSDN內(nèi)容合伙人、CSDN新星導(dǎo)師、51CTO(Top紅人+專家博主) 、github開源愛好者(go-zero源碼二次開發(fā)、游戲后端架構(gòu) https://github.com/Peakchen) SSH(Secure Shell)是一種網(wǎng)絡(luò)協(xié)議,用于通過加密的方式在不安全的網(wǎng)絡(luò)上安全地進行遠程連接和數(shù)據(jù)傳輸。下面是對SSH遠程連接的必備

    2024年02月07日
    瀏覽(29)
  • 【一文詳解】知識分享:(ASP.Net Core基礎(chǔ)學(xué)習(xí)及快速入門)

    【一文詳解】知識分享:(ASP.Net Core基礎(chǔ)學(xué)習(xí)及快速入門)

    .Net .NET是微軟的一個開發(fā)平臺,這個平臺的一大特點就是跨語言性,不管是什么語言,c、c++、c#、F#、J#、vb等語言都可以用這個平臺合作開發(fā); .NET,它是微軟創(chuàng)建的一個用于構(gòu)建多種不同類型的應(yīng)用程序的開發(fā)人員平臺。 .NET 是一個廣泛的術(shù)語,用于描述整個 Microsoft 的軟件

    2024年02月01日
    瀏覽(154)
  • LaTeX詳細安裝教程|LaTeX 基礎(chǔ)知識|LaTeX 常用語法|LaTeX 快速入門

    LaTeX詳細安裝教程|LaTeX 基礎(chǔ)知識|LaTeX 常用語法|LaTeX 快速入門

    LaTeX 是一種專業(yè)的排版系統(tǒng),主要用于科技文獻、學(xué)術(shù)論文、書籍等的排版。與傳統(tǒng)的文字處理軟件相比,LaTeX 可以更好地管理大型文字項目,并提供了豐富的數(shù)學(xué)公式和符號支持。本篇博客將介紹 LaTeX 的基礎(chǔ)知識、常用語法以及安裝教程。 LaTeX 具有如下特點: 專業(yè)的排版

    2024年02月05日
    瀏覽(28)
  • Cisco路由器配置入門知識(基礎(chǔ))

    Cisco路由配置基礎(chǔ) 剛剛接觸cisco路由配置,下面是學(xué)習(xí)的筆記,感覺命令還是多敲才能熟悉 一、 所處狀態(tài)各類 router 用戶處于用戶命令狀態(tài),可以查看網(wǎng)絡(luò)和主機 router# 用戶處于特權(quán)模式,可以查看狀態(tài),還可以看到和更改路由器的設(shè)置內(nèi)容 router(config)# 全局配置狀態(tài),可以設(shè)

    2024年02月06日
    瀏覽(92)
  • 快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(下)教你基礎(chǔ)知識!分享《MATLAB初學(xué)者教程 MATLAB編程-菜鳥入門(清晰版)》

    快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(下)教你基礎(chǔ)知識!分享《MATLAB初學(xué)者教程 MATLAB編程-菜鳥入門(清晰版)》

    1、《MATLAB完全學(xué)習(xí)手冊(視頻+課件+代碼)》 2、《MATLAB入門》 3、《詳解MATLAB在科學(xué)計算中的應(yīng)用》 4、《案例二 MATLAB與Excel交互》 5、《MATLAB初學(xué)者教程 MATLAB編程-菜鳥入門(清晰版)》 6、《MATLAB常用函數(shù)參考 MATLAB函數(shù)匯總 精通MATLAB》 7、等等。。。。 前兩天,我們在(

    2024年02月07日
    瀏覽(111)
  • 快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(上)教你基礎(chǔ)知識!+分享MATLAB完全學(xué)習(xí)手冊資料(視頻+課件+代碼

    快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(上)教你基礎(chǔ)知識!+分享MATLAB完全學(xué)習(xí)手冊資料(視頻+課件+代碼

    1、《MATLAB完全學(xué)習(xí)手冊(視頻+課件+代碼)》 2、《MATLAB入門》 3、《詳解MATLAB在科學(xué)計算中的應(yīng)用》 4、《案例二 MATLAB與Excel交互》 5、《MATLAB初學(xué)者教程 MATLAB編程-菜鳥入門(清晰版)》 6、《MATLAB常用函數(shù)參考 MATLAB函數(shù)匯總 精通MATLAB》 7、等等。。。。 編程語言基礎(chǔ):M

    2024年02月06日
    瀏覽(85)
  • 【MyBatis篇】MyBatis框架基礎(chǔ)知識筆記

    【MyBatis篇】MyBatis框架基礎(chǔ)知識筆記

    目錄 ORM思想(對象關(guān)系映射思想) 初識MyBatis 什么是MyBatis呢? JDBC? VS? MyBatis代碼? 獲取數(shù)據(jù)庫連接對比 ?對表格查詢操作: JDBC弊端 MyBatis,JDBC對比 MyBatis進一步介紹以及本質(zhì)分析 JDBC編程的劣勢,MyBatis提供了以下解決方案 MyBatis環(huán)境搭建 配置依賴案例演示: MyBatis環(huán)境搭建

    2024年02月09日
    瀏覽(62)
  • MyBatis基礎(chǔ)知識(二)

    目錄 1.MyBatis映射文件配置注意事項 2.MyBatis中的批處理實現(xiàn) 3.MyBatis的Executor執(zhí)行器 4.半自動ORM映射框架與全自動ORM映射框架 1.在同一個xml映射文件中,id是唯一的 2.在不同xml映射文件中,若已配置了namespace,則id可以重復(fù),否則也是唯一的 原因:namespace.id是MapString, MappedStatem

    2024年02月12日
    瀏覽(17)
  • Mybatis基礎(chǔ)知識

    Mybatis基礎(chǔ)知識

    1.1原始jdbc操作(查詢數(shù)據(jù)) ? 1.2原始jdbc操作(插入數(shù)據(jù)) ? 1.3 原始jdbc操作的分析 原始jdbc開發(fā)存在的問題如下: ①數(shù)據(jù)庫連接創(chuàng)建、釋放頻繁造成系統(tǒng)資源浪費從而影響系統(tǒng)性能; ②sql 語句在代碼中硬編碼,造成代碼不易維護,實際應(yīng)用 sql 變化的可能較大,sql 變動需

    2024年02月12日
    瀏覽(16)
  • CSS 基礎(chǔ)拾遺(核心知識、常見需求)

    CSS 基礎(chǔ)拾遺(核心知識、常見需求)

    本篇文章圍繞了 CSS 的核心知識點和項目中常見的需求來展開。雖然行文偏長,但較基礎(chǔ),適合初級中級前端閱讀,閱讀的時候請適當(dāng)跳過已經(jīng)掌握的部分。 這篇文章斷斷續(xù)續(xù)寫了比較久,也參考了許多優(yōu)秀的文章,但或許文章里還是存在不好或不對的地方,請多多指教,可

    2023年04月21日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包