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

📄 webexam.java

📁 一个手机上的考试系统的有服务器源码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
package WebExam;

import java.io.*;

import javax.servlet.*;
import javax.servlet.http.*;


import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.zip.GZIPInputStream;
import java.util.zip.InflaterInputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
//import java.sql.*;
import java.sql.*;
import  java.lang.Object;
import WebExam.*;

public class WebExam extends HttpServlet {
	private Connection conn = null;
	private Statement stmt = null;
	private ResultSet rs = null;
	private ResultSetMetaData rsm = null;
	private String sql = null;
	
	//页面控制有关
	private int curPage;//当前是第几页
	private int maxPage;//一共有多少页
	private int maxRowCount;//一共有多少行
	private int rowsPerPage;//每页多少行
	
	public void countMaxPage()//根据总行数计算总页数
	{
		if( this.maxRowCount % this.rowsPerPage == 0 )
			this.maxPage = this.maxRowCount / this.rowsPerPage;
		else
			this.maxPage = this.maxRowCount / this.rowsPerPage + 1;
	}
	
	//这个函数有问题
	public int getAvailableCount( String sql ) throws Exception
	{
		int ret = 0;
		try
		{
			Statement stmt = conn.createStatement();
			
			rs = stmt.executeQuery( sql );
			
			while( rs.next() )
			{
				ret =  rs.getInt(1);
			}
			rs.close();
			
			this.maxRowCount = ret;//最大行数赋值
			
			countMaxPage();//最大页数在此计算
			
		}
		catch(Exception e)
	     {
	     	throw new ServletException( e.getMessage() );
	     }
		return ret;
	}
	
	public WebExam() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	public void init() throws ServletException
	{
		try
    	{
			//Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			//String url = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=FMIS5;user=sa;password=baojinta";
			//conn = DriverManager.getConnection(url);
			
    		//装载数据库驱动程序
    		Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    		//Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 2005 version
    		//Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); // 2000 version
    		
    		//MS Sql server 2000数据库的JDBC URL
    		String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=ILearning2004";
    		//String url = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=FMIS5";
    		
    		//使用当前用户名和口令,创建与数据库的连接java.sql.Connection
    		conn = DriverManager.getConnection(url,"sa","baojinta");
    		
    		//创建执行某些SQL的语句
    		stmt = conn.createStatement();
    	}
		catch(Exception e)
    	{
    		throw new ServletException( e.getMessage() );
    	}
	}
	
	public void destroy()
	{
		try
		{
			//这将关闭所有关联的ResultSets
			if( stmt !=  null )
				stmt.close();
			
			if( conn != null )
				conn.close();
		}
		catch(SQLException sqle)
		{
			
		}
	}
	
