发表于: 2017-05-11 22:44:24

1 1227


今日计划

学习try catch抛出异常,单步执行时的变量值。购买云服务器,搭建mysql,maven,jdk环境

今日完成

异常Exception

导致程序的正常流程被中断的事件,叫做异常

try catch

1 将可能抛出FileNotFoundException 文件不存在异常的代码放在try里

2 如果文件存在就会顺序往下执行,并且不执行catcch块中的代码

3 如果文件不存在,try里的代码会立即终止,程序流程会运行到对应的catch块中

e.printStackTrace(); 会打印出方法的调用痕迹,如此例,会打印出异常开始于TestException的第16行,这样就便于定位和分析到底哪里出了异常

package exception;
 
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
 
public class TestException {
 
    public static void main(String[] args) {
         
        File f= new File("d:/LOL.exe");
         
        try{
            System.out.println("试图打开 d:/LOL.exe");
            new FileInputStream(f);
            System.out.println("成功打开");
        }
        catch(Exception e){
            System.out.println("d:/LOL.exe不存在");
            e.printStackTrace();
        }
         
    }
}


多异常捕捉方法

把多个异常放在一个catch里统一捕捉

catch (FileNotFoundException | ParseException e) {

if (e instanceof FileNotFoundException)
System.out.println("d:/LOL.exe不存在");
if (e instanceof ParseException)
System.out.println("日期格式解析错误");


finally

无论是否出现异常,finally中的代码都会被执行

package exception;

 

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

 

public class TestException {

 

    public static void main(String[] args) {

         

        File f= new File("d:/LOL.exe");

         

        try{

            System.out.println("试图打开 d:/LOL.exe");

            new FileInputStream(f);

            System.out.println("成功打开");

        }

        catch(FileNotFoundException e){

            System.out.println("d:/LOL.exe不存在");

            e.printStackTrace();

        }

        finally{

            System.out.println("无论文件是否存在, 都会执行的代码");

        }

    }

}

考虑如下情况:
主方法调用method1
method1调用method2
method2中打开文件

method2中需要进行异常处理
但是method2不打算处理,而是把这个异常通过throws抛出去
那么method1就会接到该异常。 处理办法也是两种,要么是try catch处理掉,要么也是抛出去。

method1选择本地try catch住 一旦try catch住了,就相当于把这个异常消化掉了,主方法在调用method1的时候,就不需要进行异常处理了


Eclipse的单步调试

1 设置断点

在程序里放置一个断点,也就是双击需要放置断点的程序左边的栏目上

2 调试

1 点击打开透视图按钮,选择调试透视图,则打开调试透视图界面,然后先设置断点,按调试按钮则可以调试程序

2 或者直接点击调试按钮,进入调试透视图的界面,前提是要在程序中设置好断点

3 右键单击程序,选择debug as-java application。前提是设置好断点


调试快捷键

(F5)单步执行程序,遇到方法时进入;

(F6)单步执行程序,遇到方法时跳过;

(F7)单步执行程序,从当前方法跳出;

(F8)直接执行程序。遇到断点时暂停;


变量窗口右击变量,在弹出的菜单中选择change value,弹出修改画面

改变值后,按下确定,修改成功


购买云服务器,假设mysql,maven,jdk

购买的金山云服务器,选择的centos-7.1操作系统 金山云提供网页版ssh链接窗口Dami Console,具备PuTTY所有功能

不熟悉linux操作,绕了很多弯


配置mysql

参考文章http://www.linuxidc.com/Linux/2016-06/132676.htm

yum方式安装mysql

在控制台输入mysql


mysql环境配置成功

启动mysql

service mysqld start

关闭mysql

service mysqld stop

重启mysql

service mysql restart

查看mysql状态

service mysqld status

查看mysql字符集

mysql> show variables like '%character%'

修改字符集为UTF-8

打开 /etc 目录下的 my.cnf 文件(此文件是 MySQL 的主配置文件):
/etc/my.cnf
在 [mysqld] 前添加如下代码:
[client]
default-character-set=utf8
在 [mysqld] 后添加如下代码:
character_set_server=utf8

退出保存,重启mysql


再次查看字符集,server和database修改成功


配置jdk

官网下载源码包

通过终端在/usr/local目录下新建java文件夹,命令行:

sudo mkdir /usr/local/java

然后将下载到压缩包拷贝到java文件夹中,命令行:

进入jdk源码包所在目录

cp jdk-7u45-linux-x64.tar.gz /usr/local/java

然后进入java目录,命令行:

cd /usr/local/java

解压压缩包,命令行:

sudo tar xvf jdk-7u45-linux-x64.tar.gz

然后可以把压缩包删除,命令行:

sudo rm jdk-7u45-linux-x64.tar.gz


设置环境变量

这里采用全局设置方法,就是修改etc/profile,它是是所有用户的共用的环境变量

sudo gedit /etc/profile

打开之后在末尾添加

export JAVA_HOME=/usr/local/java/jdk1.7.0_45
export JRE_HOME=/usr/local/java/jdk1.7.0_45/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin: $PATH

然后保存

source /etc/profile

验证

java -version


配置maven

解压安装文件

tar -xvf apache-maven-3.3.9-bin.tar.gz 

移动maven到local/apache-maven文件夹下

mv apache-maven-3.3.9 /usr/local/apache-maven

设置环境变量

写入环境变量

vi /etc/profile 

最后一行加入

export MAVEN_HOME=/usr/local/apache-maven
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$MAVEN_HOME/bin:$PATH

再执行

source /etc/profile

mvn -version指令验证


遇到问题

一般云服务器会预载mysql或者jdk,建议先卸载再安装

yum方式安装mysql默认安装5.6版本,可以调用指令able,disable不同版本。一次只能选定一个

安装jdk网上常用的有三种办法,建议本地下载安装包再上传到云服务器

强烈安利winSCP,一来方便传输安装包,二来可以检验安装路径,如果linux操作指令不熟悉,可以win环境下拖动文件和创建文件夹

openjdk一定要清除干净

接口的问题一个是3306mysql的数据库还一个是22linux远程登陆,金山云可以在网页直接设置,其他云服务器需要指令修改

收获

try catch语句异常捕捉

云服务器mysql jdk maven架设


linux常用操作指令

mkdir         创建目录

cd               切换目录

cp                拷贝

mv               移动或重命名

rm               删除文件

tar -xvf       解压缩

shutdown

     -r             关机重启

     -h             关机不重启

     now          立刻关机

halt               关机

reboot          重启

sudo dpkg -i tree_1.5.3-1_i386.deb         安装软件

sudo dpkg -r tree                                     卸载软件

明日计划

项目部署到服务器上,进行单元测试










返回列表 返回列表
评论

    分享到