使用JavaBean创建您的网上日历本(2)_MySQL
JavaBean程序分析
我想把HtmlCalendarNotePad中的主要方法介绍一些,相信会大家有所帮助
public void setYear(int year) //设置年份 。默认值为当前的年份
public int getYear() //获得年份 。默认值为当前的年份
//这是标准Java程序写法,因为Java程序就是一个类所以经常写这种setXXX/getXXX
public void setMonth(int month) //设置月份(1-12),默认值为当前的月
public int getMonth() //获得月份(1-12),默认值为当前的月
public void setStyle(int style)
public int getStyle()
//设置/获得日历的样式(style)
//是以星期天为一星期的第一天HtmlCalendarNotePad.SUNDAY_FIRST还是以星期一为一星期的第一天 HtmlCalendarNotePad.MONDAY_FIRST
// 默认值为HtmlCalendarNotePad.SUNDAY_FIRST
public void setLocale(Locale loc) //设置地区代码(Locale), 默认值为Locale.PRC
public Locale getLocale() //获得地区代码(Locale), 默认值为Locale.PRC
public void setAction(int day, String actionUrl ,String target_frame)
//设置超链接,来处理请求。如果出了任何错误的话,该方法会返回一个空的字符串。
// 你可以设置一个普通的URL,如“http://www.yesky.com/action.jsp”
// 或者一个一个javascript 函数名, 如 “myFunction”
// 日期将被作为一个参数传给URL,或者作为一个字符串值传给 javascript. 格式是yyyymmdd.
// target_frame可以为空的字符串。
如:
如果调用setAction(21,"http://www.yesky.com/","_blank")
超链接为: 〈a href="http://www.yesky.com/?date=20000621" target=_blank〉21〈/a〉
public void setActions(String actionUrl, String target_frame)
//你也可以为一个月的每一天设置超链接
现在让我和大家一起来分享那颗诱人的豆子(Bean)吧:(HtmlCalendarNotePad.java)。
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
public class HtmlCalendarNotePad
{
public static final int MONDAY_FIRST = 1; //设置每星期是以星期一为第一天
public static final int SUNDAY_FIRST = 2; //设置每星期是以星期日为第一天
private Hashtable config;
private static final String Mnth[] = {
"一月", "二月", "三月", "四月", "五月", "六月",
"七月", "八月", "九月", "十月", "十一月", "十二月"
};
private int year;
private int month;
private int style;
private String sFont;
private Locale loc;
private static String NEWLINE = "\n";
public HtmlCalendarNotePad () //构造函数
{
sFont = null;
GregorianCalendar gCalendar = new GregorianCalendar(); //取得当前的日历(格里高里历)
config = new Hashtable(); //创建新的哈希表储存配置信息
NEWLINE = System.getProperty("line.separator");
style = 2; //设置每星期是以星期日为第一天
month = gCalendar.get(2); //取得月份
year = gCalendar.get(1); //取的年份
loc = Locale.PRC; //设置国家名,默认为中华人民共和国
}
private String formatObject(String s, Object obj)
{
String s1 = "";
if(obj != null)
s1 = String.valueOf(String.valueOf(obj));
if(s == null)
return s1;
else
return s + s1 + "〈/font〉";
}
private int getDay(Calendar calendar) //取得某日在日历中的位置
{
if(style == 2)
return calendar.get(7) - 1;
else
return (calendar.get(7) + 5) % 7;
}
public String getHtml()
{
GregorianCalendar gCalendar = new GregorianCalendar(year, month - 1, 1);
GregorianCalendar gCalendar1 = new GregorianCalendar(2001, 3, 24);
SimpleDateFormat simpledateformat = new SimpleDateFormat("EEE", loc);
//设置缩写格式,EEE是星期的缩写,如 Sun, 若EEEE则为Sunday。
int i = month - 1;
int j = 0;
StringBuffer stringbuffer = new StringBuffer(""); //创建新的字符串缓冲区
stringbuffer.append("〈table〉〈tr〉\n"); //在stringbuffer上添加〈table〉〈tr〉,为创建表格作准备
if(style == 2) //见上解释
{
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
gCalendar1.add(5, 1);
for(int k = 1; k 〈 7; k++)
{
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
gCalendar1.add(5, 1);
}
}
else
{
gCalendar1.add(5, 1);
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
for(int l = 2; l 〈 8; l++)
{
gCalendar1.add(5, 1);
stringbuffer.append("〈th align=right〉" + formatObject(sFont, simpledateformat.format(gCalendar1.getTime())) + "〈/th〉\n");
}
}
stringbuffer.append("〈/tr〉\n");
int i1 = 0;
j = 0;
if(getDay(gCalendar) 〉 0)
{
stringbuffer.append("〈tr〉");
for(; i1 〈 getDay(gCalendar); i1++)
{
stringbuffer.append("〈td align=right〉");
if(sFont != null)
stringbuffer.append(sFont + " 〈/font〉");
else
stringbuffer.append(" ");
stringbuffer.append("〈/td〉\n");
j++;
}
}
for(; gCalendar.get(2) == i; gCalendar.add(5, 1))
{
int j1 = gCalendar.get(5);
int k1 = (i1 + j1) % 7;
if(k1 == 1)
{
stringbuffer.append("〈tr〉" + NEWLINE);
j = 0;
}
stringbuffer.append("〈td align=right〉");
j++;
if(sFont != null)
stringbuffer.append(sFont);
String s;
if((s = (String)config.get(String.valueOf(j1))) != null)
{
stringbuffer.append("〈a href=\"");
if(s.toUpperCase().startsWith("HTT") || s.indexOf(".") 〉 0)
{
stringbuffer.append(s);
if(s.indexOf("?") 〈 0)
stringbuffer.append("?date=" + stringDate(gCalendar));
else
stringbuffer.append("&date=" + stringDate(gCalendar));
}
else
{
stringbuffer.append("javascript:" + s + "('" + stringDate(gCalendar) + "');");
}
stringbuffer.append("\"");
if((s = (String)config.get(j1 + "target")) != null)
stringbuffer.append(" target=\"" + s + "\"");
stringbuffer.append("〉");
stringbuffer.append(gCalendar.get(5));
stringbuffer.append("〈/a〉\n");
}
else
{
stringbuffer.append(String.valueOf(j1));
}
if(sFont != null)
stringbuffer.append("〈/font〉");
stringbuffer.append("〈/td〉\n");
if(k1 == 0)
stringbuffer.append("〈/tr〉\n");
}
if(j 〈 7)
{
for(; j 〈 7; j++)
{
stringbuffer.append("〈td align=right〉");
if(sFont != null)
stringbuffer.append(sFont);
stringbuffer.append(" ");
if(sFont != null)
stringbuffer.append("〈/font〉");
stringbuffer.append("〈/td〉\n");
}
stringbuffer.append("〈/tr〉\n");
}
stringbuffer.append("〈/table〉\n");
return stringbuffer.toString();
}
public Locale getLocale() //获取地区名
{
return loc;
}
public int getYear() //取得年份
{
return htmlCalendarYear;
}
public int getMonth() //取得月分
{
return htmlCalendarMonth;
}
public int getStyle() //取得日历的样式
{
return htmlCalendarStyle;
}
//设置动作的URI,target_frame 的值可以为_blank、 _parent、 _top、 _self。
public void setAction(int day, String actionUri, String target_frame)
{
if(actionUri != null)
{
config.put(String.valueOf(day), actionUri);
if(target_frame != null && target_frame.length() 〉 0)
config.put(day + "target", target_frame);
}
}
//设置一个月的所有天的超链接
public void setActions(String actionUri, String target_frame)
{
for(int day = 1; day 〈= 31; day++)
setAction(day, actionUri, target_frame);
}
//设置地区
public void setLocale(Locale locale)
{
loc = locale;
}
//设置年份
public void setYear(int htmlCalendarYear)
{
if(htmlCalendarYear 〉 0)
{
year = htmlCalendarYear;
config.clear();
}
}
//设置月份
public void setMonth(int htmlCalendarMonth)
{
if(htmlCalendarMonth 〉= 1 && htmlCalendarMonth 〈= 12)
{
month = htmlCalendarMonth;
config.clear();
}
}
//设置日历的样式
public void setStyle(int htmlCalendarStyle)
{
style = htmlCalendarStyle;
}
private String stringDate(Calendar calendar)
{
String strDay = String.valueOf(calendar.get(1));
return strDay + twoDigits(calendar.get(2) + 1) + twoDigits(calendar.get(5));
}
private String twoDigits(int day) //为了日历中数字能够对齐,所以1-9 前将加0
{
String stringDay = String.valueOf(day); //取得day的值
if(stringDay.length() == 1) //如果字符串长度为1
return "0" + stringDay; //则在字符串前加零
else
return stringDay;
}
}

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Ein wichtiges Tool zur Organisation Ihres Arbeits- und Arbeitsalltags in Windows 11 ist die Anzeige von Uhrzeit und Datum in der Taskleiste. Diese Funktion befindet sich normalerweise in der unteren rechten Ecke des Bildschirms und ermöglicht Ihnen den sofortigen Zugriff auf Uhrzeit und Datum. Durch Klicken auf diesen Bereich können Sie Ihren Kalender aufrufen und so die Überprüfung bevorstehender Termine und Termine erleichtern, ohne eine separate App öffnen zu müssen. Wenn Sie jedoch mehrere Monitore verwenden, können Probleme mit dieser Funktion auftreten. Während die Uhrzeit und das Datum auf allen angeschlossenen Monitoren in der Taskleiste angezeigt werden, ist die Möglichkeit, auf einem zweiten Monitor auf Datum und Uhrzeit zu klicken, um den Kalender anzuzeigen, nicht verfügbar. Derzeit funktioniert diese Funktion nur auf der Hauptanzeige – im Gegensatz zu Windows 10, wo auf eine beliebige Schaltfläche geklickt wird

