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

📄 usercom.java

📁 一个信息发布系统 基于jsp+servlet+tomcat 用户分管理员跟普通用户 普通用户有发布信息 查询信息 修改信息 回复信息 管理员拥有普通用户的功能 此外还具有删除信息 管理信息的回复的功能
💻 JAVA
字号:
package control;
import model.*;
import java.sql.*;
/**
 * 普通用户操作类
 * @author steven
 *
 */
public class UserCom 
{
    private Connection con;
    /**
     * 构造函数 取得与数据库的连接
     * @param url  数据库的url
     * @param database 数据库名
     * @param pasw 数据库的密码
     */
    public UserCom(String url,String database,String pasw)
    {
    	con = new GetConnection(url,database,pasw).getConnection();
    }
    /**
     * 判断是否存在该用户,用于注册时的用户名验证
     * @param name 用户名
     * @return
     */
      public boolean isExitName(String name)
      {
    	PreparedStatement pre;
    	String sql = "select UserName from userinf where UserName = ?";
    	try
    	{
    		pre = con.prepareStatement(sql);
    		pre.setString(1, name);
    		ResultSet rs = pre.executeQuery();
    		if(rs.next())
    			return true;
    		else
    			return false;
    	}
    	catch(SQLException e){return false;}
      }
    /**
     * 判断该用户名跟密码是否正确,用户用户登陆
     * @param name 用户名
     * @param pasw 用户密码
     * @return
     */
      public boolean isExitUser(String name,String pasw)
      {
    	PreparedStatement pre;
    	String sql = "select * from userinf where UserName = ? and Userpasw = ?";
    	try
    	{
    		pre = con.prepareStatement(sql);
    		pre.setString(1, name);
    		pre.setString(2, pasw);
    		ResultSet rs = pre.executeQuery();
    		if(rs.next())
    			return true;
    		else
    			return false;
    	}
    	catch(SQLException e){return false;}
      }
      /**
       * 根据用户注册信息,增加用户
       * @param name
       * @param pasw
       * @param age
       */
      public boolean AddUser(String name,String pasw,int age)
      {
    	  if(isExitName(name))
    		  return false;
    	  else
    	  {
    	       PreparedStatement pre;
    	       String sql = "insert into userinf(UserName,Userpasw,UserAge) values(?,?,?)";
    	       try
       		{
       			pre = con.prepareStatement(sql);
       			pre.setString(1, name);
       			pre.setString(2, pasw);
       			pre.setInt(3,age);
       			pre.execute();    
       			return true;
       		}
       		catch(SQLException e){return false;}
    	  }
      }
      
