浅学C++ (1)认识Linux(续)

 Ubunntu 使用技巧:
        <ctrl>+<l> == clear 清理屏幕
        up/down 方向键调出历史命令
        <Tab> 补全命令或文件名
        <ctrl>+<alt>+<t> 打开终端
        <ctrl>+<shift>+<t> 打开新的终端页

    vim文本编辑器:
        可以在终端下使用的纯键盘操纵的一款文本编辑器,可以二次开发,可以安装拓展插件。

        基础用法:
            1.终端输入 vim filename 使用vim进入文件  如果文件不存在则新建文件并打开
            2.进入文件后输入 i 进入插入模式 进行输入
            3.保存退出:在插入模式中按下<Esc> 进入正常模式 使用 :x 保存并退出

        vim的三大模式:
            正常模式:进入文件的默认模式,一般用于阅读文件和使用快捷键批量修改文件
            插入模式:用于文件的编辑
            命令模式:用于对vim进行临时配置,或者执行一些高级操作 
                在正常模式输入 : 进入命令模式 在 : 后输入指令(指令多为临时生效)
        
        正常模式的常用操作:
            光标移动:
                方向键/h j k l
                gg     光标移动到首行
                G      光标移动到末行
                n-     光标向上跳转n行
                n+回车 光标向下跳转n行
                nG     光标跳转到n行 在使用vim filename +n 打开时直接跳转到第n行
            删除文件:
                dd     删除光标所在的一行
                ndd    删除光标所在向下的n行
                x      删除光标所在的一个字符
                dw/de  删除光标所在后的一个连续的字符串 
                d$     从光标处删除到行尾
                d^     从光标处删除到行首
                dG     从光标处删除到末尾
            复制/粘贴/剪切:
                yy     复制光标所在的一行
                nyy    复制光标所在的下n行
                p      将复制的内容复制到光标的下一行 
                删除的内容默认存在于系统粘贴板,所以配合使用 p 来完成剪切操作
            替换内容:
                r     替换光标所在的一个字符
                R     进入替换模式(不建议使用)         
            撤销操作:
                u     撤销
                <ctrl> + r 取消u的撤销操作
        插入模式的常用操作:
            <ctrl> + p 关键字补全
        命令模式下的常用操作:
            q!  强制退出
            w   保存
            x   保存并退出
            X   加密 需用wq或x保存并退出才可生效
            set key=空格 取消加密
            set nonu 不显示行号
            !系统命令 临时执行系统命令
            %s/old/new 将文件中每行中的第一个old替换成new
            /key 查询关键字key 按下 n 跳转下一个 N 跳转上一个
            >n  在光标处向下n行向右缩进1次
            <n  在光标处向下n行向左缩进1次
        自定义组合快捷键:
            <ctrl> + z 在任何模式下保存退出
            <ctrl> + x 保存退出并编译运行c文件
            <ctrl> + p 在正常模式下,自动添加头文件和 main函数
            更改用户配置文件 .vimrc
                set number

                set tabstop=4

                set autoindent

                set shiftwidth=4

                set smartindent

                set noswapfile

                set nobackup

                imap jj <ESC>

                func! SaveExit()
                    exec "wq"
                endfunc

                map <C-z> : call SaveExit()<CR>
                imap <C-z> <Esc> : call SaveExit()<CR>
                vmap <C-z> <Esc> : call SaveExit()<CR>

                func! ComplieCode()
                    exec "w"
                    if &filetype == "c"
                        exec "!gcc % -lm -pthread && ./a.out"
                    elseif &filetype == "cpp"
                        exce "!g++ -std=c++0x % -lm -ptread && ./a.out"
                    endif
                endfunc

                map <C-x> : call ComplineCode()<CR>
                imap <C-x> <Esc> : call ComplieCode()<CR>
                vmap <C-x> <Esc> : call ComplineCode()<CR>

                func! InsertMain()
                    if &filetype=="c"
                        call setline(1,"#include <stdio.h>")
                        call setline(2,"")
                        call setline(3,"int main(int argc,const char* argv[])")
                        call setline(4,"{")
                        call setline(5,"")
                        call setline(6,"}")
                        exec "5"
                    endif
                endfunc
        学习使用vim的建议:
            1.适可而止(不必深究)
            2.对文件多使用vim (刻意使用) 
            3.vimtutor手册 练习操作 

在静态方法使用JdbcTemplate需要注意以下几点: 1. 静态方法无法直接使用Spring容器的Bean,因为静态方法是类级别的,而Bean是实例级别的。因此需要手动获取JdbcTemplate实例,可以通过ApplicationContext获取JdbcTemplate实例,或者通过静态变量保存JdbcTemplate实例。 2. 在使用JdbcTemplate时,需要先创建一个JdbcTemplate实例,并设置数据源。数据源可以通过Spring容器注入,或者手动创建。在静态方法,可以通过静态变量保存JdbcTemplate实例,避免重复创建。 3. 在使用JdbcTemplate操作数据库时,需要注意线程安全问题。JdbcTemplate是线程安全的,但是需要保证JdbcTemplate实例的线程安全,即在多线程环境需要保证同一JdbcTemplate实例不会被并发访问。 下面是一个示例代码: ``` public class JdbcUtils { private static JdbcTemplate jdbcTemplate; public static void setDataSource(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); } public static void executeSql(String sql) { jdbcTemplate.execute(sql); } } ``` 在上面的代码,我们通过静态变量保存了JdbcTemplate实例,并提供了一个静态方法setDataSource用于设置数据源。在使用JdbcTemplate时,我们可以直接调用静态方法executeSql执行SQL语句。需要注意的是,这里的executeSql方法是线程安全的,因为JdbcTemplate实例是共享的,并且JdbcTemplate本身是线程安全的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值