java实体类生成工具

时间:2021-04-12 06:05:38

前言

原因是这样的,eclipse有那种生成实体类的插件,可是我感觉装来装去很麻烦,于是我想,干脆自己做一个生成实体类的工具吧,说做就做,然后就自己花了两个小时左右做出来了一个,以后应该能大大提高工作效率吧。

实现方法

输入:属性个数
输入:type virableName
输出:d盘下面的example文件,该文件里面生成了实体类的代码

原理就是填充数据而已。。。根本没有难度
然后用了map模板把数据存起来了

使用截图

java实体类生成工具
**这个是数据截图,CKCommand表示类,5表示有几个属性,剩下的都是数据属性
然后把这个数据复制进控制台运行就可以了**

java实体类生成工具
运行截图

最后的实体类截图
java实体类生成工具
注意去D盘下面找

代码

#include <iostream>
#include <string>
#include <map>
#include <fstream>
using namespace std;
int main()
{
int num; //总体的成员个数
string which1, Vname,classname;
map<string, string > mapStudent; //这个我服了
map <string, string >::iterator m1_Iter;
cin >> classname;
cin >> num;
for (int i = 0; i<num; i++){
cin >> which1 >> Vname;

mapStudent[Vname] = which1;

}

cout << "Congratulation that you are success!"<<endl;

ofstream examplefile("d:\\example.txt");
if (examplefile.is_open())
{
examplefile << "class "<<classname<<" implements Serializable{\n\n";
for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){
//cout << "diyige " << m1_Iter->first << " " << m1_Iter->second.first << " " << m1_Iter->second.second << endl;
examplefile <<" private "<< m1_Iter->second << " " << m1_Iter->first <<";\n";
}

//first constructor
examplefile << "\n//无参数的构造器\n";
examplefile << " public " << classname << "(){\n";
examplefile << "\n";
examplefile << " }\n\n";

//第二个构造器
examplefile << "//有参数的构造器\n";
examplefile << " public " << classname << "("; //打印到括号地方了
for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){
if (m1_Iter != mapStudent.end()){
examplefile << m1_Iter->second << " " << m1_Iter->first << ",";
}
else{
examplefile << m1_Iter->second << " " << m1_Iter->first;
}
}
examplefile << "){\n";
//构造函数里面的内容
for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){
//examplefile << m1_Iter->second.first << " " << m1_Iter->second.second << ",";
examplefile << " this." << m1_Iter->first << " = " << m1_Iter->first << ";\n";

}
examplefile << " }\n";
//----------------------------- 构造函数内容结束---------------------------------

//----------------------------- get方法开始--------------------------------------
examplefile << "\n//GET跟SET方法都在这里\n";
for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){
//examplefile << m1_Iter->second.first << " " << m1_Iter->second.second << ",";
//examplefile << "this." << m1_Iter->second.second << " = " << m1_Iter->second.second << "\n";
examplefile << " public " << m1_Iter->second << " Get" << m1_Iter->first << "(){\n";
examplefile << " return " << m1_Iter->first << ";\n";
examplefile << " }\n\n";

//--------------------------------set方法继续--------------------------------
examplefile << " public void Set" << m1_Iter->first << "(" << m1_Iter->second << " " << m1_Iter->first\
<< "){\n";
examplefile << " this." << m1_Iter->first << "=" << m1_Iter->first<< ";\n";
examplefile << " }\n\n";

}

//完结撒花
examplefile << "}\n";



examplefile.close();
}

system("pause");
return 0;
}