⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dictionarychannel.java

📁 JAVA邮件系统
💻 JAVA
字号:
/**
 * 替换字典模板
 * 
 *DictionaryChannel.java
 * @author Zhu Jian Min
 * 2000.8.4
 */
import java.io.*;
import java.text.*;
import java.util.*;
import java.sql.*;

/**
 * 
 *
 * @author Zhu Jian Min
 */

public class DictionaryChannel extends Channel
{	
	DictionaryChannel(){
		channelName = "字典";
	}
	
	public void makeChannel(Person p,TemplateList tempList,HtmlOut desHtml)
	{
		//定义单个模板
		SingleTemplate st,st2;
		
		String channelContent = "",cardStr = "";
		//在全局变量tempList中找到"频道"模板
		st = tempList.searchTemplate("频道3");
		if(st==null) return ;
		
		
		int nKey = st.getKeyNum ();
		String sKey ;
		for(int j=0;j<nKey;j++){
			desHtml.addString (st.getStringAt (j));
			sKey = st.getKeyAt (j);
			if( sKey .compareTo("cgi-path")==0 )
				desHtml.addString (CommonMethods.sHostNameCGI);
			if( sKey.compareTo("标题")==0 )
				desHtml.addString (	channelName );
			if( sKey.compareTo("内容")==0 )
				makeChannelContents( p, tempList, desHtml);
			if( sKey.compareTo("CloseCGI")==0 )
				desHtml.addString("CloseChannel?channel=dictionary" );
		}
		desHtml.addString (st.getEndString());
		return;
	}
	public void makeDictionary(TemplateList tempList,String eword,HtmlOut desHtml
								  )
	{
		SingleTemplate st;
		String meaning;
		String option;
		
		st = tempList.searchTemplate("ROOT");
		if(st==null) {
			desHtml.setErrorID(desHtml.TEMPLATE_NOTFIND,"",
							   "未找到字典主模板","Login?channel=dictionary");
		
			return ;
		}
		if(eword!=null){
			eword=eword.trim();
			int k=eword.indexOf("'");
			if (k!=-1)
				eword="";
			
				
		}
		
		//如果字典模板找到了
		String queryString;
		ResultSet rs,rs1;
		int ID;//英语单词在数据库的ID
		String chineseword;//汉字
		DBOperater DB = new DBOperater ("yhcd and zwjs");
		try 
		{
			rs=DB.executeQuery("Select * From yhcd,zwjs Where YWDC='"+eword+"'");
			if(rs!=null){
			
			//如果字典数据库中有此单词
			if (rs.next()){
				  //查找汉字数据库中对应的单词
				   ID=rs.getInt(1);
				   rs.close();
				   try{
				        rs1=DB.executeQuery("select CX,ZWJS from zwjs where  ID='"+ID+"'");
						if(rs1!=null){
				        //如果汉字数据库中有此ID,则分析模板,将数据显示到模板上
				        if(rs1.next()){
						 option=rs1.getString(1);
						 meaning=rs1.getString(2);
						 int nkey;
						 String skey;
				         nkey=st.getKeyNum();
					     for(int i=0;i<nkey;i++){
							 desHtml.addString(st.getStringAt(i));
							 
							 skey=st.getKeyAt(i);
							 if(skey.compareTo("cgi-path")==0){
								desHtml.addString(CommonMethods.sHostNameCGI);
							 }
							  if(skey.compareTo("eword")==0){
								 desHtml.addString(eword);															 
							 }
							 if(skey.compareTo("option")==0){
								 desHtml.addString(option);
							 }
							 if(skey.compareTo("meaning")==0){
								 desHtml.addString(meaning);
							 }					 						 
							
						 }
						 desHtml.addString(st.getEndString());
						 
					     
			        	}
				       else{
				    	desHtml.setErrorID(desHtml.USER_ANSWER_IS_INCORRECT,
										   "",
										   "对不起,字典中没有此单词的汉语意思","Login?channel=dictionary");
				       DB.close();
			         	}
					DB.close();
				
						}
						else{
							DB.close();
							return;
						}
				
				  }catch(Exception ex){
					System.err.println("SQLException: " + ex.getMessage());
					DB.close();
					return;
				  }
			}//如果字典数据库中没有此单词
			else{
				desHtml.setErrorID(desHtml.USER_ANSWER_IS_INCORRECT,
								   "","对不起,字典中没有此单词","Login?channel=dictionary");
				DB.close();
			}
			}else{
			 DB.close();
			 return;
			}
			
		} catch(Exception ex) {
			System.err.println("SQLException: " + ex.getMessage());
			DB.close();
			return ;
		}
		return ;
	}

	public void makeChannelContents(Person p,TemplateList tempList , 
									HtmlOut desHtml){
		SingleTemplate st;
		st = tempList.searchTemplate("字典");
		if(st==null){
			return ;
		}
		//now get all mails ;
		int nKey = st.getKeyNum ();
		String sKey ;
		
		for(int i=0;i<nKey;i++){
			sKey = st.getKeyAt (i);
			desHtml.addString (st.getStringAt (i));
		}
		desHtml.addString (st.getEndString ());
		return ;		
	}
	public boolean editChannel(Person p,HtmlOut Html){
		return true;
	}	
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -