1. 什么是idea?

idea是Java开发软件

2. IDEA下载

https://www.jetbrains.com/idea/download/download-thanks.html?platform=windows选择合适的版本下载

3. IDEA安装

找到我们下载好的exe执行文件,然后双击打开,我们可以看到如下界面

点击【next】下一步,进入选择安装目录,选择我们要安装的安装位置。

新版的IDEA,提供了我们需要的操作系统位数选择,大家选择自己操作系统的位数,还有需要安装的一些插件,这里只提供了各别,其他的我们可以通过IDEA的插件方式,安装其他,.kt是Kotlin的后缀,Kotlin是JVM和Android的实用编程语言,结合了OO和功能特性,专注于互操作性,安全性,清晰度和工具支持

接下来就是选择我们的菜单,然后点击【install】安装就会进入安装过程

安装完成后,会出现下图【finish】,结束按钮,上面的选项是问我们是否现在打开IDEA

到现在,我们的安装过程就讲完了,我们讲解下如何配置IDEA,假如已经有配置的话,可以直接导入之前的配置

我们选择不导入配置,然后开始进入配置,首先配置的是IDEA的主题颜色,这里选择了黑色的炫酷色,激活到百度查询

4. IDEA设置

4.1设置主题

4.2设置字体

4.3字符编码

4.4修改控制台字体

4.5自动导包

5. IDEA基本语法

5.1创建一个java项目

.idea是自动生成的,别人不能使用;

.Iml是唯一的,不能删除,否则项目就不能使用了。

在src下面右击选Javaclass创建接口或类。

5.2部分常用快捷键

  删除选中:ctrl+x

  复制一行:ctrl+d

  解决问题:alt+enter

  移动代码:alt+shift+↑/↓

  生成构造或set等方法:alt+insert

  生成局部变量:ctrl+alt+v

  生成成员变量:ctrl+alt+f

  重命名:Shift+f6

5.3提示键

psvm:生成main方法

Sout:生成打印的代码

psf :public static final

自定义提示键

5.4创建一个web项目

1.创建web项目需要勾选WebApplication,最好勾选web.xml

2.配置tomcat

3.把tomcat添加到项目中

部署之后,项目名会发生变化,服务器启动之后会自动跳转到index.jsp页面。

4.项目依赖tomcat环境

5.5热部署及修改运行内存

修改运行内存

  idea常用模板:

1.主函数:

//模板0:psvm: 主函数  public static void main(String[] args)

2.打印输出:

//模板1:sout:打印语句
System.out.println();
int a=0;
//模板1变形:soutm:打印当前类名何方法名
System.out.println("Test.main");
//模板1变形:soutv:打印离自己最近的变量
System.out.println("a = " + a);

3.遍历:

//模板3:遍历:fori
int[] arr={1,3,5,8};
for (int i = 0; i <arr.length ; i++) {}
//模板3变形:iter,迭代器遍历
for (int i : arr) {}
//模板3变形:itar,正常遍历
for (int i = 0; i < arr.length; i++) {
int i1 = arr[i];
}
for (int i = 0; i < arr.length; i++) { }//arr.fori,正序
for (int i = arr.length - 1; i >= 0; i--) {}//arr.forr,倒序

4.是否为Null

 //模板4:判断是否为null,ifn
if (arr == null) {}
//模板4:判断是否不为null,inn
if (arr != null) {}

idea启动项目报端口号冲突或被占用的解决方法

在cmd中输入

netstat -ano | findstr 占用端口号

来查看被占用的端口的进程号:

强制杀死该进程(8024是进程号):

taskkill /f /pid 8024

  

二、SVN

1. 版本控制软件

版本控制的软件:svn,git等

2. svn简介与下载

下载服务端软件:https://www.visualsvn.com/,下载的文件,下载之后直接点击下一步进行默认的安装即可使用,安装后需要重启电脑。

下载操作svn的软件:,直接下一步安装即可,安装后有小乌龟图标。

3. svn使用

3.1创建仓库

