没什么

来源:互联网 发布:java中怎么使用接口 编辑:程序博客网 时间:2024/04/29 20:36

 

package com.dlsoft.dosomethig;

import javax.xml.parsers.ParserConfigurationException;

import com.dlsoft.doXML.CreateTable;
import com.dlsoft.doXML.CreateXml;

public class Create{
 public static void createTable(String sql){
  //System.out.println(sql);
  String tableName = sql.substring(0, sql.indexOf("("));
  //System.out.println(tableName);
  CreateXml cx;
  try {
    cx = new CreateXml(tableName);
  
  String info = sql.substring(sql.indexOf("(")+1,sql.indexOf(")")).trim();
  //System.out.println(info);
  String[] leb = info.split(",");
   //System.out.println(table[0]);
   //System.out.println(table[1]);
  CreateTable.createTable(tableName,leb);
  
  } catch (ParserConfigurationException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }
}
======================

package com.dlsoft.doXML;

import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

public class CreateTable {
 public static void createTable(String tableName,String node[]){
   DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
         Element root = null;
         Element id = null;
         Element ele = null;
         try {

           factory.setIgnoringElementContentWhitespace(true);
                 DocumentBuilder db=factory.newDocumentBuilder();
                 Document xmldoc=db.parse(new File(tableName+".xml"));
                 root=xmldoc.getDocumentElement();
           //System.out.println(((Document) root.getFirstChild()).getElementsByTagName("ID").getLength()!=0);
                 /**
                  * 问题,得不到第一个子节点!!!
                  */
                
                 if(root.getFirstChild()!=null&&root.getFirstChild().getNodeName().equals("ID")){
            System.out.println("该表已创建~");
            return;
           }
                 id = xmldoc.createElement("ID");
           id.setAttribute("id", "0");
                 for (int i = 0; i < node.length; i++) {
            String[] table = node[i].split(" ");
            ele = xmldoc.createElement(table[0]);
                  ele.setAttribute("aa",table[1]);
                  id.appendChild(ele);
                 }
//                 ele = xmldoc.createElement(nodeName);
//                 ele.setAttribute("aa", leixing);
                 root.appendChild(id);
                 SaveXml.saveXml(tableName+".xml", xmldoc);
         }catch (Exception e) {
    e.printStackTrace();
   }
 }
}

===================================

package com.dlsoft.doXML;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.xml.sax.SAXException;
public class CreateXml {
 //构造
  public CreateXml(String name) throws ParserConfigurationException {
  String filename;
  DocumentBuilder builder;
  Document document;
   try{
    filename = name+".xml";
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    builder = factory.newDocumentBuilder();
    document = builder.newDocument();
    TransformerFactory tf = TransformerFactory.newInstance();
    Transformer transformer = tf.newTransformer();
    DOMSource source = new DOMSource(document);
    //创建xml头部声明
    transformer.setOutputProperty(OutputKeys.ENCODING, "GB2312");
    transformer.setOutputProperty(OutputKeys.INDENT, "yes");   
    //创建根节点
    Element root=null;
    factory.setIgnoringElementContentWhitespace(true);
    DocumentBuilder db=factory.newDocumentBuilder();
    Document xmldoc=db.newDocument();
    root=xmldoc.createElement(name);
    source.setNode(root);
    //输出
    PrintWriter pw = new PrintWriter(new FileOutputStream(filename));
    StreamResult result = new StreamResult(pw);
    transformer.transform(source, result);
     }catch (TransformerException mye) {
      mye.printStackTrace();
     } catch (IOException exp) {
      exp.printStackTrace();
     } catch (ParserConfigurationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }

}

==================================

package com.dlsoft.doXML;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;

import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;

public class SaveXml {
 public static void saveXml(String fileName, Document doc) {//将Document输出到文件
        TransformerFactory transFactory=TransformerFactory.newInstance();
        try {
            Transformer transformer = transFactory.newTransformer();
            transformer.setOutputProperty("encoding", "utf-8");
            transformer.setOutputProperty("indent", "yes");
            DOMSource source=new DOMSource();
            source.setNode(doc);
            StreamResult result=new StreamResult();
            result.setOutputStream(new FileOutputStream(fileName));
            
            transformer.transform(source, result);
        } catch (TransformerConfigurationException e) {
            e.printStackTrace();
        } catch (TransformerException e) {
            e.printStackTrace();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } 
    }
}

======================================

package com.dlsoft.Main;

import java.io.*;

import com.dlsoft.untl.DoSQL;
import com.dlsoft.untl.Login;

public class Main {

