实际开发运用的工具类优化。
2016-06-30 11:09
246 查看
工具类如下:
package XML;
import java.util.Scanner;
/** (顺序一:列名的列表转行,以及实体类属性。)在控制台中输入所有换行形式的列名,以end字符串结束,输出实体类中的属性名定义。
* @author : suyuyuan
* @date :2016年5月18日 下午2:24:15
* @version 1.0
*/
public class ChangeUpList {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
String stemp = "";
String stemps = "";
System.out.println("请输入多行数据,遇到行内容为“end”时结束:");
while (!"end".equals(stemp = scn.nextLine())) {
stemps += stemp + " ";
}
scn.close();
System.out.println("列名的列表转行:");
System.err.println(stemps);
String s = stemps;
// String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
// System.out.println("newstr1:"+newstr1);
String newstr2 = s.replaceAll("\\s", ","); // 再把所有的制表符和空格替换成逗号。
// System.out.println("newstr2:"+newstr2);
// String newstr5=newstr2.replaceAll(",+", "\t"); //纯粹的转化。
String newstr3 = newstr2.replaceAll(",+", ";\tprivate String "); // 把所有重复的逗号合并成一个制表符,并添加上指定的字符串,方便用于复制到excel中。
String str = newstr3;
String lower = str.toLowerCase();
String slower = lower;
StringBuilder sb = new StringBuilder(slower);
String[] strings = new String[100];
int i = slower.indexOf('_');
int j = 1;
strings[0] = slower.substring(0, 1).toUpperCase(); // strings[0]存储第一个大写字符;
// System.out.println(strings[0]);
while (i != -1) {
strings[j] = slower.substring(i + 1, i + 2).toUpperCase();
// System.out.println("当前索引位置" + i + "在字符串数组strings中的位置:" + j + "已经替换成" + strings[j]);
// System.out.println("替换成大写前:"+sb.toString());
sb.replace(i + 1, i + 2, strings[j]);
// System.out.println("替换成大写后:"+sb.toString());
i = slower.indexOf('_', i + 1);
j++;
}
// sb.replace(0, 1, strings[0]);
String s2 = sb.toString();
String stru = s2.replaceAll("_", "");
String newstru = "private String " + stru.replaceAll("string", "String") + ";"; // 拼接成想要的结果。
String[] newstruArray = newstru.split(";");
System.out.println("------------------分割线-----------------");
for (int n = 0; n < newstruArray.length - 1; n++) {
System.err.println(newstruArray
+ ";");
}
}
}
//
package XML;
/** (顺序二:数据库列名的行形式,输出在XML文件中对应大写和小写字符串形式。)
* @author : suyuyuan
* @date :2016年5月23日 下午2:11:40
* @version 1.0
*/
public class ChangeColumn {
public static void main(String[] args) {
//输入需要转化的数据库列名的字符串(通过ChangeUpList转化):
String s = "NAME
ADD_TIME UPDATE_TIME
AGE "; //输入需要转化的长字符串。:
String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
String newstr2=newstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String newstr3=newstr2.replaceAll(",+", "\t"); //纯粹的转化。
String str=newstr3;
String lower = str.toLowerCase();
String upper = str.toUpperCase();
// System.out.println(lower);
System.err.println("XML大写:\n" + upper);
String slower = lower;
StringBuilder sb=new StringBuilder(slower);
String[] strings= new String[100];
int i = slower.indexOf('_');
int j=1;
strings[0]=slower.substring(0,1).toUpperCase(); //strings[0]存储第一个大写字符;
while (i != -1) {
strings[j]=slower.substring(i+1,i+2).toUpperCase();
// System.out.println("当前索引位置"+i+"在字符串数组strings中的位置:"+j+"已经替换成"+strings[j]);
sb.replace(i+1, i+2, strings[j]);
i = slower.indexOf('_', i + 1);
j++;
}
String s1=sb.toString();
String str1=s1.replaceAll("_", "");
System.err.println("XML小写:\n" + str1);
}
}
//
package XML;
import java.util.ArrayList;
import java.util.List;
/** (顺序三:输入字段的小写列表字符串,数据库列名列表字符串,输出XML文件配置信息。)
* @author : suyuyuan
* @date :2016年5月23日 下午2:46:27
* @version 1.0
*/
public class ChangeXML {
public static void main(String[] args) {
//以下是小写字符串:
String s="name
addTime updateTime
age "; //字符串s中包含若干空格和制表符 \t。
String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
String newstr2=newstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String newstr3=newstr2.replaceAll(",+", ","); //把所有重复的逗号合并成一个逗号。
String[] strings=newstr3.split(","); //按逗号分解该字符串。
List<String> stringList = new ArrayList<String>(); //将分解后的字符串数组存储到ArrayList对象当中。
for(int i=0;i<strings.length;i++){
stringList.add(strings[i].trim());
}
System.out.println(stringList);
//以下是大写字符串:
System.out.println("-------------------分割线----------------------");
String ups = "NAME
ADD_TIME UPDATE_TIME
AGE "; //输入需要转化的长字符串。:
String upstr1=ups.replaceAll(" ",","); //先把所有空格替换成 逗号。
String upstr2=upstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String upstr3=upstr2.replaceAll(",+", ","); //把所有重复的逗号合并成一个逗号。
String[] stringups=upstr3.split(","); //按逗号分解该字符串。
List<String> stringListup = new ArrayList<String>(); //将分解后的字符串数组存储到ArrayList对象当中。
for(int i=0;i<stringups.length;i++){
stringListup.add(stringups[i].trim());
}
System.out.println(stringListup);
System.out.println();
System.out.println("-------------------分割线----------------------");
//打印XML:
System.out.println("<sql id=\"fields\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,"+stringups[i]+"</if>");
}
//
System.out.println();
System.out.println("<sql id=\"values\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,#{"+strings[i]+"}</if>");
}
//
System.out.println();
System.out.println("<sql id=\"set\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,"+stringups[i]+"=#{"+strings[i]+"}</if>");
}
//
System.out.println();
System.out.println("<sql id=\"where\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">AND "+stringups[i]+"=#{"+strings[i]+"}</if>");
}
}
}
package XML;
import java.util.Scanner;
/** (顺序一:列名的列表转行,以及实体类属性。)在控制台中输入所有换行形式的列名,以end字符串结束,输出实体类中的属性名定义。
* @author : suyuyuan
* @date :2016年5月18日 下午2:24:15
* @version 1.0
*/
public class ChangeUpList {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
String stemp = "";
String stemps = "";
System.out.println("请输入多行数据,遇到行内容为“end”时结束:");
while (!"end".equals(stemp = scn.nextLine())) {
stemps += stemp + " ";
}
scn.close();
System.out.println("列名的列表转行:");
System.err.println(stemps);
String s = stemps;
// String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
// System.out.println("newstr1:"+newstr1);
String newstr2 = s.replaceAll("\\s", ","); // 再把所有的制表符和空格替换成逗号。
// System.out.println("newstr2:"+newstr2);
// String newstr5=newstr2.replaceAll(",+", "\t"); //纯粹的转化。
String newstr3 = newstr2.replaceAll(",+", ";\tprivate String "); // 把所有重复的逗号合并成一个制表符,并添加上指定的字符串,方便用于复制到excel中。
String str = newstr3;
String lower = str.toLowerCase();
String slower = lower;
StringBuilder sb = new StringBuilder(slower);
String[] strings = new String[100];
int i = slower.indexOf('_');
int j = 1;
strings[0] = slower.substring(0, 1).toUpperCase(); // strings[0]存储第一个大写字符;
// System.out.println(strings[0]);
while (i != -1) {
strings[j] = slower.substring(i + 1, i + 2).toUpperCase();
// System.out.println("当前索引位置" + i + "在字符串数组strings中的位置:" + j + "已经替换成" + strings[j]);
// System.out.println("替换成大写前:"+sb.toString());
sb.replace(i + 1, i + 2, strings[j]);
// System.out.println("替换成大写后:"+sb.toString());
i = slower.indexOf('_', i + 1);
j++;
}
// sb.replace(0, 1, strings[0]);
String s2 = sb.toString();
String stru = s2.replaceAll("_", "");
String newstru = "private String " + stru.replaceAll("string", "String") + ";"; // 拼接成想要的结果。
String[] newstruArray = newstru.split(";");
System.out.println("------------------分割线-----------------");
for (int n = 0; n < newstruArray.length - 1; n++) {
System.err.println(newstruArray
+ ";");
}
}
}
//
package XML;
/** (顺序二:数据库列名的行形式,输出在XML文件中对应大写和小写字符串形式。)
* @author : suyuyuan
* @date :2016年5月23日 下午2:11:40
* @version 1.0
*/
public class ChangeColumn {
public static void main(String[] args) {
//输入需要转化的数据库列名的字符串(通过ChangeUpList转化):
String s = "NAME
ADD_TIME UPDATE_TIME
AGE "; //输入需要转化的长字符串。:
String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
String newstr2=newstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String newstr3=newstr2.replaceAll(",+", "\t"); //纯粹的转化。
String str=newstr3;
String lower = str.toLowerCase();
String upper = str.toUpperCase();
// System.out.println(lower);
System.err.println("XML大写:\n" + upper);
String slower = lower;
StringBuilder sb=new StringBuilder(slower);
String[] strings= new String[100];
int i = slower.indexOf('_');
int j=1;
strings[0]=slower.substring(0,1).toUpperCase(); //strings[0]存储第一个大写字符;
while (i != -1) {
strings[j]=slower.substring(i+1,i+2).toUpperCase();
// System.out.println("当前索引位置"+i+"在字符串数组strings中的位置:"+j+"已经替换成"+strings[j]);
sb.replace(i+1, i+2, strings[j]);
i = slower.indexOf('_', i + 1);
j++;
}
String s1=sb.toString();
String str1=s1.replaceAll("_", "");
System.err.println("XML小写:\n" + str1);
}
}
//
package XML;
import java.util.ArrayList;
import java.util.List;
/** (顺序三:输入字段的小写列表字符串,数据库列名列表字符串,输出XML文件配置信息。)
* @author : suyuyuan
* @date :2016年5月23日 下午2:46:27
* @version 1.0
*/
public class ChangeXML {
public static void main(String[] args) {
//以下是小写字符串:
String s="name
addTime updateTime
age "; //字符串s中包含若干空格和制表符 \t。
String newstr1=s.replaceAll(" ",","); //先把所有空格替换成 逗号。
String newstr2=newstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String newstr3=newstr2.replaceAll(",+", ","); //把所有重复的逗号合并成一个逗号。
String[] strings=newstr3.split(","); //按逗号分解该字符串。
List<String> stringList = new ArrayList<String>(); //将分解后的字符串数组存储到ArrayList对象当中。
for(int i=0;i<strings.length;i++){
stringList.add(strings[i].trim());
}
System.out.println(stringList);
//以下是大写字符串:
System.out.println("-------------------分割线----------------------");
String ups = "NAME
ADD_TIME UPDATE_TIME
AGE "; //输入需要转化的长字符串。:
String upstr1=ups.replaceAll(" ",","); //先把所有空格替换成 逗号。
String upstr2=upstr1.replaceAll("\t",","); //再把所有的制表符替换成逗号。
String upstr3=upstr2.replaceAll(",+", ","); //把所有重复的逗号合并成一个逗号。
String[] stringups=upstr3.split(","); //按逗号分解该字符串。
List<String> stringListup = new ArrayList<String>(); //将分解后的字符串数组存储到ArrayList对象当中。
for(int i=0;i<stringups.length;i++){
stringListup.add(stringups[i].trim());
}
System.out.println(stringListup);
System.out.println();
System.out.println("-------------------分割线----------------------");
//打印XML:
System.out.println("<sql id=\"fields\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,"+stringups[i]+"</if>");
}
//
System.out.println();
System.out.println("<sql id=\"values\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,#{"+strings[i]+"}</if>");
}
//
System.out.println();
System.out.println("<sql id=\"set\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">,"+stringups[i]+"=#{"+strings[i]+"}</if>");
}
//
System.out.println();
System.out.println("<sql id=\"where\">");
System.out.println();
for(int i=0;i<strings.length;i++){
System.out.println("<if test=\""+strings[i]+"!=null\">AND "+stringups[i]+"=#{"+strings[i]+"}</if>");
}
}
}
相关文章推荐
- ViewPager无限自动轮播
- Android_基于BMOB的聊天软件_添加好友
- 【bzoj1015】【JSOI2008】【星球大战】【starwar】【并查集】
- 数据结构实验之栈一:进制转换
- 播放音乐,声音
- LeetCode - 240. Search a 2D Matrix II
- swift-隐藏键盘
- Retrofit
- openssl编译
- Maven简介2(作用)
- 虚拟主机的IIS连接数和访问流量限制各是什么
- PIVOT&UNPIVOT
- 【leetcode】58. Length of Last Word
- 安卓Serivice服务被系统杀掉的问题
- Java多态性小结
- Maven导war包
- Tomcat7安装(jdk 1.7环境)
- Spring restful 配置
- OpenCV中的神经网络
- 怎么按enter键不提交表单