Idea去除xml文件SQL语句警告

Ban

Ban

ChangAn University

Idea中使用Mybatis时,书写sql语句的xml文件中有很多的警告信息,看起来非常的乱,可以通过修改设置的方式来取消这些警告信息,让界面看起来清爽很多

settings->Inspections-> 找到SQL->取消勾选No data sources configured -> 取消勾选SQL dialect detection

Java自带工具指令

Ban

Ban

ChangAn University
  • jps:查看本机java进程信息。

  • jstack:打印线程的信息,制作线程dump文件。

  • jmap:打印内存映射,制作dump文件

  • jstat:性能监控工具

  • jhat:内存分析工具

  • jconsole:简易的可视化控制台

  • jvisualvm:功能强大的控制台


生产上 还可以用jmap与jhat 一起使用

1、 jmap -dump:file=《生成文件的路径》

生成堆快照文件,文件以.dump结尾

2、jhat 《上面生成文件.dump》这个命令用来做 堆快照分析

一般会启动一个http://localhost:7000的服务端口可以查看信息

Java修饰符

Ban

Ban

ChangAn University
可访问性privateDefaultprotectedpublic
同一个类
同一个包
子类
其他类

字符流与字节流小结

Ban

Ban

ChangAn University
info

字节流继承于InputStream OutputStream,字符流继承于InputStreamReader OutputStreamWriter

后缀是Stream的都是字节流,其他的都是字符流

可以理解为字符流=字节流+编码集

字节流:

InputStream
|-- FileInputStream (基本文件流)
|-- BufferedInputStream
|-- DataInputStream
|-- ObjectInputStream

字符流

Reader
|-- InputStreamReader (byte->char 桥梁)
|-- BufferedReader (常用)
Writer
|-- OutputStreamWriter (char->byte 桥梁)
|-- BufferedWriter
|-- PrintWriter (常用)

tar指令的用法

Ban

Ban

ChangAn University
  • -s 还原文件的顺序和备份文件内的存放顺序相同。
  • -t 列出备份(压缩)文件的内容。
  • -v显示指令执行过程。
  • -f指定压缩文件
  • -x 从备份(压缩)文件中还原文件。

C++高斯列主元消去法

Ban

Ban

ChangAn University
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
int main()
{
int i, j, k, n;
double eps, ratio, sum, max, temp;
ifstream data_in("gauss_source.txt");
ofstream data_out("gauss_result.txt");
//输入增广矩阵系数
data_in >> n; //输入方程个数
double *x = new double[n]; //动态分配存储空间(指针)
double **a = new double *[n]; //二级指针指向指针数组首地址,n 个方程,二维动态数组
for (i = 0; i < n; i++)
{
a[i] = new double[n + 1]; // 给指针数组每个元素申请空间,每个元素都是一个指针,每 个方程有 n+1 个系数(包括常数项)
}
//存储空间申请成功后,和一般二维数组操作类似
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
{
data_in >> a[i][j];
//输入系数矩阵
}
for (i = 0; i < n; i++)
{
data_in >> a[i][n]; //输入等号右端向量的各元素 a[][]为增广矩阵
}
data_in >> eps; //输入最小主元素.为了避免主元素为 0 的情况,设置 一个比较小的实数
data_in.close();
//执行高斯消去法
for (k = 0; k < (n - 1); k++) //消元
{
for (i = (k + 1); i < n; i++)
{
if (fabs(a[k][k]) < eps) //fabs(x)函数是求浮点型数 x 的绝对值
{
cout << "Start exchanging principal..." << endl;
//选择列主元
max = fabs(a[k][k]);
for (int m = k; m < n; m++)
{
if (max < fabs(a[m][k]))
{
max = fabs(a[m][k]);
}
}
//交换行
for (int m = k; m < n; m++)
{
if (max == fabs(a[m][k]))
{
for (int q = k; q < n; q++)
{
temp = a[k][q];
a[k][q] = a[m][q];
a[m][q] = temp;
}
// 交换常数部分
cout << "Exchaging const..." << endl;
temp = a[k][n];
a[k][n] = a[m][n];
a[m][n] = temp;
}
}
}
ratio = a[i][k] / a[k][k];
for (j = (k + 1); j < (n + 1); j++)
{
a[i][j] -= ratio * a[k][j];
}
a[i][k] = 0;
}
}
x[n - 1] = a[n - 1][n] / a[n - 1][n - 1]; //回代
for (i = (n - 2); i >= 0; --i)
{
sum = 0.0;
for (j = (i + 1); j < n; j++)
{
sum += a[i][j] * x[j];
}
x[i] = (a[i][n] - sum) / a[i][i];
} //结果输出
for (i = 0; i < n; i++)
{
data_out << "\nx[" << i << "]=" << x[i] << endl;
}
data_out.close();
//释放堆内存
delete[] x;
for (i = 0; i < n; i++)
{
delete[] a[i];
}
delete[] a;
cout << "Calculate finished!, please check the output file" << endl;
/*
eps = 0.0001
int put matrix:
0.00001 2.000 3.000 1.000
-1.000 3.712 4.623 2.000
-2.000 1.072 5.643 3.000
expect result:
x[0] = -0.4911
x[1] = -0.0509
x[2] = 0.3673
output:
x[0] = -0.491052
x[1] = -0.0508876
x[2] = 0.36726
*/
system("pause");
return 0;
}