CrystalDiskMark ist ein kleines HDD-Benchmark-Tool für Festplatten, das schnell sequentielle und zufällige Lese-/Schreibgeschwindigkeiten misst. Lassen Sie sich als Nächstes vom Redakteur CrystalDiskMark und die Verwendung von CrystalDiskMark vorstellen ). Zufällige I/O-Leistung. Es ist eine kostenlose Windows-Anwendung und bietet eine benutzerfreundliche Oberfläche und verschiedene Testmodi zur Bewertung verschiedener Aspekte der Festplattenleistung. Sie wird häufig in Hardware-Reviews verwendet

foobar2000 ist eine Software, die Ihnen jederzeit Musik aller Art mit verlustfreier Klangqualität bietet Spielen Sie das erweiterte Audio auf dem Computer ab, um ein bequemeres und effizienteres Musikwiedergabeerlebnis zu ermöglichen. Das Interface-Design ist einfach, klar und benutzerfreundlich. Es nimmt einen minimalistischen Designstil an, ohne übermäßige Dekoration Es unterstützt außerdem eine Vielzahl von Skins und Themes, personalisiert Einstellungen nach Ihren eigenen Vorlieben und erstellt einen exklusiven Musikplayer, der die Wiedergabe mehrerer Audioformate unterstützt. Außerdem unterstützt es die Audio-Gain-Funktion zum Anpassen der Lautstärke Passen Sie die Lautstärke entsprechend Ihrem Hörzustand an, um Hörschäden durch zu hohe Lautstärke zu vermeiden. Als nächstes lass mich dir helfen