当服务器安装之后,可以使用界面创建一个空仓库,创建的过程如下图:右键,选择创建一个仓库

给仓库取名

打开svn服务器管理界面,有多种方式,一是直接在开始菜单中找VisualSVN Server打开,二是在文件夹中打开,打开路径如下图:

3.2设置访问svn服务器的用户

右键仓库名,选择Properties...

删除任意访问的用户

点击add自己创建一个用户,这个用户才能访问服务器

3.3拉取文件到本地

复制仓库的路径

在桌面点击右键,选择Ckeckout,如图所示:

拉取成功之后,会在目标文件加中生成一个.svn的隐藏文件,此文件夹会有一个勾。

3.4把文件交给svn管理

在拉取的文件夹中新建一个文件,右键选择小乌龟,然后是Add+把文件添加到svn中,文件会显示一个+符号,

还要把文件提交到仓库,选择文件,右键选择commit,

填写相关的信息,点击ok就可以在仓库中看到这个文件了。另一个用户可以直接拉取文件到自己需要的地方,那么这个文件夹中就包含之前用户提交的文件,这样就起到了共享的作用。需要注意:任何时候只要需要提交,提交之前必须先更新,拉取服务器最新的版本。要查看日志的话,只需要在文件夹中右键找到showlog到小乌龟即可

3.5添加修改更新及解决冲突

添加:新增一个文件后,选择Add+-->commit即可提交

修改更新:

3.6web项目提交到svn

先检出(chechout)一个文件夹到指定位置,把web项目复制到这个文件夹,点击add+,把不需要提交的文件夹移入到忽略列表,这里忽略.idea和out文件夹。

给别人时只需要给svn中这个项目的路径,注意检出的文件夹要和项目名一样,检出之后导入到idea即可使用。

4. Idea操作svn

4.1在idea上配置svn

打开已经创建好的项目,在settings中找到subversion,添加svn.exe到idea。

4.2把项目发布到svn服务器

第一步:添加仓库路径,把项目分享到服务器

第二步:项目提交

当分享成功之后,项目名就会变色,同时idea右上角也会出现svn的提交和更新。点击提交(√)按钮,填写配置信息,

 

当提交成功之后就会在仓库中看到这个项目。也可以添加忽略列表,选择不需要的文件夹,右键

如果要取消对项目中的SVN版本控制,删除项目根目录下的 .idea/vsc.xml  和 .svn 隐藏目录即可。

4.3从服务器下载项目

同样需要new,但是方式不同,如下

打开之后添加仓库路径,选择存放路径和要检出的格式,和分享项目到服务器类似,这里就不介绍。当检出之后,在idea中打开可能会出现问题,需要关闭idea重新导入这项目。所以最好直接使用小乌龟来检出项目,检出之后导入就不会有问题。

4.4冲突的解决

当不同的开发人员修改同一个项目时,由于提交的不同,可能会产生冲突,解决办法就是在提交之前先更新一次,在idea中的svn区域点击更新,会弹出下面的页面

然后就选择第三个按钮,添加冲突代码,然后再提交就好了。也可以使用回滚回滚到是上一个版本,慎用。

三、Git

1.git与svn的区别

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作

Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上,最后可以把版本发送到远程服务器与别人共享。

2. git工作流程

1.从远程仓库中克隆 Git 资源作为本地仓库。

2.从本地仓库中checkout代码然后进行代码修改。

3.在提交前先将代码提交到暂存区。

4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。

5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。

3. git安装

3.1下载

下载地址:https://git-scm.com/download,选择对应的版本下载

3.2软件安装

安装git for windows服务器

双击Git..的exe进行安装,全部点击下一步即可。

安装完成之后,在桌面新建一个文件夹,右键

 

然后选择创建的文件夹,创建之后那么桌面上的那个文件夹就变成了一个仓库。

安装TortoiseGit

双击标红的文件,全部点击下一步进行安装,按成功后右键也出现了小乌龟

3.3使用git

在刚刚的仓库中创建一个文件,退出来选择仓库,右键把项目提交到仓库中,

