java里的日期计算及java与sql server2008的连接

时间:2022-09-29 14:13:06

  这学期做了一个数据库课程设计,使用到了java的日期计算。记录下来自己学到的些许东西,以免忘记。附带上自己做的课程的源码吧。

java里有两个类Date和Calendar,可以很方便的做日期的计算。

其中Date类,可以很方便的进行两个不同日期之间天数差计算。如下:

Date now =new Date();

String returnday="1992-04-01";

long a= now.getTime();

Date day = sdf.parse(returnday);
long b = day.getTime();
number = (a-b)/(24*3600000);

       number就是两个时间差了。

       其中sdf的声明是SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");这个是控制时间格式的。

        有时候想知道未来的某天是哪一年几月几号,这时候就可以用Calendar类了。

       Calendar calendar = Calendar.getInstance();

       calendar.add(Calendar.DATE, 28);
String returnday = sdf.format(calendar.getTime());

      这样就可以输出未来28天是某年某月某日了。然后就是我着重显示那一行中,Calendar.DATE其实还有其他的值,比如DAY_OF_WEEK,是可以计算星期的。自己可以尝试一下。

       然后就是java和sql server2008的连接,我会提供一个文件里,里面有四个包,导入工程就可以了。java与sql server2008的连接代码示例如下:

package Test;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;




public class test {
static public void main(String[] argv){
test t = new test();
t.conn = getConnection();

try {
Statement st = t.conn.createStatement(); //这里就是使用Connection类来进行和sql server交互了。
ResultSet  rs=st.executeQuery("select * from Worker ");


while(rs.next()){
String s1=rs.getString("WorNo");

String s2=rs.getString("WorName");

String s3=rs.getString("WorType"); 

String s4=rs.getString("WorWage");

String s5=rs.getString("WorSex");

String s6=rs.getString("WorPhNo");

String s7=rs.getString("WorTime");
String s8=rs.getString("DorNo");
System.out.println(s1+s2+s3+s4);
}

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

System.out.println("hello jdbc");
}
static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
static final String URL = "jdbc:sqlserver://localhost:1433;databaseName=room";
static final String USER = "sa";
static final String PWD = "1234";
Connection conn = null;
public static Connection getConnection() {
Connection con = null;
try {
Class.forName(DRIVER);//主要的就是这两行代码了。第一行是注册驱动,第二行是调用驱动管理器与数据库连接。然后就可以进行操作了。
con = DriverManager.getConnection(URL, USER,PWD);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
}

点击打开链接这个是数据库源代码

点击打开链接这个是驱动包