 public static void main(String[] args) throws IOException{
  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  String str = null;
  String userName = null;
  String password = null;
  int s = 4;
  System.out.println("请先登录~~");
  do{
   if(s != 4){
    System.out.println("用户名或密码错误!");
   }
   System.out.print("请输入用户名:");
   userName = br.readLine();
   System.out.print("请输入密码:");
   password = br.readLine();
   
   s = Login.login(userName, password);
  }while( s == 1 );
  if(s == 2){
   System.exit(0);
  }
   System.out.println("已进入,欢迎使用~"); 
   do{
    str = "";
    System.out.println();
    System.out.print("SQL>");
    str = br.readLine()+" ";
    int i = 2;
    while(str.indexOf(";") ==-1&&str.indexOf(";") ==-1){
     System.out.print(i+"->");
     str += br.readLine()+" ";
     i++;
    }
    System.out.println();
    DoSQL.doSQL(str);
    
   }while(
     (!str.trim().equalsIgnoreCase("QUIT"))&&
     (!str.trim().equalsIgnoreCase("EXIT"))&&
     (!str.trim().equalsIgnoreCase("BYE"))&&
     (!str.trim().equals("退出;"))&&
     (!str.trim().equals("再见;")));
   System.out.println("已退出,感谢使用~");
  
  
 }

}

=====================

package com.dlsoft.untl;

public class DoSQL {
 public static void doSQL(String sql){
  String sqlWithout = "";
  try {
   sqlWithout = sql.substring(0, sql.indexOf(";"));
  } catch (Exception e) {
   
  }
  String sqlWord[] = sqlWithout.split(" ");
   if(sqlWord[0].toUpperCase().equals("SELECT")||sqlWord[0].equals("查找")){
             System.out.println("查询的方法!");
         }else if(sqlWord[0].toUpperCase().equals("INSERT")||sqlWord[0].equals("插入")){
             System.out.println("插入的方法!");
         }else if(sqlWord[0].toUpperCase().equals("UPDATE")||sqlWord[0].equals("更新")){
             System.out.println("更新的方法!");
         }else if(sqlWord[0].toUpperCase().equals("DELETE")||sqlWord[0].equals("删除")){
             System.out.println("删除的方法!");
         }else if(sqlWord[0].toUpperCase().equals("CREATE")||sqlWord[0].equals("创建")){
             System.out.println("创建的方法开始!");
             FindCreate.findCreate((sql.substring(sql.indexOf(" ")+1, sql.length()-2)).trim());
             System.out.println("创建的方法结束!");
         }else if(sqlWord[0].toUpperCase().equals("DROP")||sqlWord[0].equals("丢掉")){
             System.out.println("丢掉的方法!");
         }else if(sqlWord[0].toUpperCase().equals("SHOW")||sqlWord[0].equals("展示")){
             System.out.println("展示的方法!");
         }else if(sqlWord[0].toUpperCase().equals("QUIT")||sqlWord[0].toUpperCase().equals("EXIT")||sqlWord[0].toUpperCase().equals("BYE")||sqlWord[0].equals("关闭")||sqlWord[0].equals("退出")||sqlWord[0].equals("再见")){
          return;
         }else{
             System.err.println("在第一个单词"+sqlWord[0]+"附近有错误!");
         }
        
  
 }
}

=============================

package com.dlsoft.untl;

import com.dlsoft.dosomethig.Create;

public class FindCreate {
 public static void findCreate(String sqlWithOutCreate){
//  System.out.println(sqlWithOutCreate);
  String sqlWord[] = sqlWithOutCreate.split(" ");
  if(sqlWord[0].trim().equalsIgnoreCase("table")){
//   System.out.println((sqlWithOutCreate.substring(sqlWithOutCreate.indexOf(sqlWord[0])+sqlWord[0].length(), sqlWithOutCreate.length())).trim());
   Create.createTable((sqlWithOutCreate.substring(sqlWithOutCreate.indexOf(sqlWord[0])+sqlWord[0].length(), sqlWithOutCreate.length())).trim());
  }else if(sqlWord[0].trim().equalsIgnoreCase("user")){
   
  }
 }
}

==============================

package com.dlsoft.untl;

public class Login {
 static int i = 3;
 public static int login(String userName,String password){
  
  if(userName.trim().equals("admin")&&password.trim().equals("admin")){
   return 0;
  }else{
   i--;
   if(i == 0){
    return 2;
   }
   return 1;
  }
 }
}

==================================

package test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.w3c.dom.Element;

import com.dlsoft.doXML.SaveXml;

public class Test {
  public Test() throws ParserConfigurationException {
         DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
         Element root = null;
         Element ele = null;
         try {
                 factory.setIgnoringElementContentWhitespace(true);
                 DocumentBuilder db=factory.newDocumentBuilder();
                 Document xmldoc=db.parse(new File("user.xml"));
                 root=xmldoc.getDocumentElement();
                 ele = xmldoc.createElement("aaa");
                 root.appendChild(ele);
                 SaveXml.saveXml("user.xml", xmldoc);
         }catch (Exception e) {
    // TODO: handle exception
   }
  }
 
 public static void main(String[] args) {
  try {
   Test t = new Test();
  } catch (ParserConfigurationException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }
}


 

 

原创粉丝点击