这里会弹出一个错误,需要用户名和邮箱,点击确定去填写这些信息,然后进入提交页面,输入日志信息就可以提交了。提交之后右键仓库可以查看仓库的提交信息,这些提交都是提交到了本地服务器。

把项目推送到远程服务器

常用的远程仓库就是github:https://github.com/

首先在github上创建一个账号,然后在github上创建一个仓库,点击“create repository”按钮仓库就创建成功了

Github支持两种同步方式“https”和“ssh”。如果使用https很简单基本不需要配置就可以使用,但是每次提交代码和下载代码时都需要输入用户名和密码。这里介绍ssh的推送,http的推送更容易。如果使用ssh方式就需要客户端先生成一个密钥对,即一个公钥一个私钥。然后还需要把公钥放到githib的服务器上。

ssh密钥生成

在windows下我们可以使用 Git Bash.exe来生成密钥,可以通过开始菜单或者右键菜单打开Git Bash

git bash 执行命令,生命公钥和私钥

命令:ssh-keygen -t rsa

执行命令完成后,在window本地用户.ssh目录C:\Users\用户名\.ssh下面生成如下名称的公钥和私钥:

ssh密钥配置

密钥生成后需要在github上配置密钥本地才可以顺利访问。

在key部分将id_rsa.pub文件内容添加进去,然后点击“Add SSH key”按钮完成配置。

同步到远程仓库

使用git bash:在仓库所在的目录(D:\temp\git\repository)点击右键选择“Git Bash Here”,启动git bash程序。

后在git bash中执行如下语句:

git remote add origin git@github.com:sublun/mytest.git

git push -u origin master

注意:其中红色字体部分需要替换成个人的用户名。

如果出现如下错误:

可以先执行如下命令,然后再执行上面的命令

$ git remote rm origin

使用TortoiseGit同步

一、由于TortoiseGit使用的ssh工具是“PuTTY”git Bash使用的ssh工具是“openSSH”,如果想让TortoiseGit也使用刚才生成的密钥可以做如下配置:

Url:远程仓库的地址

推送URL:也是相同的

Putty密钥:选择刚才生成的密钥中的私钥

二、同步。在本地仓库的文件夹中单击右键,选择“Git同步”

 

从远程仓库克隆

克隆远程仓库也就是从远程把仓库复制一份到本地,克隆后会创建一个新的本地仓库。选择一个任意部署仓库的目录,然后克隆远程仓库。

使用git bash:

$ git clone git@github.com:sublun/mytest.git

使用TortoiseGit:

在任意目录点击右键:

创建分支

在本地仓库文件夹中点击右键,然后从菜单中选择“创建分支”:

如果想创建完毕后直接切换到新分支可以勾选“切换到新分支”选项或者从菜单中选择“切换/检出”来切换分支:

合并分支

分支切换到dev后就可以对工作区的文件进行修改,然后提交到dev分支原理的master分支不受影响。例如我们修改mytest.txt中的内容,然后提交到dev分支。

切换到master分支后还是原理的内容

将dev分支的内容合并到master分支,当前分支为master。从右键菜单中选择“合并”:

再查看mytest.txt的内容就已经更新了:

解决冲突

两个分支中编辑的内容都是相互独立互不干扰的,那么如果在两个分支中都对同一个文件进行编辑,然后再合并,就有可能会出现冲突。

例如在master分支中对mytest.txt进行编辑:

然后提交到版本库。

切换到dev分支,对mytest.txt进行编辑:

最后进行分支合并,例如将dev分支合并到master分支。需要先切换到master分支然后进行分支合并。

出现版本冲突。

冲突需要手动解决。

在冲突文件上单机右键选择“解决冲突”菜单项:

 

把冲突解决完毕的文件提交到版本库就可以了。

2. IDEA中使用git

4.1在Idea中配置git

如果Git安装在默认路径下,那么idea会自动找到git的位置,如果更改了Git的安装位置则需要手动配置下Git的路径。选择File→Settings打开设置窗口,找到Version Control下的git选项:

选择git的安装目录后可以点击“Test”按钮测试是否正确配置。

4.2将工程添加至git

1)在idea中创建一个工程,例如创建一个java工程,名称为idea-git-test,如下图所示:

2)创建本地仓库

在菜单中选择“vcs”→Import into Version Control→Create Git Repository...

选择工程所在的上级目录。本例中应该选择idea-projects目录,然后点击“OK”按钮,在工程的上级目录创建本地仓库,那么idea-projects目录就是本地仓库的工作目录,此目录中的工程就可以添加到本地仓库中。也就是可以把idea-git-test工程添加到本地仓库中。

选择之后在工具栏上就多出了git相关工具按钮:

2)将工程添加至本地仓库

直接点击commit按钮,将工程提交至本地仓库。

然后点击“commit”按钮,将工程添加至本地仓库。

2)推送到远程

在github上创建一个仓库然后将本地仓库推送到远程。

在工程上点击右键,选择git→Repository→push,

或者在菜单中选择vcs→git→push

点击“Define remote”链接,配置https形式的URL(ssh形式的无法通过)。然后点击OK

点击“push”按钮就讲本地仓库推送到远程,如果是第一次配置推送需要输入github的用户名和密码。

4.3从远程仓库克隆

关闭工程后,在idea的欢迎页上有“Check out from version control”下拉框,选择git

此处仍然推荐使用htts形式的url,点击“test”按钮后显示连接成功。

点击OK按钮后根据提示将远程仓库克隆下来,然后倒入到idea中。

随机推荐

  1. BZOJ 3675: 序列分割 (斜率优化dp)

    Description 小H最近迷上了一个分隔序列的游戏.在这个游戏里,小H需要将一个长度为n的非负整数序列分割成k+1个非空的子序列.为了得到k+1个子序列,小H需要重复k次以下的步骤: 1.小H首 ...

  2. Codeforces Round #625 (Div. 2, based on Technocup 2020 Final Round) C. Remove Adjacent(字符串,贪心,枚举)

    题意: 给你一个由小写字母组成的字符串,若串中两个相邻元素字典序中也相邻,移除较大字母,问最多能移除多少个字母. 思路: 从大到小依次枚举. Tips: 注意下标的处理. 以小消大: #include ...

  3. AtCoder Beginner Contest 188 E - Peddler (树)

    题意:有\(n\)个点,\(m\)条单向边,保证每条边的起点小于终点,每个点都有权值,找到联通的点的两个点的最大差值. 题解:因为题目说了起点小于终点,所以我们可以反向存边,然后维护连通边的前缀最小值 ...

  4. hdu5414 CRB and String

    Problem Description CRB has two strings s and t. In each step, CRB can select arbitrary character c  ...

  5. hdu5358 First One

    Problem Description soda has an integer array a1,a2,-,an. Let S(i,j) be the sum of ai,ai+1,-,aj. Now ...

  6. PowerShell随笔9--- call

    很多时候我们需要在一个脚本文件执行另外一个脚本文件,比如我们有一个Test.ps1文件 我们有以下2种方法: Invoke-Expression (&) 我们可以看到,Test.ps1中的代码 ...

  7. 自动化将 word 转为 pdf,再将pdf转为图片!

    参考: https://blog.csdn.net/ynyn2013/article/details/49120731 https://www.jianshu.com/p/f57cc64b9f5e 一 ...

  8. 生成不带签名(BOM)的UTF8格式的XML

    生成XML的一种方法如下: using System.Xml; private void SaveXML(string savePath) { XmlWriterSettings setting = ...

  9. codeforces 1059C. Sequence Transformation【构造】

    题目:戳这里 题意:有1,2,3...n这n个数,求一次这些数的gcd,删去一个数,直到剩下一个数为止.输出这n个gcd的最大字典序. 解题思路:一开始的gcd肯定是1,要让字典序最大,我们可以想到下 ...

  10. Docker--Image and Container

    2.1 深入探讨Image  说白了,image就是由一层一层的layer组成的. 2.1.1 官方image https://github.com/docker-library mysql http ...