Wenn Ihr Outlook-Kalender nicht mit Google Kalender, Teams, iPhone, Android, Zoom, Office-Konto usw. synchronisiert werden kann, führen Sie bitte die folgenden Schritte aus, um das Problem zu beheben. Die Kalender-App kann mit anderen Kalenderdiensten wie Google Kalender, iPhone, Android, Microsoft Office 365 usw. verbunden werden. Dies ist sehr nützlich, da eine automatische Synchronisierung möglich ist. Was aber, wenn die Synchronisierung von OutlookCalendar mit Kalendern von Drittanbietern fehlschlägt? Mögliche Gründe hierfür könnten die Auswahl des falschen Kalenders für die Synchronisierung, ein nicht sichtbarer Kalender, Störungen in der Hintergrundanwendung, eine veraltete Outlook-Anwendung oder Kalenderanwendung usw. sein. Vorläufige Lösung für den Fehler, dass der Outlook-Kalender nicht synchronisiert wird

NetEase Mailbox ist eine von chinesischen Internetnutzern weit verbreitete E-Mail-Adresse und hat mit seinen stabilen und effizienten Diensten schon immer das Vertrauen der Benutzer gewonnen. NetEase Mailbox Master ist eine E-Mail-Software, die speziell für Mobiltelefonbenutzer entwickelt wurde. Sie vereinfacht das Senden und Empfangen von E-Mails erheblich und macht unsere E-Mail-Verarbeitung komfortabler. Wie Sie NetEase Mailbox Master verwenden und welche spezifischen Funktionen es bietet, wird Ihnen der Herausgeber dieser Website im Folgenden ausführlich vorstellen und hofft, Ihnen weiterzuhelfen! Zunächst können Sie die NetEase Mailbox Master-App im Mobile App Store suchen und herunterladen. Suchen Sie im App Store oder im Baidu Mobile Assistant nach „NetEase Mailbox Master“ und befolgen Sie dann die Anweisungen zur Installation. Nachdem der Download und die Installation abgeschlossen sind, öffnen wir das NetEase-E-Mail-Konto und melden uns an. Die Anmeldeschnittstelle ist wie unten dargestellt