	//处理get请求
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException
	{
		System.out.println("goGet()...");
		doPost( request, response );
	}

//	处理POST请求
	protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
	{
		System.out.println("goPost()...");
		response.setContentType("application/octet-stream");
		InputStream is = request.getInputStream();
		OutputStream os = response.getOutputStream();
		
		//输入输出流对象
		DataInputStream call = new DataInputStream(is);
		DataOutputStream result = new DataOutputStream(os);
		
		//分清楚需要处理的模块
		byte method = call.readByte();
		
		switch( method )
		{
		//处理登录模块
		case MessageConstants.OPERATION_LOGIN_USER:
			Deal_login( call, result );
			break;
		case MessageConstants.OPERATION_REGEDIT:
			Deal_Regedit( call, result );
			break;
		case MessageConstants.OPERATION_CHANGE_PASSWORD:
			Deal_ChangePassword( request, response );
			break;
		case MessageConstants.OPERATION_LIST_ACCOUNT:
			Deal_list_account( request, response );
			break;
		case MessageConstants.OPERATION_LIST_TESTPAPER:
			Deal_list_testpaper( request, response );
			break;
		case MessageConstants.OPERATION_LIST_TEST_SCORE:
			Deal_list_test_score( request, response );
			break;
		case MessageConstants.OPERATION_LIST_TEST_LEADER_QUERY:
			Deal_list_test_leader_query( request, response );
			break;
		case MessageConstants.OPERATION_LIST_TEST_JUDGE:
			Deal_list_test_judge( request, response );
			break;
		case MessageConstants.OPERATION_LIST_JOB:
			Deal_list_job( request, response );
			break;
		case MessageConstants.OPERATION_LIST_JOB_SCORE:
			Deal_list_job_score( request, response );
			break;
		case MessageConstants.OPERATION_LIST_JOB_LEADER_QUERY:
			Deal_list_job_leader_query( request, response );
			break;
		case MessageConstants.OPERATION_LIST_JOB_JUDGE:
			Deal_list_job_judge( request, response );
			break;
		case MessageConstants.OPERATION_LIST_TRAIN:
			Deal_list_train( request, response );
			break;
		case MessageConstants.OPERATION_LIST_INDIVIDUAL_DOC:
			Deal_list_individual_doc( request, response );
			break;
		case MessageConstants.OPERATION_LIST_STUFF_DOC:
			Deal_list_stuff_doc( request, response );
			break;
		case MessageConstants.OPERATION_LIST_ORGAN_DOC:
			Deal_list_organ_doc( request, response );
			break;
		
		/////////////数据表
		case  MessageConstants.OPERATION_LIST_Clerk_TBTrain:
			Deal_Clerk_TBTrain( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Data_Library:
			Deal_Data_Library( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Forum_Forum:
			Deal_Forum_Forum( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Forum_Reply:
			Deal_Forum_Reply( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Forum_Topic:
			Deal_Forum_Topic( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Article_Comment:
			Deal_Article_Comment( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_GuestBook:
			Deal_GuestBook( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_NetExamine:
			Deal_NetExamine( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_NetOption:
			Deal_NetOption( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Notice:
			Deal_Notice( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Notice_File:
			Deal_Notice_File( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Organ:
			Deal_Organ( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Subject:
			Deal_Subject( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_SubjectBooK:
			Deal_SubjectBooK( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_SysConfig:
			Deal_SysConfig( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_SysLog:
			Deal_SysLog( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_SysVersion:
			Deal_SysVersion( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_TrainBook_File:
			Deal_TrainBook_File( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Train_Clerk:
			Deal_Train_Clerk( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Train_Log:
			Deal_Train_Log( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_ZCFG_Library:
			Deal_ZCFG_Library( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_ZCFG_Type:
			Deal_ZCFG_Type( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_clerk:
			Deal_clerk( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_clerk_kscj:
			Deal_clerk_kscj( request, response );
			break;
		case MessageConstants.OPERATION_LIST_clerk_kscj_by_clerk_id_tk_cl_id:
			Deal_clerk_kscj_by_clerk_id_tk_cl_id( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk001:
			Deal_tk001( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_cl:
			Deal_tk_cl( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_cl_ndzsd:
			Deal_tk_cl_ndzsd( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_cl_zishiying_nd:
			Deal_tk_cl_zishiying_nd( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_lx:
			Deal_tk_lx( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_pic:
			Deal_tk_pic( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_tkj:
			Deal_tk_tkj( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_txk:
			Deal_tk_txk( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_tk_txkType:
			Deal_tk_txkType( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_xtweb_loginip:
			Deal_xtweb_loginip( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_LoginLog:
			Deal_LoginLog( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_File:
			Deal_Clerk_File( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_ks:
			Deal_ks( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_TrainBook:
			Deal_TrainBook( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_GDsj:
			Deal_GDsj( request, response );
			break;
		case MessageConstants.OPERATION_GET_GDSJ_BY_CLERK_KSCJ_ID:
			Deal_GDsj_by_clerk_kscj_id( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Train:
			Deal_Train( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_BaseUpdateFile:
			Deal_BaseUpdateFile( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_BaseUpdate:
			Deal_BaseUpdate( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Casus:
			Deal_Casus( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Article_Vote:
			Deal_Article_Vote( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Case_File:
			Deal_Case_File( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_Cl:
			Deal_Clerk_Cl( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_GDKS_tm:
			Deal_Clerk_GDKS_tm( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_Group:
			Deal_Clerk_Group( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_GroupUser:
			Deal_Clerk_GroupUser( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Case_Article:
			Deal_Case_Article( request, response );
			break;
		case  MessageConstants.OPERATION_LIST_Clerk_Ks_tm:
			Deal_Clerk_Ks_tm( request, response );
			break;
		}
		//发送给客户端知道一共发送了多少数据
		response.setContentLength( result.size() );
	}
	
	private void Deal_login(DataInputStream call, DataOutputStream result ) throws ServletException,IOException
	{
		String username = call.readUTF();
		String password = call.readUTF();
		sql = "select * from clerk where clerk_name=\'" +username+"\'" + " and clerk_pwd =\'" + password +"\'" ;
		
		try
    	{
    		//执行SQL语句
    		rs = stmt.executeQuery(sql);
    		
    		//获取有关ResultSetMetaData对象形式的返回值的信息
    		rsm =  rs.getMetaData();
    		
    		if( rs.next() )
    		{
    			//发送登录成功
    			result.writeInt(1);	
    			
    			//发送用户信息
    			Setclerk  info = new Setclerk();
    			
    			
    			info.setClerk_Id( rs.getInt("Clerk_Id") );
    			info.setOrganID( rs.getInt("OrganID") );
    			info.setclerk_name( rs.getString("clerk_name") );
    			info.setName( rs.getString("Name") );
    			info.setclerk_pwd( rs.getString("clerk_pwd") );
    			info.setclerk_sex( rs.getString("clerk_sex") );
    			info.setClerk_Job( rs.getString("Clerk_Job") );
    			info.setclerk_address( rs.getString("clerk_address") );
    			info.setclerk_telephone( rs.getString("clerk_telephone") );
    			info.setclerk_email( rs.getString("clerk_email") );
    			info.setclerk_dw( rs.getString("clerk_dw") );
    			info.setclerk_bm( rs.getString("clerk_bm") ); 
    			info.setclerk_post( rs.getString("clerk_post") );
    			info.setclerk_bz( rs.getString("clerk_bz") );
    			info.setClerk_BornDate( rs.getDate("Clerk_BornDate").getTime() );
    			info.setClerk_xl( rs.getString("Clerk_xl") );
    			info.setClerk_WorkType( rs.getString("Clerk_WorkType") );

⌨️ 快捷键说明

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