新人:求个大神给添加一下注释,程序挺简单。小弟我看不懂多谢

新人:求个大神给添加一下注释,程序挺简单。我看不懂谢谢!
DAO
package com.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.servlet.User;
import com.util.GetConnection;

public class Dao {
private Connection conn;
private PreparedStatement pstat;
String sql = "";

/**
 *
 * 用户登录
 */
public boolean logoin(User user) throws SQLException {
conn = GetConnection.getConnection();
boolean i = false;
sql = "select * from user where user=? and pwd=?";

pstat = conn.prepareStatement(sql);

pstat.setString(1, user.getUser());
pstat.setString(2, user.getPwd());

ResultSet rs1 = (ResultSet) pstat.executeQuery();
if (rs1.next()) {
i = true;
rs1.close();
pstat.close();
} else {
i = false;
rs1.close();
pstat.close();
}
conn.close();
return i;
}

/**
 * 用户注册
 */
public void addUser(User user) {
conn = GetConnection.getConnection();
sql = "insert into user values(?,?,?,?)";
try {
pstat = conn.prepareStatement(sql);
pstat.setString(1, user.getUser());
pstat.setString(2, user.getPwd());
pstat.setString(3, user.getName());
pstat.setInt(5, user.getAge());
pstat.executeUpdate();
pstat.close();
conn.close();

} catch (SQLException e) {
e.printStackTrace();
}

}
}

Mac
package com.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.servlet.User;
import com.util.GetConnection;

public class Dao {
private Connection conn;
private PreparedStatement pstat;
String sql = "";

/**
 *
 * 用户登录
 */
public boolean logoin(User user) throws SQLException {
conn = GetConnection.getConnection();
boolean i = false;
sql = "select * from user where user=? and pwd=?";

pstat = conn.prepareStatement(sql);

pstat.setString(1, user.getUser());
pstat.setString(2, user.getPwd());

ResultSet rs1 = (ResultSet) pstat.executeQuery();
if (rs1.next()) {
i = true;
rs1.close();
pstat.close();
} else {
i = false;
rs1.close();
pstat.close();
}
conn.close();
return i;
}

/**
 * 用户注册
 */
public void addUser(User user) {
conn = GetConnection.getConnection();
sql = "insert into user values(?,?,?,?)";
try {
pstat = conn.prepareStatement(sql);
pstat.setString(1, user.getUser());
pstat.setString(2, user.getPwd());
pstat.setString(3, user.getName());
pstat.setInt(5, user.getAge());
pstat.executeUpdate();
pstat.close();
conn.close();

} catch (SQLException e) {
e.printStackTrace();
}

}
}

package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.dao.Dao;
import com.util.IpUtil;

public class loginServlet extends HttpServlet {
public void destroy() {
super.destroy(); 
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletExceptionIOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String name = new String(request.getParameter("user").getBytes(
"ISO8859_1"), "GBK");
String pwd = new String(request.getParameter("pwd").getBytes(
"ISO8859_1"), "UTF-8");
User user = new User();
user.setUser(name);
user.setPwd(pwd);
Dao dao = new Dao();
boolean isLogin;
try {
isLogin = dao.logoin(user);

if (isLogin) {
InetAddress inetAddress = InetAddress.getLocalHost();
String m = inetAddress.getHostAddress();
int n = request.getRemotePort();
System.out.println(m+"*********"+ n);
String mac = getMacAddress(m);
HttpSession session = request.getSession();
session.setAttribute("username",name);
session.setAttribute("address", m);
session.setAttribute("mac", mac);
//response.sendRedirect("success.jsp");
boolean flag = false;//定义一个flag做判断
String ipSection1="192.168.2.0-192.168.2.4";//给ip设定范围权限
String ipSection2="192.168.2.6-192.168.2.32";//1.是192.168.2.0-192.168.2.120区间内的,且192.168.2.5 192.168.2.33 是无法访问的
String ipSection3="192.168.2.34-192.168.2.120";
String[] arrayIP = {ipSection1,ipSection2,ipSection3};
for (int i = 0; i < arrayIP.length; i++) {
flag = IpUtil.ipExistsInRange(m,arrayIP[i]);
}

if (flag == true) {//判断ip是否符合权限
response.sendRedirect("success.jsp");// 账号密码通过符合权限通过
}else{
response.sendRedirect("ipfail.jsp");//账号密码正确但是没有权限
}
} else {
response.sendRedirect("fail.jsp");//账号密码不对
}


} catch (SQLException e) {
e.printStackTrace();
}
}

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}