Cloud-Speicher sind heutzutage aus unserem täglichen Leben und Arbeiten nicht mehr wegzudenken. Als einer der führenden Cloud-Speicherdienste in China hat Baidu Netdisk mit seinen leistungsstarken Speicherfunktionen, der effizienten Übertragungsgeschwindigkeit und dem komfortablen Bedienerlebnis die Gunst einer großen Anzahl von Benutzern gewonnen. Und egal, ob Sie wichtige Dateien sichern, Informationen teilen, Videos online ansehen oder Musik hören möchten, Baidu Cloud Disk kann Ihre Anforderungen erfüllen. Viele Benutzer verstehen jedoch möglicherweise nicht die spezifische Verwendung der Baidu Netdisk-App. Dieses Tutorial führt Sie daher im Detail in die Verwendung der Baidu Netdisk-App ein. Wenn Sie immer noch verwirrt sind, folgen Sie bitte diesem Artikel, um mehr im Detail zu erfahren. So verwenden Sie Baidu Cloud Network Disk: 1. Installation Wählen Sie beim Herunterladen und Installieren der Baidu Cloud-Software zunächst die benutzerdefinierte Installationsoption aus.

MetaMask (auf Chinesisch auch Little Fox Wallet genannt) ist eine kostenlose und beliebte Verschlüsselungs-Wallet-Software. Derzeit unterstützt BTCC die Bindung an die MetaMask-Wallet. Nach der Bindung können Sie sich mit der MetaMask-Wallet schnell anmelden, Werte speichern, Münzen kaufen usw. und bei der erstmaligen Bindung einen Testbonus von 20 USDT erhalten. Im BTCCMetaMask-Wallet-Tutorial stellen wir detailliert vor, wie man MetaMask registriert und verwendet und wie man das Little Fox-Wallet in BTCC bindet und verwendet. Was ist die MetaMask-Wallet? Mit über 30 Millionen Nutzern ist MetaMask Little Fox Wallet heute eines der beliebtesten Kryptowährungs-Wallets. Die Nutzung ist kostenlos und kann als Erweiterung im Netzwerk installiert werden

Titel: Realme Phone-Einsteigerhandbuch: Wie erstelle ich Ordner auf dem Realme Phone? In der heutigen Gesellschaft sind Mobiltelefone zu einem unverzichtbaren Hilfsmittel im Leben der Menschen geworden. Als beliebte Smartphone-Marke wird Realme Phone von Nutzern wegen seines einfachen und praktischen Betriebssystems geliebt. Bei der Verwendung von Realme-Telefonen können viele Menschen auf Situationen stoßen, in denen sie Dateien und Anwendungen auf ihren Telefonen organisieren müssen, und das Erstellen von Ordnern ist eine effektive Möglichkeit. In diesem Artikel erfahren Sie, wie Sie Ordner auf Realme-Telefonen erstellen, um Benutzern die bessere Verwaltung ihrer Telefoninhalte zu erleichtern. NEIN.
