本文目錄一覽:
用eclipse寫Java。代碼很長時程序的管理十分重要。請問什麼代碼管理軟件能記錄每一次對代碼的
SVN, GIT 等軟件。
自己建立一個repository,然後每次把改動commit到裏面。
工作的時候都會用到這些工具的。
SVN的教程網上很多的。
Java幫我寫下代碼~
項目結構如下:
代碼如下
package main;
public class Course {
private String classNum;
private String credit;
private String startClassDate;
private String endClassDate;
private String teacher;
private String assessment;
public String getClassNum() {
return classNum;
}
public void setClassNum(String classNum) {
this.classNum = classNum;
}
public String getCredit() {
return credit;
}
public void setCredit(String credit) {
this.credit = credit;
}
public String getStartClassDate() {
return startClassDate;
}
public void setStartClassDate(String startClassDate) {
this.startClassDate = startClassDate;
}
public String getEndClassDate() {
return endClassDate;
}
public void setEndClassDate(String endClassDate) {
this.endClassDate = endClassDate;
}
public String getTeacher() {
return teacher;
}
public void setTeacher(String teacher) {
this.teacher = teacher;
}
public String getAssessment() {
return assessment;
}
public void setAssessment(String assessment) {
this.assessment = assessment;
}
@Override
public String toString() {
return ” 課程號:” + classNum + “, 學分:” + credit
+ “, 上課時間:” + startClassDate + “, 下課時間:”
+ endClassDate + “, 教師:” + teacher + “, 考核方式:”
+ assessment + “”;
}
}
package main;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
System.out.println(“創建學生請輸入姓名:”);
Student stu1 = new Student();
stu1.setName(sc.nextLine());
Scanner sc1 = new Scanner(System.in);
System.out.println(“創建學生請輸入學號:”);
stu1.setNumber(sc1.nextLine());
System.out.println(“請選擇課程,課程如下:”);
ListCourse list2 = new ArrayListCourse();
stu1.setCourses(list2);
ListCourse list = readTxt();
for (Course course : list) {
System.out.println(course.toString());
}
for (int i = 1; i 5; i++) {
System.out.println(“請輸入第”+i+”個課程號:”);
//輸入第一個課程號
list2 = handleClass(list, list2);
System.err.println(“已選擇成功!”);
list = notSelectClass(list, list2);
System.out.println(“請選擇課程,課程如下:”);
if(i==4){
break;
}
for (Course course : list) {
System.out.println(course.toString());
}
}
System.out.println(“課程已選完!結果如下:”);
System.err.println(“學生:”+stu1.getName()+”:”);
for (Course course : list2) {
System.err.println(course.toString());
}
}
/**
*
* 查看未選擇可選課程
* @param list 全部可選課程
* @param list2 已選課程
* @return
*/
private static ListCourse notSelectClass(ListCourse list,ListCourse list2){
for (int i = 0; i list.size(); i++) {
for (Course course : list2) {
//把已選課程剔除
if(course.getClassNum().equals(list.get(i).getClassNum())){
list.remove(i);
continue;
}
//把時間重合課程剔除 startdate1 =enddate2 and enddate1=startdate2
if(daYuDengYu(course.getEndClassDate(),list.get(i).getStartClassDate())daYuDengYu(list.get(i).getEndClassDate(), course.getStartClassDate())){
list.remove(i);
}
}
}
return list;
}
public static boolean daYuDengYu(String first, String second){
BigDecimal bd1 = new BigDecimal(first);
BigDecimal bd2 = new BigDecimal(second);
return bd1.compareTo(bd2)=0?true:false;
}
/**
* 處理選擇課程
* @param list
* @param list2
* @return
*/
private static ListCourse handleClass(ListCourse list,ListCourse list2){
while (true) {
Scanner sssi = new Scanner(System.in);
String num = sssi.nextLine().trim();
for (Course course : list) {
if(num.equals(course.getClassNum())){
list2.add(course);
return list2;
}
}
System.out.println(“課程號輸入錯誤,請重新輸入:”);
}
}
/**
* 讀取txt獲取課程 每個課程按;分割每個屬性按,分割
* @return
* @throws Exception
*/
private static ListCourse readTxt() throws Exception{
/* 讀入TXT文件 */
String pathname = Main.class.getResource(“/”).toString();
pathname = pathname.substring(6, pathname.length()-4)+”/src/classs/class.txt”; //獲取絕對路徑
File filename = new File(pathname); // 要讀取以上路徑的txt文件
ListCourse list = new ArrayListCourse();
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(filename));
//讀取文件內容
byte[] b = new byte[bis.available()];
bis.read(b);
if(b!=null){
String [] strs= new String(b).split(“;”);
if (strs==null) {
return null;
}
for (String string : strs) {
String[] str = string.split(“,”);
Course course = new Course();
course.setAssessment(str[5].trim());
course.setClassNum(str[0].trim());
course.setCredit(str[1].trim());
course.setEndClassDate(str[3].trim());
course.setStartClassDate(str[2].trim());
course.setTeacher(str[4].trim());
list.add(course);
}
}
bis.close();//關閉流(關閉bis就可以了)
return list;
}
}
package main;
import java.util.List;
public class Student {
private String name;
private String number;
private ListCourse courses;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public ListCourse getCourses() {
return courses;
}
public void setCourses(ListCourse courses) {
this.courses = courses;
}
}
001,1,7,8,Joyce,assignment;
002,1,8,9,Joyce,assignment;
003,1,12,15,Joyce,assignment;
004,1,18,19,Joyce,assignment;
005,1,7,8,LI,assignment;
006,1,8,9,LI,assignment;
007,1,12,15,LI,assignment;
008,1,18,19,LI,assignment;
如何用java代碼實現定時備份數據庫表記錄到
將MySql中的數據庫導出到文件中 備份
import java.io.*;
import java.lang.*;
public class BeiFen {
public static void main(String[] args) {
// 數據庫導出
String user = “root”; // 數據庫帳號
String password = “root”; // 登陸密碼
String database = “test”; // 需要備份的數據庫名
String filepath = “e:\\test.sql”; // 備份的路徑地址
String stmt1 = “mysqldump ” + database + ” -u ” + user + ” -p”
+ password + ” –result-file=” + filepath;
/*
* String mysql=”mysqldump test -u root -proot
* –result-file=d:\\test.sql”;
*/
try {
Runtime.getRuntime().exec(stmt1);
System.out.println(“數據已導出到文件” + filepath + “中”);
}
catch (IOException e) {
e.printStackTrace();
}
}
}
將數據從磁盤上的文本文件還原到MySql中的數據庫
import java.io.*;
import java.lang.*;
/*
* 還原MySql數據庫
* */
public class Recover {
public static void main(String[] args) {
String filepath = “d:\\test.sql”; // 備份的路徑地址
//新建數據庫test
String stmt1 = “mysqladmin -u root -proot create test”;
String stmt2 = “mysql -u root -proot test ” + filepath;
String[] cmd = { “cmd”, “/c”, stmt2 };
try {
Runtime.getRuntime().exec(stmt1);
Runtime.getRuntime().exec(cmd);
System.out.println(“數據已從 ” + filepath + ” 導入到數據庫中”);
} catch (IOException e) {
e.printStackTrace();
}
}
}
原創文章,作者:SQAD,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/132855.html