public void init() throws ServletException {
}
/**
 * 获取物理地址MAC
 * @param host
 * @return
 */
public String getMacAddress(String host)
{
String mac = "";
StringBuffer sb = new StringBuffer();

try 
{
NetworkInterface ni = NetworkInterface.getByInetAddress(InetAddress.getByName(host));

byte[] macs = ni.getHardwareAddress();

for(int i=0; i<macs.length; i++)
{
mac = Integer.toHexString(macs[i] & 0xFF); 

     if (mac.length() == 1) 
     { 
      mac = '0' + mac; 
     } 

sb.append(mac + "-");
}

} catch (SocketException e) {
e.printStackTrace();
} catch (UnknownHostException e) {
e.printStackTrace();
}

mac = sb.toString();
mac = mac.substring(0, mac.length()-1);

return mac;
}

}

package com.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class GetConnection {
//通过静态方法注册驱动,获得连接

public static Connection getConnection(){
   String driver = "com.mysql.jdbc.Driver";//加载驱动
   String url = "jdbc:mysql://localhost/test";//数据库名
   Connection con = null;
   try {
    Class.forName(driver);
    try {
     con = DriverManager.getConnection(url,"root","root");
    } catch (SQLException e) {
     e.printStackTrace();
    }
   } catch (ClassNotFoundException e) {
    e.printStackTrace();
   }
   System.out.println("已获得数据库的连接");
   return con;
}
}

package com.util;
public class IpUtil {
   /*验证IP是否属于某个IP段
     * ipSection    IP段(以'-'分隔)
     * ip           所验证的IP号码
     */
   public static boolean ipExistsInRange(String ip,String ipSection) {

        ipSection = ipSection.trim();

        ip = ip.trim();

       int idx = ipSection.indexOf('-');

        String beginIP = ipSection.substring(0, idx);

        String endIP = ipSection.substring(idx + 1);

       return getIp2long(beginIP)<=getIp2long(ip) &&getIp2long(ip)<=getIp2long(endIP);

    }

   public static long getIp2long(String ip) {

        ip = ip.trim();

        String[] ips = ip.split("\\.");

       long ip2long = 0L;

       for (int i = 0; i < 4; ++i) {

            ip2long = ip2long << 8 | Integer.parseInt(ips[i]);

        }

       return ip2long;

    }

    public static long getIp2long2(String ip) {

        ip = ip.trim();

        String[] ips = ip.split("\\.");

       long ip1 = Integer.parseInt(ips[0]);

       long ip2 = Integer.parseInt(ips[1]);

       long ip3 = Integer.parseInt(ips[2]);

       long ip4 = Integer.parseInt(ips[3]);

 

       long ip2long =1L* ip1 * 256 * 256 * 256 + ip2 * 256 * 256 + ip3 * 256 + ip4;

       return ip2long;

    } 

   /* public static void main(String[] args){

       //10.10.10.116 是否属于固定格式的IP段10.10.1.00-10.10.255.255

        String ip="192.168.8.51";

        String ipSection="192.168.8.0-192.168.8.255";
http://www.crazyit.org/thread-10915-1-1.html
       boolean exists=ipExistsInRange(ip,ipSection);//能够决断是不是在这个范围内

        System.out.println(exists);

        System.out.println(getIp2long(ip));

        System.out.println(getIp2long2(ip));
    }*/
}

------解决思路----------------------
这不是有注释了么,这么简单的代码没法再写了,够细了,而且本身有很多问题,估计是学生写的。

你哪里不懂你说出来,不可能每行都你写吧。

大体就是:

GetConnection获取数据库连接

Dao 提供了 通过query查询用户,查到就登录 和 insert用户 的两个方法。

loginServlet 就是一个servlet,前台请求的时候会调用doPost方法,然后进行处理以后去调Dao里的登录方法。
------解决思路----------------------
各种注释也都有了呀,还好了