      public boolean AddUser2(String name,String pasw,int age,String image)
      {
    	  if(isExitName(name))
    		  return false;
    	  else
    	  {
    	       PreparedStatement pre;
    	       String sql = "insert into userinf(UserName,Userpasw,UserAge,UserImage) values(?,?,?,?)";
    	       try
       		{
       			pre = con.prepareStatement(sql);
       			pre.setString(1, name);
       			pre.setString(2, pasw);
       			pre.setInt(3,age);
       			pre.setString(4,image);
       			pre.execute();    
       			return true;
       		}
       		catch(SQLException e){return false;}
    	  }
      }
      /**
       * 修改用户密码
       * @param name 用户名
       * @param oldpasw 旧密码
       * @param newpasw 新密码
       */
      public void UpdatePasw(String name,String oldpasw,String newpasw)
      {
    	  if(isExitUser(name,oldpasw))
    		  ;
    	  else
    	  {
    		  PreparedStatement pre;
   	          String sql = "update userinf set Userpasw = ? where UserName = ?";
   	          try
      		  {
      			pre = con.prepareStatement(sql);
      			pre.setString(1, newpasw);
      			pre.setString(2, name);
      			pre.execute();    
      		  }
      		  catch(SQLException e){}
    	  }
      }
      /**
       * 获取用户的发贴数
       * @param UserName
       * @return
       */
      public int getTieziShuliang(String UserName)
      {
    	  int count ;
    	  PreparedStatement pre;
    	  String sql = "select TieziShuliang from userinf where UserName =?";
    	  try
    	  {
    		  pre = con.prepareStatement(sql);
    		  pre.setString(1,UserName);
    		  ResultSet rs = pre.executeQuery();
    		  if(rs.next())
    		  {
    			  count = rs.getInt("TieziShuliang");
    		  }
    		  else
    			  count = 0;
    		  return count;
    	  }
    	  catch(SQLException e){return 0;}
      }
      /**
       * 增加该用户的发贴数 (帖子被管理元审核通过时)
       * @param name 用户名
       */
      public void addTieziShuliang(String name)
      {
    	  int count = 0;
    	  PreparedStatement pre1,pre2;
	      String sql = "update userinf set TieziShuliang = ? where UserName = ?";
	      //String sql2 = "select TieziShuliang from userinf where UserName = ?";
	      try
  		  {
	    	/*pre2 = con.prepareStatement(sql2);
	    	pre2.setString(1, name);
	    	ResultSet rs = pre2.executeQuery();
	    	if(rs.next())
	    	{
	    		count = rs.getInt("TieziShuliang");
	    	}
	    	else
	    		count = 0;*/
	    	  count = getTieziShuliang(name);
  			pre1 = con.prepareStatement(sql);
  			pre1.setInt(1, count+1);
  			pre1.setString(2, name);
  			pre1.execute();    
  		  }
  		  catch(SQLException e){}
      }
      /**
       * 减少该用户的发贴数 (帖子被管理员删除时)
       * @param name
       */
      public void delTieziShuliang(String name)
      {
    	  int count = 0;
    	  PreparedStatement pre1,pre2;
          String sql = "update userinf set TieziShuliang = ? where UserName = ?";
          //String sql2 = "select TieziShuliang from userinf where UserName = ?";
          try
    	  {
        	/*pre2 = con.prepareStatement(sql2);
        	pre2.setString(1, name);
        	ResultSet rs = pre2.executeQuery();
        	if(rs.next())
        	{
        		count = rs.getInt("TieziShuliang");
        	}
        	else
        		count = 0;*/
        	  count = getTieziShuliang(name);
    			pre1 = con.prepareStatement(sql);
    			pre1.setInt(1, count-1);
    			pre1.setString(2, name);
    			pre1.execute();    
    	}
    		  catch(SQLException e){}
      }
      /**
       * 查看该用户权限(是否为管理员)
       * @param UserName
       * @return
       */
      public boolean isAdmin(String UserName)
      {
    	  PreparedStatement pre;
      	String sql = "select * from userinf where UserName = ?";
      	try
      	{
      		pre = con.prepareStatement(sql);
      		pre.setString(1, UserName);
      		ResultSet rs = pre.executeQuery();
      		if(rs.next())
      		{
      			boolean result = rs.getBoolean("AdminOrNot");
      			return result;
      		}     			
      		else
      			return false;
      	}
      	catch(SQLException e){return false;}
      }
      /**
       * 根据用户名 返回用户的全部信息
       * @param UserName
       * @return
       */
      public User getUser(String UserName)
      {
    	PreparedStatement pre;
    	User user = new User(UserName);
      	String sql = "select * from userinf where UserName = ?";
      	try
      	{
      		pre = con.prepareStatement(sql);
      		pre.setString(1, UserName);
      		ResultSet rs = pre.executeQuery();
      		if(rs.next())
      		{
      			user.setUserAge(rs.getInt("UserAge"));
      			user.setUserPasw(rs.getString("Userpasw"));
      			user.setTieziShuliang(rs.getInt("TieziShuliang"));
      			user.setAdminOrNot(rs.getBoolean("AdminOrNot"));
      			user.setTouxiang(rs.getString("UserImage"));
      			
      			return user;
      		}
      		
      		else
      			return null;
      	}
      	catch(SQLException e){return null;}
      }
}

⌨️ 快捷键说明

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